Classes

Bubble size = executable lines. Hover for details, click to navigate.

0% 20% 40% 60% 80% 100% 0 50 100 150 Line Coverage (%) Cyclomatic Complexity Phpdftk\FontParser\TrueTypeSubsetter — Coverage: 90.7% | Lines: 345 | Complexity: 83 Phpdftk\FontParser\TrueTypeParser — Coverage: 81.8% | Lines: 292 | Complexity: 81 Phpdftk\FontParser\OpenTypeParser — Coverage: 94.8% | Lines: 251 | Complexity: 79 Phpdftk\FontParser\CffSubsetter — Coverage: 82.6% | Lines: 242 | Complexity: 93 Phpdftk\FontParser\CffParser — Coverage: 84.0% | Lines: 212 | Complexity: 74 Phpdftk\FontParser\KerningParser — Coverage: 92.2% | Lines: 206 | Complexity: 75 Phpdftk\FontParser\Type1Parser — Coverage: 89.2% | Lines: 185 | Complexity: 84 Phpdftk\FontParser\Woff2Parser — Coverage: 82.1% | Lines: 134 | Complexity: 41 Phpdftk\FontParser\WoffParser — Coverage: 89.2% | Lines: 102 | Complexity: 23 Phpdftk\FontParser\GsubParser — Coverage: 74.3% | Lines: 101 | Complexity: 37 Phpdftk\FontParser\TextShaper — Coverage: 90.0% | Lines: 30 | Complexity: 11 Phpdftk\FontParser\CffData — Coverage: 100.0% | Lines: 1 | Complexity: 1 Phpdftk\FontParser\OpenTypeData — Coverage: 100.0% | Lines: 1 | Complexity: 1 Phpdftk\FontParser\TrueTypeData — Coverage: 100.0% | Lines: 1 | Complexity: 1 Phpdftk\FontParser\Type1Data — Coverage: 100.0% | Lines: 1 | Complexity: 1

Methods

Bubble size = executable lines. Hover for details, click to navigate.

