Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[instancer] CFF2 instancing #3506

Merged
merged 39 commits into from
May 17, 2024
Merged

[instancer] CFF2 instancing #3506

merged 39 commits into from
May 17, 2024

Conversation

behdad
Copy link
Member

@behdad behdad commented May 14, 2024

WIP. Almost there.

@behdad behdad marked this pull request as draft May 14, 2024 01:30
@behdad behdad force-pushed the cff2-instancing branch 4 times, most recently from 93092bc to 34170eb Compare May 14, 2024 02:03
@behdad
Copy link
Member Author

behdad commented May 14, 2024

I put the blends into the VarStore, instantiate that, and rebuild the blends from it.

Since we have code to instantiate VarStore, it works nicely.

@behdad
Copy link
Member Author

behdad commented May 14, 2024

  • hmtx/vmtx need to be updated as well. The side-bearings are very hard to update (and unused for CFF).
  • The font private program needs to be instantiated too. Donno how hard that one is.

@behdad behdad force-pushed the cff2-instancing branch 3 times, most recently from cdea0d1 to 6e8891b Compare May 14, 2024 04:48
@behdad
Copy link
Member Author

behdad commented May 14, 2024

Did the advance widths.

@behdad
Copy link
Member Author

behdad commented May 14, 2024

  • The font private program needs to be instantiated too. Donno how hard that one is.

Down to this now...

@behdad
Copy link
Member Author

behdad commented May 14, 2024

Oh, and pruning the VarStore; and dropping vsindex when not needed and VarStore when not needed.

gvar is removed by the time we get to hmtx/vmtx subsetting.
vsindex 0 is implied.

Also, add Unimplemented code for private-dict variable
values. I couldn't find any fonts using them, so for
now they remain unimplemented.
@behdad
Copy link
Member Author

behdad commented May 14, 2024

Oh, and pruning the VarStore; and dropping vsindex when not needed and VarStore when not needed.

Done.

@behdad
Copy link
Member Author

behdad commented May 14, 2024

  • The font private program needs to be instantiated too. Donno how hard that one is.

I know how to do it. But can't find any fonts using those. So, for now, I left it unimplemented error.

I think this PR is ready. Volunteers for tests needed.

@behdad behdad marked this pull request as ready for review May 14, 2024 07:16
@behdad behdad requested review from anthrotype and madig May 14, 2024 07:16
@behdad
Copy link
Member Author

behdad commented May 14, 2024

We might also want to downgrade to CFF if static instancing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants