@syncfusion/ej2-pdf
Version:
Feature-rich JavaScript PDF library with built-in support for loading and manipulating PDF document.
734 lines (733 loc) • 12.7 kB
TypeScript
import { _TrueTypeNameRecord } from './ttf-reader';
/**
* Holds basic table information including offset length and checksum.
*
* @private
*/
export declare class _TrueTypeTableInfo {
/**
* Byte offset of the table from the start of the font file.
*
* @private
*/
_offset: number;
/**
* Length of the table in bytes.
*
* @private
*/
_length: number;
/**
* Checksum value of the table.
*
* @private
*/
_checksum: number;
/**
* Indicates whether the table entry has zero offset length and checksum.
*
* @private
* @returns {boolean} returns whether true or false.
*/
readonly _empty: boolean;
}
/**
* Represents the OS two table containing weight width metrics and unicode ranges.
*
* @private
*/
export declare class _TrueTypeOS2Table {
/**
* Version of the OS/2 table.
*
* @private
*/
_version: number;
/**
* Average character width.
*
* @private
*/
_xAvgCharWidth: number;
/**
* Weight class (thickness) of the font.
*
* @private
*/
_usWeightClass: number;
/**
* Width class (stretch) of the font.
*
* @private
*/
_usWidthClass: number;
/**
* Embedding license rights flags.
*
* @private
*/
_fsType: number;
/**
* Subscript x size.
*
* @private
*/
_ySubscriptXSize: number;
/**
* Subscript y size.
*
* @private
*/
_ySubscriptYSize: number;
/**
* Subscript x offset.
*
* @private
*/
_ySubscriptXOffset: number;
/**
* Subscript y offset.
*
* @private
*/
_ySubscriptYOffset: number;
/**
* Superscript x size.
*
* @private
*/
_ySuperscriptXSize: number;
/**
* Superscript y size.
*
* @private
*/
_ySuperscriptYSize: number;
/**
* Superscript x offset.
*
* @private
*/
_ySuperscriptXOffset: number;
/**
* Superscript y offset.
*
* @private
*/
_ySuperscriptYOffset: number;
/**
* Strikeout thickness.
*
* @private
*/
_yStrikeoutSize: number;
/**
* Strikeout position.
*
* @private
*/
_yStrikeoutPosition: number;
/**
* IBM font class and subclass.
*
* @private
*/
_sFamilyClass: number;
/**
* PANOSE classification numbers.
*
* @private
*/
_panose: number[];
/**
* Unicode range bits.
*
* @private
*/
_ulUnicodeRange1: number;
/**
* Unicode range bits.
*
* @private
*/
_ulUnicodeRange2: number;
/**
* Unicode range bits.
*
* @private
*/
_ulUnicodeRange3: number;
/**
* Unicode range bits.
*
* @private
*/
_ulUnicodeRange4: number;
/**
* Vendor identifier (four bytes).
*
* @private
*/
_vendorIdentifier: number[];
/**
* Selection flags.
*
* @private
*/
_fsSelection: number;
/**
* First character index covered by the font.
*
* @private
*/
_usFirstCharIndex: number;
/**
* Last character index covered by the font.
*
* @private
*/
_usLastCharIndex: number;
/**
* Typographic ascender.
*
* @private
*/
_sTypoAscender: number;
/**
* Typographic descender.
*
* @private
*/
_sTypoDescender: number;
/**
* Typographic line gap.
*
* @private
*/
_sTypoLineGap: number;
/**
* Windows ascent.
*
* @private
*/
_usWinAscent: number;
/**
* Windows descent.
*
* @private
*/
_usWinDescent: number;
/**
* Code page range bits.
*
* @private
*/
_ulCodePageRange1: number;
/**
* Code page range bits.
*
* @private
*/
_ulCodePageRange2: number;
/**
* x height of the font.
*
* @private
*/
_sxHeight: number;
/**
* Cap height of the font.
*
* @private
*/
_sCapHeight: number;
/**
* Default character code (used for missing glyphs).
*
* @private
*/
_usDefaultChar: number;
/**
* Break character code.
*
* @private
*/
_usBreakChar: number;
/**
* Maximum context length for justification.
*
* @private
*/
_usMaxContext: number;
}
/**
* Represents the post table containing italic angle fixed pitch and type metrics.
*
* @private
*/
export declare class _TrueTypePostTable {
/**
* Post table format type.
*
* @private
*/
_formatType: number;
/**
* Italic angle of the font.
*
* @private
*/
_italicAngle: number;
/**
* Underline position.
*
* @private
*/
_underlinePosition: number;
/**
* Underline thickness.
*
* @private
*/
_underlineThickness: number;
/**
* Indicates whether the font is fixed pitch.
*
* @private
*/
_isFixedPitch: number;
/**
* Minimum Type42 value.
*
* @private
*/
_minType42: number;
/**
* Maximum Type42 value.
*
* @private
*/
_maxType42: number;
/**
* Minimum Type1 value.
*
* @private
*/
_minType1: number;
/**
* Maximum Type1 value.
*
* @private
*/
_maxType1: number;
}
/**
* Contains name table records including format count and string offsets.
*
* @private
*/
export declare class _TrueTypeNameTable {
/**
* Format selector of the name table.
*
* @private
*/
_formatSelector: number;
/**
* Number of name records present.
*
* @private
*/
_recordsCount: number;
/**
* Offset to the string storage area.
*
* @private
*/
_offset: number;
/**
* Array of name records.
*
* @private
*/
_nameRecords: _TrueTypeNameRecord[];
}
/**
* Stores microsoft cmap subtable fields including segment arrays and glyph mappings.
*
* @private
*/
export declare class _TrueTypeMicrosoftCmapSubTable {
/**
* Format of the cmap subtable.
*
* @private
*/
_format: number;
/**
* Length of the subtable in bytes.
*
* @private
*/
_length: number;
/**
* Subtable version.
*
* @private
*/
_version: number;
/**
* Segment count multiplied by two.
*
* @private
*/
_segCountX2: number;
/**
* Search range value used in binary search.
*
* @private
*/
_searchRange: number;
/**
* Entry selector value used in binary search.
*
* @private
*/
_entrySelector: number;
/**
* Range shift value used in binary search.
*
* @private
*/
_rangeShift: number;
/**
* Array of end character codes for each segment.
*
* @private
*/
_endCount: number[];
/**
* Reserved padding (must be zero).
*
* @private
*/
_reservedPad: number;
/**
* Array of start character codes for each segment.
*
* @private
*/
_startCount: number[];
/**
* Delta values applied to character codes.
*
* @private
*/
_idDelta: number[];
/**
* Offsets into glyph ID array.
*
* @private
*/
_idRangeOffset: number[];
/**
* Glyph ID array for direct mappings.
*
* @private
*/
_glyphID: number[];
}
/**
* Represents the horizontal header table including ascender descender and metric counts.
*
* @private
*/
export declare class _TrueTypeHorizontalHeaderTable {
/**
* Table version.
*
* @private
*/
_version: number;
/**
* Typographic ascender.
*
* @private
*/
_ascender: number;
/**
* Maximum advance width value.
*
* @private
*/
_advanceWidthMax: number;
/**
* Typographic descender.
*
* @private
*/
_descender: number;
/**
* Number of long horizontal metrics.
*
* @private
*/
_numberOfHMetrics: number;
/**
* Line gap for horizontal metrics.
*
* @private
*/
_lineGap: number;
/**
* Minimum left side bearing.
*
* @private
*/
_minLeftSideBearing: number;
/**
* Minimum right side bearing.
*
* @private
*/
_minRightSideBearing: number;
/**
* Maximum extent (xMaxExtent).
*
* @private
*/
_xMaxExtent: number;
/**
* Caret slope rise.
*
* @private
*/
_caretSlopeRise: number;
/**
* Caret slope run.
*
* @private
*/
_caretSlopeRun: number;
/**
* Metric data format.
*
* @private
*/
_metricDataFormat: number;
}
/**
* Represents the head table containing global font properties and bounding box data.
*
* @private
*/
export declare class _TrueTypeHeadTable {
/**
* Last modification time.
*
* @private
*/
_modified: number;
/**
* Creation time.
*
* @private
*/
_created: number;
/**
* Magic number to validate the head table.
*
* @private
*/
_magicNumber: number;
/**
* Checksum adjustment value.
*
* @private
*/
_checkSumAdjustment: number;
/**
* Font revision.
*
* @private
*/
_fontRevision: number;
/**
* Table version.
*
* @private
*/
_version: number;
/**
* Minimum x coordinate of the font bounding box.
*
* @private
*/
_xMin: number;
/**
* Minimum y coordinate of the font bounding box.
*
* @private
*/
_yMin: number;
/**
* Units per em.
*
* @private
*/
_unitsPerEm: number;
/**
* Maximum y coordinate of the font bounding box.
*
* @private
*/
_yMax: number;
/**
* Maximum x coordinate of the font bounding box.
*
* @private
*/
_xMax: number;
/**
* Macintosh style flags.
*
* @private
*/
_macStyle: number;
/**
* Global font flags.
*
* @private
*/
_flags: number;
/**
* Lowest recommended pixel size.
*
* @private
*/
_lowestReadableSize: number;
/**
* Direction hint for glyph rendering.
*
* @private
*/
_fontDirectionHint: number;
/**
* Index to location format .
*
* @private
*/
_indexToLocalFormat: number;
/**
* Glyph data format.
*
* @private
*/
_glyphDataFormat: number;
}
/**
* Defines the cmap table header including version and subtable count.
*
* @private
*/
export declare class _TrueTypeCmapTable {
/**
* cmap table version.
*
* @private
*/
_version: number;
/**
* Number of encoding subtables.
*
* @private
*/
_tablesCount: number;
}
/**
* Holds platform and encoding identifiers and the offset to a cmap subtable.
*
* @private
*/
export declare class _TrueTypeCmapSubTable {
/**
* Platform identifier.
*
* @private
*/
_platformID: number;
/**
* Encoding identifier.
*
* @private
*/
_encodingID: number;
/**
* Byte offset to the cmap subtable.
*
* @private
*/
_offset: number;
}
/**
* Represents an apple cmap subtable with format length and version.
*
* @private
*/
export declare class _TrueTypeAppleCmapSubTable {
/**
* Subtable format.
*
* @private
*/
_format: number;
/**
* Subtable length in bytes.
*
* @private
*/
_length: number;
/**
* Subtable version.
*
* @private
*/
_version: number;
}
/**
* Represents a trimmed cmap subtable with base code and entry count.
*
* @private
*/
export declare class _TrueTypeTrimmedCmapSubTable {
/**
* Subtable format.
*
* @private
*/
_format: number;
/**
* Subtable length.
*
* @private
*/
_length: number;
/**
* Subtable version.
*
* @private
*/
_version: number;
/**
* First character code covered by the table.
*
* @private
*/
_firstCode: number;
/**
* Number of entries following the first code.
*
* @private
*/
_entryCount: number;
}