0% 20% 40% 60% 80% 100% 0 20 40 60 Line Coverage (%) Cyclomatic Complexity Phpdftk\FontParser\OpenTypeParser::parse — Coverage: 94.5% | Lines: 181 | Complexity: 49 Phpdftk\FontParser\TrueTypeParser::parse — Coverage: 94.4% | Lines: 179 | Complexity: 46 Phpdftk\FontParser\CffParser::parse — Coverage: 83.5% | Lines: 79 | Complexity: 11 Phpdftk\FontParser\CffParser::parseDictData — Coverage: 90.5% | Lines: 74 | Complexity: 38 Phpdftk\FontParser\CffSubsetter::subset — Coverage: 78.6% | Lines: 70 | Complexity: 5 Phpdftk\FontParser\CffSubsetter::parseDictDataDirect — Coverage: 78.3% | Lines: 69 | Complexity: 37 Phpdftk\FontParser\Woff2Parser::decompressBytes — Coverage: 70.1% | Lines: 67 | Complexity: 17 Phpdftk\FontParser\TrueTypeSubsetter::buildCmapFormat4 — Coverage: 83.6% | Lines: 61 | Complexity: 11 Phpdftk\FontParser\WoffParser::decompressBytes — Coverage: 82.1% | Lines: 56 | Complexity: 9 Phpdftk\FontParser\Type1Parser::parseAsciiHeader — Coverage: 95.1% | Lines: 41 | Complexity: 17 Phpdftk\FontParser\TrueTypeSubsetter::assembleFont — Coverage: 100.0% | Lines: 40 | Complexity: 6 Phpdftk\FontParser\Type1Parser::parse — Coverage: 97.5% | Lines: 40 | Complexity: 7 Phpdftk\FontParser\OpenTypeParser::parseCmapFormat4 — Coverage: 97.3% | Lines: 37 | Complexity: 11 Phpdftk\FontParser\TrueTypeParser::parseCmapFormat4 — Coverage: 97.3% | Lines: 37 | Complexity: 11 Phpdftk\FontParser\TrueTypeParser::parseFvar — Coverage: 0.0% | Lines: 37 | Complexity: 4 Phpdftk\FontParser\KerningParser::parsePairPosFormat2 — Coverage: 88.9% | Lines: 36 | Complexity: 10 Phpdftk\FontParser\Woff2Parser::buildSfnt — Coverage: 100.0% | Lines: 35 | Complexity: 5 Phpdftk\FontParser\TrueTypeSubsetter::resolveComposites — Coverage: 88.2% | Lines: 34 | Complexity: 10 Phpdftk\FontParser\WoffParser::buildSfnt — Coverage: 100.0% | Lines: 34 | Complexity: 4 Phpdftk\FontParser\TrueTypeSubsetter::subset — Coverage: 100.0% | Lines: 33 | Complexity: 3 Phpdftk\FontParser\Type1Parser::parsePfa — Coverage: 78.1% | Lines: 32 | Complexity: 17 Phpdftk\FontParser\CffParser::parseCharset — Coverage: 63.3% | Lines: 30 | Complexity: 14 Phpdftk\FontParser\TextShaper::applyLigatures — Coverage: 90.0% | Lines: 30 | Complexity: 11 Phpdftk\FontParser\Type1Parser::parsePfb — Coverage: 100.0% | Lines: 27 | Complexity: 7 Phpdftk\FontParser\KerningParser::parseKernTable — Coverage: 100.0% | Lines: 24 | Complexity: 10 Phpdftk\FontParser\TrueTypeSubsetter::buildCmapFormat12 — Coverage: 100.0% | Lines: 24 | Complexity: 6 Phpdftk\FontParser\GsubParser::parseLigatureSubstLookups — Coverage: 65.2% | Lines: 23 | Complexity: 9 Phpdftk\FontParser\GsubParser::parseLigatureSubst — Coverage: 95.7% | Lines: 23 | Complexity: 7 Phpdftk\FontParser\KerningParser::parsePairPosFormat1 — Coverage: 90.9% | Lines: 22 | Complexity: 6 Phpdftk\FontParser\TrueTypeSubsetter::parseTables — Coverage: 95.5% | Lines: 22 | Complexity: 3 Phpdftk\FontParser\CffSubsetter::buildIndex — Coverage: 80.0% | Lines: 20 | Complexity: 8 Phpdftk\FontParser\KerningParser::parseClassDef — Coverage: 95.0% | Lines: 20 | Complexity: 6 Phpdftk\FontParser\TrueTypeSubsetter::buildGlyf — Coverage: 95.0% | Lines: 20 | Complexity: 5 Phpdftk\FontParser\CffSubsetter::encodeDictReal — Coverage: 78.9% | Lines: 19 | Complexity: 10 Phpdftk\FontParser\TrueTypeSubsetter::buildCmap — Coverage: 100.0% | Lines: 19 | Complexity: 6 Phpdftk\FontParser\CffParser::parseIndex — Coverage: 94.4% | Lines: 18 | Complexity: 4 Phpdftk\FontParser\GsubParser::parseCoverage — Coverage: 38.9% | Lines: 18 | Complexity: 6 Phpdftk\FontParser\KerningParser::parsePairPosLookups — Coverage: 72.2% | Lines: 18 | Complexity: 7 Phpdftk\FontParser\KerningParser::parseCoverage — Coverage: 94.4% | Lines: 18 | Complexity: 6 Phpdftk\FontParser\TrueTypeSubsetter::remapCompositeGlyph — Coverage: 83.3% | Lines: 18 | Complexity: 5 Phpdftk\FontParser\Type1Parser::parseEncoding — Coverage: 85.7% | Lines: 14 | Complexity: 8 Phpdftk\FontParser\CffSubsetter::encodeDictInteger — Coverage: 84.6% | Lines: 13 | Complexity: 10 Phpdftk\FontParser\TrueTypeSubsetter::buildHmtx — Coverage: 46.2% | Lines: 13 | Complexity: 4 Phpdftk\FontParser\Type1Parser::buildFlags — Coverage: 91.7% | Lines: 12 | Complexity: 14 Phpdftk\FontParser\Woff2Parser::readUIntBase128 — Coverage: 100.0% | Lines: 12 | Complexity: 6 Phpdftk\FontParser\CffSubsetter::encodeDictEntry — Coverage: 100.0% | Lines: 11 | Complexity: 6 Phpdftk\FontParser\KerningParser::getLookupIndicesFromFeatures — Coverage: 90.9% | Lines: 11 | Complexity: 4 Phpdftk\FontParser\CffSubsetter::buildTopDict — Coverage: 100.0% | Lines: 10 | Complexity: 3 Phpdftk\FontParser\GsubParser::parseGsub — Coverage: 90.0% | Lines: 10 | Complexity: 3 Phpdftk\FontParser\KerningParser::parseGpos — Coverage: 90.0% | Lines: 10 | Complexity: 3 Phpdftk\FontParser\OpenTypeParser::parseCmapFormat12 — Coverage: 100.0% | Lines: 10 | Complexity: 3 Phpdftk\FontParser\TrueTypeParser::parseCmapFormat12 — Coverage: 100.0% | Lines: 10 | Complexity: 3 Phpdftk\FontParser\CffSubsetter::patchPrivateDictLocalSubr — Coverage: 100.0% | Lines: 9 | Complexity: 3 Phpdftk\FontParser\GsubParser::findLigatureFeatureIndices — Coverage: 100.0% | Lines: 9 | Complexity: 3 Phpdftk\FontParser\CffSubsetter::buildCharset — Coverage: 100.0% | Lines: 8 | Complexity: 3 Phpdftk\FontParser\GsubParser::getLookupIndicesFromFeatures — Coverage: 100.0% | Lines: 8 | Complexity: 3 Phpdftk\FontParser\KerningParser::parse — Coverage: 100.0% | Lines: 8 | Complexity: 4 Phpdftk\FontParser\KerningParser::findKernFeatureIndices — Coverage: 100.0% | Lines: 8 | Complexity: 3 Phpdftk\FontParser\KerningParser::parseKernFormat0 — Coverage: 100.0% | Lines: 8 | Complexity: 3 Phpdftk\FontParser\TrueTypeSubsetter::readLocaTable — Coverage: 75.0% | Lines: 8 | Complexity: 4 Phpdftk\FontParser\TrueTypeSubsetter::buildHead — Coverage: 100.0% | Lines: 8 | Complexity: 1 Phpdftk\FontParser\Woff2Parser::brotliDecompress — Coverage: 50.0% | Lines: 8 | Complexity: 3 Phpdftk\FontParser\CffSubsetter::encode5ByteInt — Coverage: 85.7% | Lines: 7 | Complexity: 2 Phpdftk\FontParser\TrueTypeSubsetter::calculateChecksum — Coverage: 100.0% | Lines: 7 | Complexity: 2 Phpdftk\FontParser\Woff2Parser::detectFlavor — Coverage: 100.0% | Lines: 7 | Complexity: 5 Phpdftk\FontParser\WoffParser::detectFlavor — Coverage: 85.7% | Lines: 7 | Complexity: 5 Phpdftk\FontParser\KerningParser::xAdvanceOffsetInValueRecord — Coverage: 83.3% | Lines: 6 | Complexity: 3 Phpdftk\FontParser\TrueTypeSubsetter::canUseShortLoca — Coverage: 66.7% | Lines: 6 | Complexity: 4 Phpdftk\FontParser\TrueTypeSubsetter::buildLoca — Coverage: 83.3% | Lines: 6 | Complexity: 3 Phpdftk\FontParser\Type1Parser::parseCharStringNames — Coverage: 50.0% | Lines: 6 | Complexity: 6 Phpdftk\FontParser\Type1Parser::parseGlyphWidths — Coverage: 50.0% | Lines: 6 | Complexity: 4 Phpdftk\FontParser\CffSubsetter::encodeOffset — Coverage: 80.0% | Lines: 5 | Complexity: 5 Phpdftk\FontParser\KerningParser::parsePairPosSubtable — Coverage: 100.0% | Lines: 5 | Complexity: 3 Phpdftk\FontParser\KerningParser::valueRecordSize — Coverage: 100.0% | Lines: 5 | Complexity: 3 Phpdftk\FontParser\OpenTypeParser::fromBytes — Coverage: 80.0% | Lines: 5 | Complexity: 2 Phpdftk\FontParser\OpenTypeParser::win1252ToUnicode — Coverage: 100.0% | Lines: 5 | Complexity: 5 Phpdftk\FontParser\TrueTypeParser::fromBytes — Coverage: 80.0% | Lines: 5 | Complexity: 2 Phpdftk\FontParser\TrueTypeParser::win1252ToUnicode — Coverage: 100.0% | Lines: 5 | Complexity: 5 Phpdftk\FontParser\Type1Parser::fromBytes — Coverage: 80.0% | Lines: 5 | Complexity: 2 Phpdftk\FontParser\CffParser::readOffset — Coverage: 100.0% | Lines: 4 | Complexity: 2 Phpdftk\FontParser\CffParser::getTopDictInt — Coverage: 75.0% | Lines: 4 | Complexity: 3 Phpdftk\FontParser\GsubParser::parse — Coverage: 75.0% | Lines: 4 | Complexity: 2 Phpdftk\FontParser\KerningParser::readUint32 — Coverage: 100.0% | Lines: 4 | Complexity: 1 Phpdftk\FontParser\OpenTypeParser::readUint32 — Coverage: 100.0% | Lines: 4 | Complexity: 1 Phpdftk\FontParser\TrueTypeParser::readInt16 — Coverage: 100.0% | Lines: 4 | Complexity: 2 Phpdftk\FontParser\TrueTypeParser::readUint32 — Coverage: 100.0% | Lines: 4 | Complexity: 1 Phpdftk\FontParser\TrueTypeParser::readInt32 — Coverage: 75.0% | Lines: 4 | Complexity: 2 Phpdftk\FontParser\TrueTypeSubsetter::buildMaxp — Coverage: 100.0% | Lines: 4 | Complexity: 1 Phpdftk\FontParser\TrueTypeSubsetter::buildHhea — Coverage: 100.0% | Lines: 4 | Complexity: 1 Phpdftk\FontParser\TrueTypeSubsetter::getTableData — Coverage: 75.0% | Lines: 4 | Complexity: 2 Phpdftk\FontParser\TrueTypeSubsetter::readUint32FromString — Coverage: 100.0% | Lines: 4 | Complexity: 1 Phpdftk\FontParser\TrueTypeSubsetter::readInt16 — Coverage: 100.0% | Lines: 4 | Complexity: 2 Phpdftk\FontParser\TrueTypeSubsetter::readUint32 — Coverage: 100.0% | Lines: 4 | Complexity: 1 Phpdftk\FontParser\CffParser::readUint16 — Coverage: 66.7% | Lines: 3 | Complexity: 2 Phpdftk\FontParser\GsubParser::readUint16 — Coverage: 66.7% | Lines: 3 | Complexity: 2 Phpdftk\FontParser\GsubParser::readUint32 — Coverage: 0.0% | Lines: 3 | Complexity: 2 Phpdftk\FontParser\OpenTypeParser::tableOffset — Coverage: 66.7% | Lines: 3 | Complexity: 2 Phpdftk\FontParser\TrueTypeParser::tableOffset — Coverage: 66.7% | Lines: 3 | Complexity: 2 Phpdftk\FontParser\KerningParser::readInt16 — Coverage: 100.0% | Lines: 2 | Complexity: 2 Phpdftk\FontParser\OpenTypeParser::readInt16 — Coverage: 100.0% | Lines: 2 | Complexity: 2 Phpdftk\FontParser\OpenTypeParser::readInt32 — Coverage: 100.0% | Lines: 2 | Complexity: 2 Phpdftk\FontParser\TrueTypeParser::readFixed — Coverage: 0.0% | Lines: 2 | Complexity: 1 Phpdftk\FontParser\Woff2Parser::decompress — Coverage: 100.0% | Lines: 2 | Complexity: 1 Phpdftk\FontParser\WoffParser::decompress — Coverage: 100.0% | Lines: 2 | Complexity: 1 Phpdftk\FontParser\CffData::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 Phpdftk\FontParser\CffSubsetter::getGidMap — Coverage: 100.0% | Lines: 1 | Complexity: 1 Phpdftk\FontParser\KerningParser::readUint16 — Coverage: 100.0% | Lines: 1 | Complexity: 1 Phpdftk\FontParser\OpenTypeData::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 Phpdftk\FontParser\OpenTypeParser::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 Phpdftk\FontParser\OpenTypeParser::readUint16 — Coverage: 100.0% | Lines: 1 | Complexity: 1 Phpdftk\FontParser\TrueTypeData::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 Phpdftk\FontParser\TrueTypeParser::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 Phpdftk\FontParser\TrueTypeParser::readUint16 — Coverage: 100.0% | Lines: 1 | Complexity: 1 Phpdftk\FontParser\TrueTypeSubsetter::getGidMap — Coverage: 100.0% | Lines: 1 | Complexity: 1 Phpdftk\FontParser\TrueTypeSubsetter::readUint16 — Coverage: 100.0% | Lines: 1 | Complexity: 1 Phpdftk\FontParser\Type1Data::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 Phpdftk\FontParser\Type1Parser::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 Phpdftk\FontParser\Type1Parser::buildPfbBytes — Coverage: 100.0% | Lines: 1 | Complexity: 1 Phpdftk\FontParser\Woff2Parser::isWoff2 — Coverage: 100.0% | Lines: 1 | Complexity: 2 Phpdftk\FontParser\Woff2Parser::readUint32 — Coverage: 100.0% | Lines: 1 | Complexity: 1 Phpdftk\FontParser\Woff2Parser::readUint16 — Coverage: 100.0% | Lines: 1 | Complexity: 1 Phpdftk\FontParser\WoffParser::isWoff — Coverage: 100.0% | Lines: 1 | Complexity: 2 Phpdftk\FontParser\WoffParser::readUint32 — Coverage: 100.0% | Lines: 1 | Complexity: 1 Phpdftk\FontParser\WoffParser::readUint16 — Coverage: 100.0% | Lines: 1 | Complexity: 1

 

