Support format 12 CMAP of TrueType font #3738
Open
+94
−10
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #3737
This change supports format 12 CMAP of TrueType font and adds test suites.
CmapEntry
supports format 12. Format 12 is simpler than format 4, so it's not a big change.utf8.js
supports surrogate pair.Before
![image](https://private-user-images.githubusercontent.com/45098934/335423595-efbca1d8-ddd2-40e0-8d13-d665062848c2.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjE5ODU0MDUsIm5iZiI6MTcyMTk4NTEwNSwicGF0aCI6Ii80NTA5ODkzNC8zMzU0MjM1OTUtZWZiY2ExZDgtZGRkMi00MGUwLThkMTMtZDY2NTA2Mjg0OGMyLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MjYlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzI2VDA5MTE0NVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTJiY2E0NDQ1NWQ5NDExZWY1NWFjZmUzMjI4NjBhYzU5MTgzYWFiOTc0YTgzZmVkNzEzNGNiM2VjNDRlZDQ1NDUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.xyPw5-cqqgzGk6ye383QoeYue1EqDKoV7ZsO42sTcH8)
After
![image](https://private-user-images.githubusercontent.com/45098934/335433203-e4069e57-14ff-4899-8778-0ce833503eaa.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjE5ODU0MDUsIm5iZiI6MTcyMTk4NTEwNSwicGF0aCI6Ii80NTA5ODkzNC8zMzU0MzMyMDMtZTQwNjllNTctMTRmZi00ODk5LTg3NzgtMGNlODMzNTAzZWFhLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MjYlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzI2VDA5MTE0NVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTg3YWZjMmI2Y2M0MmZjYTM2ODMwYjk5NGY5ZjA4OWQ4ZTUwODdlNmY2OThiMjQ1OWU0NjgzMWExN2Q0YWU5N2EmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.DzkrXwVr5Kl1qRCwJARDwGkf4mBeB2sygWcRVdshrsM)