You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
typesetting/pitfall/fontkit/GPOS-test.coffee

224 lines
7.1 KiB
CoffeeScript

fontkit = require '../pdfkit/node_modules/fontkit'
fira_path = "../pitfall/test/assets/fira.ttf"
f = fontkit.openSync(fira_path)
console.log "*************************** start decode"
thing = f.GPOS.lookupList.get(1)
console.log thing
###
{ version: 65536,
scriptList:
[ { tag: 'DFLT', script: [Object] },
{ tag: 'cyrl', script: [Object] },
{ tag: 'grek', script: [Object] },
{ tag: 'latn', script: [Object] } ],
featureList:
[ { tag: 'cpsp', feature: [Object] },
{ tag: 'cpsp', feature: [Object] },
{ tag: 'cpsp', feature: [Object] },
{ tag: 'cpsp', feature: [Object] },
{ tag: 'cpsp', feature: [Object] },
{ tag: 'cpsp', feature: [Object] },
{ tag: 'cpsp', feature: [Object] },
{ tag: 'cpsp', feature: [Object] },
{ tag: 'cpsp', feature: [Object] },
{ tag: 'cpsp', feature: [Object] },
{ tag: 'cpsp', feature: [Object] },
{ tag: 'cpsp', feature: [Object] },
{ tag: 'cpsp', feature: [Object] },
{ tag: 'cpsp', feature: [Object] },
{ tag: 'kern', feature: [Object] },
{ tag: 'kern', feature: [Object] },
{ tag: 'kern', feature: [Object] },
{ tag: 'kern', feature: [Object] },
{ tag: 'kern', feature: [Object] },
{ tag: 'kern', feature: [Object] },
{ tag: 'kern', feature: [Object] },
{ tag: 'kern', feature: [Object] },
{ tag: 'kern', feature: [Object] },
{ tag: 'kern', feature: [Object] },
{ tag: 'kern', feature: [Object] },
{ tag: 'kern', feature: [Object] },
{ tag: 'kern', feature: [Object] },
{ tag: 'kern', feature: [Object] },
{ tag: 'mark', feature: [Object] },
{ tag: 'mark', feature: [Object] },
{ tag: 'mark', feature: [Object] },
{ tag: 'mark', feature: [Object] },
{ tag: 'mark', feature: [Object] },
{ tag: 'mark', feature: [Object] },
{ tag: 'mark', feature: [Object] },
{ tag: 'mark', feature: [Object] },
{ tag: 'mark', feature: [Object] },
{ tag: 'mark', feature: [Object] },
{ tag: 'mark', feature: [Object] },
{ tag: 'mark', feature: [Object] },
{ tag: 'mark', feature: [Object] },
{ tag: 'mark', feature: [Object] },
{ tag: 'mkmk', feature: [Object] },
{ tag: 'mkmk', feature: [Object] },
{ tag: 'mkmk', feature: [Object] },
{ tag: 'mkmk', feature: [Object] },
{ tag: 'mkmk', feature: [Object] },
{ tag: 'mkmk', feature: [Object] },
{ tag: 'mkmk', feature: [Object] },
{ tag: 'mkmk', feature: [Object] },
{ tag: 'mkmk', feature: [Object] },
{ tag: 'mkmk', feature: [Object] },
{ tag: 'mkmk', feature: [Object] },
{ tag: 'mkmk', feature: [Object] },
{ tag: 'mkmk', feature: [Object] },
{ tag: 'mkmk', feature: [Object] } ],
lookupList:
[ { lookupType: 1,
flags:
{ rightToLeft: false,
ignoreBaseGlyphs: false,
ignoreLigatures: false,
ignoreMarks: false,
useMarkFilteringSet: false,
markAttachmentType: false },
subTableCount: 1,
subTables: [ [Object] ],
markFilteringSet: 2 },
{ lookupType: 2,
flags:
{ rightToLeft: false,
ignoreBaseGlyphs: false,
ignoreLigatures: false,
ignoreMarks: false,
useMarkFilteringSet: false,
markAttachmentType: false },
subTableCount: 6,
subTables: [ [Object], [Object], [Object], [Object], [Object], [Object] ],
markFilteringSet: 2 },
{ lookupType: 2,
flags:
{ rightToLeft: false,
ignoreBaseGlyphs: false,
ignoreLigatures: false,
ignoreMarks: false,
useMarkFilteringSet: false,
markAttachmentType: false },
subTableCount: 7,
subTables:
[ [Object],
[Object],
[Object],
[Object],
[Object],
[Object],
[Object] ],
markFilteringSet: 2 },
{ lookupType: 2,
flags:
{ rightToLeft: false,
ignoreBaseGlyphs: false,
ignoreLigatures: false,
ignoreMarks: false,
useMarkFilteringSet: false,
markAttachmentType: false },
subTableCount: 6,
subTables: [ [Object], [Object], [Object], [Object], [Object], [Object] ],
markFilteringSet: 2 },
{ lookupType: 2,
flags:
{ rightToLeft: false,
ignoreBaseGlyphs: false,
ignoreLigatures: false,
ignoreMarks: false,
useMarkFilteringSet: false,
markAttachmentType: false },
subTableCount: 2,
subTables: [ [Object], [Object] ],
markFilteringSet: 4 },
{ lookupType: 4,
flags:
{ rightToLeft: false,
ignoreBaseGlyphs: false,
ignoreLigatures: false,
ignoreMarks: false,
useMarkFilteringSet: false,
markAttachmentType: false },
subTableCount: 1,
subTables: [ [Object] ],
markFilteringSet: 4 },
{ lookupType: 4,
flags:
{ rightToLeft: false,
ignoreBaseGlyphs: false,
ignoreLigatures: false,
ignoreMarks: false,
useMarkFilteringSet: false,
markAttachmentType: false },
subTableCount: 1,
subTables: [ [Object] ],
markFilteringSet: 4 },
{ lookupType: 4,
flags:
{ rightToLeft: false,
ignoreBaseGlyphs: false,
ignoreLigatures: false,
ignoreMarks: false,
useMarkFilteringSet: false,
markAttachmentType: false },
subTableCount: 1,
subTables: [ [Object] ],
markFilteringSet: 6 },
{ lookupType: 6,
flags:
{ rightToLeft: false,
ignoreBaseGlyphs: false,
ignoreLigatures: false,
ignoreMarks: false,
useMarkFilteringSet: false,
markAttachmentType: false },
subTableCount: 1,
subTables: [ [Object] ],
markFilteringSet: 6 },
{ lookupType: 6,
flags:
{ rightToLeft: false,
ignoreBaseGlyphs: false,
ignoreLigatures: false,
ignoreMarks: false,
useMarkFilteringSet: false,
markAttachmentType: false },
subTableCount: 1,
subTables: [ [Object] ],
markFilteringSet: 6 },
{ lookupType: 6,
flags:
{ rightToLeft: false,
ignoreBaseGlyphs: false,
ignoreLigatures: false,
ignoreMarks: false,
useMarkFilteringSet: false,
markAttachmentType: false },
subTableCount: 1,
subTables: [ [Object] ],
markFilteringSet: 6 },
{ lookupType: 6,
flags:
{ rightToLeft: false,
ignoreBaseGlyphs: false,
ignoreLigatures: false,
ignoreMarks: false,
useMarkFilteringSet: false,
markAttachmentType: false },
subTableCount: 1,
subTables: [ [Object] ],
markFilteringSet: 6 },
{ lookupType: 6,
flags:
{ rightToLeft: false,
ignoreBaseGlyphs: false,
ignoreLigatures: false,
ignoreMarks: false,
useMarkFilteringSet: false,
markAttachmentType: false },
subTableCount: 1,
subTables: [ [Object] ],
markFilteringSet: 1 } ] }
###