Sorted by descending CRAP (Change Risk Anti-Patterns) index.

Method CRAP Coverage
Phpdftk\FontParser\CffSubsetter::parseDictDataDirect51.0678.3%
Phpdftk\FontParser\OpenTypeParser::parse49.4094.5%
Phpdftk\FontParser\TrueTypeParser::parse46.3794.4%
Phpdftk\FontParser\CffParser::parseDictData39.2290.5%
Phpdftk\FontParser\Woff2Parser::decompressBytes24.6970.1%
Phpdftk\FontParser\CffParser::parseCharset23.6663.3%
Phpdftk\FontParser\Type1Parser::parsePfa20.0378.1%
Phpdftk\FontParser\TrueTypeParser::parseFvar200.0%
Phpdftk\FontParser\Type1Parser::parseAsciiHeader1795.1%
Phpdftk\FontParser\GsubParser::parseCoverage14.2238.9%
Phpdftk\FontParser\Type1Parser::buildFlags14.1191.7%
Phpdftk\FontParser\GsubParser::parseLigatureSubstLookups12.4165.2%
Phpdftk\FontParser\CffParser::parse11.5483.5%
Phpdftk\FontParser\TrueTypeSubsetter::buildCmapFormat411.5383.6%
Phpdftk\FontParser\TextShaper::applyLigatures11.1290.0%
Phpdftk\FontParser\OpenTypeParser::parseCmapFormat41197.3%
Phpdftk\FontParser\TrueTypeParser::parseCmapFormat41197.3%
Phpdftk\FontParser\CffSubsetter::encodeDictReal10.9378.9%
Phpdftk\FontParser\Type1Parser::parseCharStringNames10.5050.0%
Phpdftk\FontParser\CffSubsetter::encodeDictInteger10.3684.6%
Phpdftk\FontParser\TrueTypeSubsetter::resolveComposites10.1688.2%
Phpdftk\FontParser\KerningParser::parsePairPosFormat210.1488.9%
Phpdftk\FontParser\KerningParser::parseKernTable10100.0%
Phpdftk\FontParser\WoffParser::decompressBytes9.4682.1%
Phpdftk\FontParser\CffSubsetter::buildIndex8.5180.0%
Phpdftk\FontParser\Type1Parser::parseEncoding8.1985.7%
Phpdftk\FontParser\KerningParser::parsePairPosLookups8.0572.2%
Phpdftk\FontParser\GsubParser::parseLigatureSubst795.7%
Phpdftk\FontParser\Type1Parser::parse797.5%
Phpdftk\FontParser\Type1Parser::parsePfb7100.0%
Phpdftk\FontParser\TrueTypeSubsetter::buildHmtx6.5046.2%
Phpdftk\FontParser\KerningParser::parsePairPosFormat16.0390.9%
Phpdftk\FontParser\KerningParser::parseCoverage6.0194.4%
Phpdftk\FontParser\CffSubsetter::encodeDictEntry6100.0%
Phpdftk\FontParser\GsubParser::readUint3260.0%
Phpdftk\FontParser\KerningParser::parseClassDef695.0%
Phpdftk\FontParser\TrueTypeSubsetter::buildCmap6100.0%
Phpdftk\FontParser\TrueTypeSubsetter::buildCmapFormat126100.0%
Phpdftk\FontParser\TrueTypeSubsetter::assembleFont6100.0%
Phpdftk\FontParser\Type1Parser::parseGlyphWidths6.0050.0%
Phpdftk\FontParser\Woff2Parser::readUIntBase1286100.0%
Phpdftk\FontParser\CffSubsetter::subset5.2578.6%
Phpdftk\FontParser\CffSubsetter::encodeOffset5.2080.0%
Phpdftk\FontParser\TrueTypeSubsetter::remapCompositeGlyph5.1283.3%
Phpdftk\FontParser\WoffParser::detectFlavor5.0785.7%
Phpdftk\FontParser\OpenTypeParser::win1252ToUnicode5100.0%
Phpdftk\FontParser\TrueTypeParser::win1252ToUnicode5100.0%
Phpdftk\FontParser\TrueTypeSubsetter::buildGlyf595.0%
Phpdftk\FontParser\Woff2Parser::detectFlavor5100.0%
Phpdftk\FontParser\Woff2Parser::buildSfnt5100.0%
Phpdftk\FontParser\TrueTypeSubsetter::canUseShortLoca4.5966.7%
Phpdftk\FontParser\TrueTypeSubsetter::readLocaTable4.2575.0%
Phpdftk\FontParser\Woff2Parser::brotliDecompress4.1250.0%
Phpdftk\FontParser\KerningParser::getLookupIndicesFromFeatures4.0190.9%
Phpdftk\FontParser\CffParser::parseIndex4.0094.4%
Phpdftk\FontParser\KerningParser::parse4100.0%
Phpdftk\FontParser\WoffParser::buildSfnt4100.0%
Phpdftk\FontParser\CffParser::getTopDictInt3.1475.0%
Phpdftk\FontParser\KerningParser::xAdvanceOffsetInValueRecord3.0483.3%
Phpdftk\FontParser\TrueTypeSubsetter::buildLoca3.0483.3%
Phpdftk\FontParser\GsubParser::parseGsub3.0190.0%
Phpdftk\FontParser\KerningParser::parseGpos3.0190.0%
Phpdftk\FontParser\CffSubsetter::buildTopDict3100.0%
Phpdftk\FontParser\CffSubsetter::buildCharset3100.0%
Phpdftk\FontParser\CffSubsetter::patchPrivateDictLocalSubr3100.0%
Phpdftk\FontParser\GsubParser::findLigatureFeatureIndices3100.0%
Phpdftk\FontParser\GsubParser::getLookupIndicesFromFeatures3100.0%
Phpdftk\FontParser\KerningParser::findKernFeatureIndices3100.0%
Phpdftk\FontParser\KerningParser::parsePairPosSubtable3100.0%
Phpdftk\FontParser\KerningParser::valueRecordSize3100.0%
Phpdftk\FontParser\KerningParser::parseKernFormat03100.0%
Phpdftk\FontParser\OpenTypeParser::parseCmapFormat123100.0%
Phpdftk\FontParser\TrueTypeParser::parseCmapFormat123100.0%
Phpdftk\FontParser\TrueTypeSubsetter::subset3100.0%
Phpdftk\FontParser\TrueTypeSubsetter::parseTables395.5%
Phpdftk\FontParser\CffParser::readUint162.1566.7%
Phpdftk\FontParser\GsubParser::readUint162.1566.7%
Phpdftk\FontParser\OpenTypeParser::tableOffset2.1566.7%
Phpdftk\FontParser\TrueTypeParser::tableOffset2.1566.7%
Phpdftk\FontParser\GsubParser::parse2.0675.0%
Phpdftk\FontParser\TrueTypeParser::readInt322.0675.0%
Phpdftk\FontParser\TrueTypeSubsetter::getTableData2.0675.0%
Phpdftk\FontParser\OpenTypeParser::fromBytes2.0380.0%
Phpdftk\FontParser\TrueTypeParser::fromBytes2.0380.0%
Phpdftk\FontParser\Type1Parser::fromBytes2.0380.0%
Phpdftk\FontParser\CffSubsetter::encode5ByteInt2.0185.7%
Phpdftk\FontParser\CffParser::readOffset2100.0%
Phpdftk\FontParser\KerningParser::readInt162100.0%
Phpdftk\FontParser\OpenTypeParser::readInt162100.0%
Phpdftk\FontParser\OpenTypeParser::readInt322100.0%
Phpdftk\FontParser\TrueTypeParser::readInt162100.0%
Phpdftk\FontParser\TrueTypeParser::readFixed20.0%
Phpdftk\FontParser\TrueTypeSubsetter::calculateChecksum2100.0%
Phpdftk\FontParser\TrueTypeSubsetter::readInt162100.0%
Phpdftk\FontParser\Woff2Parser::isWoff22100.0%
Phpdftk\FontParser\WoffParser::isWoff2100.0%
Phpdftk\FontParser\CffData::__construct1100.0%
Phpdftk\FontParser\CffSubsetter::getGidMap1100.0%
Phpdftk\FontParser\KerningParser::readUint161100.0%
Phpdftk\FontParser\KerningParser::readUint321100.0%
Phpdftk\FontParser\OpenTypeData::__construct1100.0%
Phpdftk\FontParser\OpenTypeParser::__construct1100.0%
Phpdftk\FontParser\OpenTypeParser::readUint161100.0%
Phpdftk\FontParser\OpenTypeParser::readUint321100.0%
Phpdftk\FontParser\TrueTypeData::__construct1100.0%
Phpdftk\FontParser\TrueTypeParser::__construct1100.0%
Phpdftk\FontParser\TrueTypeParser::readUint161100.0%
Phpdftk\FontParser\TrueTypeParser::readUint321100.0%
Phpdftk\FontParser\TrueTypeSubsetter::getGidMap1100.0%
Phpdftk\FontParser\TrueTypeSubsetter::buildMaxp1100.0%
Phpdftk\FontParser\TrueTypeSubsetter::buildHhea1100.0%
Phpdftk\FontParser\TrueTypeSubsetter::buildHead1100.0%
Phpdftk\FontParser\TrueTypeSubsetter::readUint32FromString1100.0%
Phpdftk\FontParser\TrueTypeSubsetter::readUint161100.0%
Phpdftk\FontParser\TrueTypeSubsetter::readUint321100.0%
Phpdftk\FontParser\Type1Data::__construct1100.0%
Phpdftk\FontParser\Type1Parser::__construct1100.0%
Phpdftk\FontParser\Type1Parser::buildPfbBytes1100.0%
Phpdftk\FontParser\Woff2Parser::decompress1100.0%
Phpdftk\FontParser\Woff2Parser::readUint321100.0%
Phpdftk\FontParser\Woff2Parser::readUint161100.0%
Phpdftk\FontParser\WoffParser::decompress1100.0%
Phpdftk\FontParser\WoffParser::readUint321100.0%
Phpdftk\FontParser\WoffParser::readUint161100.0%