MCPcopy Create free account
hub / github.com/Code-Bullet/Jump-King / parseOS2Table

Function parseOS2Table

libraries/p5.js:6205–6256  ·  view source on GitHub ↗
(data, start)

Source from the content-addressed store, hash-verified

6203
6204// Parse the OS/2 and Windows metrics `OS/2` table
6205function parseOS2Table(data, start) {
6206 var os2 = {};
6207 var p = new parse.Parser(data, start);
6208 os2.version = p.parseUShort();
6209 os2.xAvgCharWidth = p.parseShort();
6210 os2.usWeightClass = p.parseUShort();
6211 os2.usWidthClass = p.parseUShort();
6212 os2.fsType = p.parseUShort();
6213 os2.ySubscriptXSize = p.parseShort();
6214 os2.ySubscriptYSize = p.parseShort();
6215 os2.ySubscriptXOffset = p.parseShort();
6216 os2.ySubscriptYOffset = p.parseShort();
6217 os2.ySuperscriptXSize = p.parseShort();
6218 os2.ySuperscriptYSize = p.parseShort();
6219 os2.ySuperscriptXOffset = p.parseShort();
6220 os2.ySuperscriptYOffset = p.parseShort();
6221 os2.yStrikeoutSize = p.parseShort();
6222 os2.yStrikeoutPosition = p.parseShort();
6223 os2.sFamilyClass = p.parseShort();
6224 os2.panose = [];
6225 for (var i = 0; i < 10; i++) {
6226 os2.panose[i] = p.parseByte();
6227 }
6228
6229 os2.ulUnicodeRange1 = p.parseULong();
6230 os2.ulUnicodeRange2 = p.parseULong();
6231 os2.ulUnicodeRange3 = p.parseULong();
6232 os2.ulUnicodeRange4 = p.parseULong();
6233 os2.achVendID = String.fromCharCode(p.parseByte(), p.parseByte(), p.parseByte(), p.parseByte());
6234 os2.fsSelection = p.parseUShort();
6235 os2.usFirstCharIndex = p.parseUShort();
6236 os2.usLastCharIndex = p.parseUShort();
6237 os2.sTypoAscender = p.parseShort();
6238 os2.sTypoDescender = p.parseShort();
6239 os2.sTypoLineGap = p.parseShort();
6240 os2.usWinAscent = p.parseUShort();
6241 os2.usWinDescent = p.parseUShort();
6242 if (os2.version >= 1) {
6243 os2.ulCodePageRange1 = p.parseULong();
6244 os2.ulCodePageRange2 = p.parseULong();
6245 }
6246
6247 if (os2.version >= 2) {
6248 os2.sxHeight = p.parseShort();
6249 os2.sCapHeight = p.parseShort();
6250 os2.usDefaultChar = p.parseUShort();
6251 os2.usBreakChar = p.parseUShort();
6252 os2.usMaxContent = p.parseUShort();
6253 }
6254
6255 return os2;
6256}
6257
6258function makeOS2Table(options) {
6259 return new table.Table('OS/2', [

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected