Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Belleve Invis


Belleve Invis
Last Active
  • Re: Opentype features from variable axes?

    I was always wondering that, the quantification of the variation vector does not happen on the font level, but at the glyph level, so that a glyph is now a function which takes a variation vector, and produces some outlines. You can "call" any glyph with any VV, and the default "parameters" are in the CMAP level.

    More precisely, the current OTVar spec as a type definition in Idris:
    -- Variation vector type with n axes
    -- It is a dependent type
    VV : Nat -> Type
    VV n = Vect n Real
    -- A static font
    record StaticFont where
        glyf : GID -> Outline
        cmap : Unicode -> GID
        GSUB : List (GID -> GID)
    Font : Nat -> Type
    Font n = VV n -> StaticFont
    If we can have more flexibility:
    -- Font type with n axes
    record Font (n : Nat) where
        glyf : GID -> VV n -> Outline
        cmap : VV n × Unicode -> GID × VV n -- cmap maps a (VV, Unicode) combination to a (GID, VV) combination
        GSUB : List (GID × VV n -> GID × VV n)

  • Re: Origins of Python in Type Design

    There is nothing in font design that needs the higher processing speed of C to justify the steeper learning curve and longer development time.
    Ah, you definitely did not handled east asian fonts...
    Tell you a story: Fontlab 6 cannot even load a full EA font before it uses all the memory.
    I have to use some C for speed, and Node.js for the rest part.
  • Re: TTFAutohint seems incorrectly detecting whether a rasterizer supports Y-axis anti-aliasing.

    What is RS2?  Please give more details.
    The latest Windows 10's update (Creators').
    In this version GDI get the support of Y-axis anti-aliasing, without fractional advance width. And I've observed that TTFA applied the old GDI hinting strategy to this novel environment, causing it being incorrect.
    ps. How can i raise a bug to TTFA? It does not have GitHub or things like that.
  • Re: [OTVAR] Exact definition of “bounding box” in a variable font.

    This problem gets more serious for CFF2: given that the "true bound" of a glyph is not representable in "value + delta" mechanism, and there is no phantom point in CFF2, how can we encode the top side bearing if we want the vertical origin being a fixed, or a simple varible quantity? If we eliminate TSB some rasterizer would make use a constant TSB and make the metrics incorrect.
  • Re: OpenType 1.8.2 released

    @Peter Constable
    I have a question about VVAR: if the point being topmost of a glyph changed after applying a delta, then either TSB or VOrg is not representable in the "value + delta" mechanism. How can we solve this? Prioritize VOrg?