UNPKG

fontjs

Version:

FontJS (Font.js) is a packages for TrueType font parsing and manipulation

48 lines (47 loc) 1.55 kB
import { SeqStream } from "bytestreamjs"; import { Glyph } from "../GLYF/Glyph"; import { CMAPLanguage, CMAPSubTable, CMAPSubTableParameters, GlyphMap } from "./CMAPSubTable"; export interface Segment { codeToGID: Map<number, number>; gidToCode: Map<number, number>; delta?: number; offset?: number; } export interface Format4Parameters extends CMAPSubTableParameters { /** * Format number is set to 4 */ format?: 4; language?: number; segments?: Segment[]; } /** * Representation of Format 4. Segment mapping to delta values * @see https://docs.microsoft.com/en-us/typography/opentype/spec/cmap#format-4-segment-mapping-to-delta-values */ export declare class Format4 extends CMAPSubTable implements CMAPLanguage { /** * Format number is set to 4 */ get format(): 4; language: number; segments: Segment[]; constructor(parameters?: Format4Parameters); protected onGetGlyphMap(): GlyphMap; static get className(): string; toStream(stream: SeqStream): boolean; static fromStream(stream: SeqStream): Format4; /** * Make Format4 table directly from array of code points * * @param language * @param glyphs Array of glyphs. * * !!! MUST BE WITH "MISSING" AND "NULL" GLYPHS !!! * @param [platformID=3] * @param [platformSpecificID=1] */ static fromGlyphs(language: number, glyphs: Glyph[], platformID?: number, platformSpecificID?: number): Format4; gid(code: number): number; code(gid: number): number[]; }