|
|
@ -342,22 +342,20 @@ var Font = (function () { |
|
|
|
var searchRange = FontsUtils.getMaxPower2(segCount) * 2; |
|
|
|
var searchRange = FontsUtils.getMaxPower2(segCount) * 2; |
|
|
|
var searchEntry = Math.log(segCount) / Math.log(2); |
|
|
|
var searchEntry = Math.log(segCount) / Math.log(2); |
|
|
|
var rangeShift = 2 * segCount - searchRange; |
|
|
|
var rangeShift = 2 * segCount - searchRange; |
|
|
|
var cmap = [].concat( |
|
|
|
|
|
|
|
[ |
|
|
|
var cmap = "\x00\x00" + // version
|
|
|
|
0x00, 0x00, // version
|
|
|
|
"\x00\x01" + // numTables
|
|
|
|
0x00, 0x01, // numTables
|
|
|
|
"\x00\x03" + // platformID
|
|
|
|
0x00, 0x03, // platformID
|
|
|
|
"\x00\x01" + // encodingID
|
|
|
|
0x00, 0x01, // encodingID
|
|
|
|
"\x00\x00\x00\x0C" + // start of the table record
|
|
|
|
0x00, 0x00, 0x00, 0x0C, // start of the table record
|
|
|
|
"\x00\x04" + // format
|
|
|
|
0x00, 0x04 // format
|
|
|
|
s16(headerSize) + // length
|
|
|
|
], |
|
|
|
"\x00\x00" + // languages
|
|
|
|
FontsUtils.integerToBytes(headerSize, 2), // length
|
|
|
|
s16(segCount2) + |
|
|
|
[0x00, 0x00], // language
|
|
|
|
s16(searchRange) + |
|
|
|
FontsUtils.integerToBytes(segCount2, 2), |
|
|
|
s16(searchEntry) + |
|
|
|
FontsUtils.integerToBytes(searchRange, 2), |
|
|
|
s16(rangeShift); |
|
|
|
FontsUtils.integerToBytes(searchEntry, 2), |
|
|
|
cmap = s2a(cmap); |
|
|
|
FontsUtils.integerToBytes(rangeShift, 2) |
|
|
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Fill up the 4 parallel arrays describing the segments.
|
|
|
|
// Fill up the 4 parallel arrays describing the segments.
|
|
|
|
var startCount = []; |
|
|
|
var startCount = []; |
|
|
|