UNPKG

fontjs

Version:

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

57 lines (56 loc) 1.72 kB
import { SeqStream } from "bytestreamjs"; import { FontTable } from "../../Table"; import { KERNFormat } from "./Format"; import { KERNFormat2 } from "./Format2"; export interface KERNTableCoverageV0 { horizontal: number; minimum: number; crossStream: number; override: number; format: number; } export interface KERNTableV0 { version: number; length: number; coverage: KERNTableCoverageV0; value?: KERNFormat; } export interface KERNTableCoverageV1 { kernVertical: number; kernCrossStream: number; kernVariation: number; format: number; } export interface KERNTableV1 { table: KERNFormat2; length: number; tupleIndex: number; coverage: KERNTableCoverageV1; value: KERNFormat; } export declare type KERNTableType = KERNTableV0 | KERNTableV1; export interface KERNParameters { version?: number; tables?: KERNTableType[]; } export declare class KERN extends FontTable { version: number; tables: KERNTableType[]; constructor(parameters?: KERNParameters); static get tag(): number; toStream(stream: SeqStream): boolean; static fromStream(stream: SeqStream): KERN; /** * Find kerning value for pair of glyph indexes * @param leftIndex Index of glyph from left side * @param rightIndex Index of glyph from right side * @param table Index of kerning table to find kerning value */ find(leftIndex: number, rightIndex: number, table?: number): number; /** * Find kerning values for array of glyph indexes * @param array Array of glyph indexes * @param table Index of kerning table to find kerning value */ findForArray(array: number[], table?: number): number[]; }