|
|
@ -123,7 +123,7 @@ var PartialEvaluator = (function partialEvaluator() { |
|
|
|
function insertDependency(depList) { |
|
|
|
function insertDependency(depList) { |
|
|
|
fnArray.push('dependency'); |
|
|
|
fnArray.push('dependency'); |
|
|
|
argsArray.push(depList); |
|
|
|
argsArray.push(depList); |
|
|
|
for (var i = 0; i < depList.length; i++) { |
|
|
|
for (var i = 0, ii = depList.length; i < ii; i++) { |
|
|
|
var dep = depList[i]; |
|
|
|
var dep = depList[i]; |
|
|
|
if (dependency.indexOf(dep) == -1) { |
|
|
|
if (dependency.indexOf(dep) == -1) { |
|
|
|
dependency.push(depList[i]); |
|
|
|
dependency.push(depList[i]); |
|
|
@ -471,10 +471,10 @@ var PartialEvaluator = (function partialEvaluator() { |
|
|
|
var widths = xref.fetchIfRef(dict.get('W')); |
|
|
|
var widths = xref.fetchIfRef(dict.get('W')); |
|
|
|
if (widths) { |
|
|
|
if (widths) { |
|
|
|
var start = 0, end = 0; |
|
|
|
var start = 0, end = 0; |
|
|
|
for (var i = 0; i < widths.length; i++) { |
|
|
|
for (var i = 0, ii = widths.length; i < ii; i++) { |
|
|
|
var code = widths[i]; |
|
|
|
var code = widths[i]; |
|
|
|
if (isArray(code)) { |
|
|
|
if (isArray(code)) { |
|
|
|
for (var j = 0; j < code.length; j++) |
|
|
|
for (var j = 0, jj = code.length; j < jj; j++) |
|
|
|
glyphsWidths[start++] = code[j]; |
|
|
|
glyphsWidths[start++] = code[j]; |
|
|
|
start = 0; |
|
|
|
start = 0; |
|
|
|
} else if (start) { |
|
|
|
} else if (start) { |
|
|
@ -515,7 +515,7 @@ var PartialEvaluator = (function partialEvaluator() { |
|
|
|
|
|
|
|
|
|
|
|
// Set encoding 0 to later verify the font has an encoding
|
|
|
|
// Set encoding 0 to later verify the font has an encoding
|
|
|
|
encoding[0] = { unicode: 0, width: 0 }; |
|
|
|
encoding[0] = { unicode: 0, width: 0 }; |
|
|
|
for (var j = 0; j < glyphsData.length; j++) { |
|
|
|
for (var j = 0, jj = glyphsData.length; j < jj; j++) { |
|
|
|
var glyphID = (glyphsData[j++] << 8) | glyphsData[j]; |
|
|
|
var glyphID = (glyphsData[j++] << 8) | glyphsData[j]; |
|
|
|
if (glyphID == 0) |
|
|
|
if (glyphID == 0) |
|
|
|
continue; |
|
|
|
continue; |
|
|
@ -545,7 +545,7 @@ var PartialEvaluator = (function partialEvaluator() { |
|
|
|
if (encoding.has('Differences')) { |
|
|
|
if (encoding.has('Differences')) { |
|
|
|
var diffEncoding = encoding.get('Differences'); |
|
|
|
var diffEncoding = encoding.get('Differences'); |
|
|
|
var index = 0; |
|
|
|
var index = 0; |
|
|
|
for (var j = 0; j < diffEncoding.length; j++) { |
|
|
|
for (var j = 0, jj = diffEncoding.length; j < jj; j++) { |
|
|
|
var data = diffEncoding[j]; |
|
|
|
var data = diffEncoding[j]; |
|
|
|
if (isNum(data)) |
|
|
|
if (isNum(data)) |
|
|
|
index = data; |
|
|
|
index = data; |
|
|
@ -623,7 +623,7 @@ var PartialEvaluator = (function partialEvaluator() { |
|
|
|
var beginArrayToken = {}; |
|
|
|
var beginArrayToken = {}; |
|
|
|
|
|
|
|
|
|
|
|
var cmap = cmapObj.getBytes(cmapObj.length); |
|
|
|
var cmap = cmapObj.getBytes(cmapObj.length); |
|
|
|
for (var i = 0; i < cmap.length; i++) { |
|
|
|
for (var i = 0, ii = cmap.length; i < ii; i++) { |
|
|
|
var byte = cmap[i]; |
|
|
|
var byte = cmap[i]; |
|
|
|
if (byte == 0x20 || byte == 0x0D || byte == 0x0A || |
|
|
|
if (byte == 0x20 || byte == 0x0D || byte == 0x0A || |
|
|
|
byte == 0x3C || byte == 0x5B || byte == 0x5D) { |
|
|
|
byte == 0x3C || byte == 0x5B || byte == 0x5D) { |
|
|
@ -642,7 +642,7 @@ var PartialEvaluator = (function partialEvaluator() { |
|
|
|
|
|
|
|
|
|
|
|
case 'endcidrange': |
|
|
|
case 'endcidrange': |
|
|
|
case 'endbfrange': |
|
|
|
case 'endbfrange': |
|
|
|
for (var j = 0; j < tokens.length; j += 3) { |
|
|
|
for (var j = 0, jj = tokens.length; j < jj; j += 3) { |
|
|
|
var startRange = tokens[j]; |
|
|
|
var startRange = tokens[j]; |
|
|
|
var endRange = tokens[j + 1]; |
|
|
|
var endRange = tokens[j + 1]; |
|
|
|
var code = tokens[j + 2]; |
|
|
|
var code = tokens[j + 2]; |
|
|
@ -657,7 +657,7 @@ var PartialEvaluator = (function partialEvaluator() { |
|
|
|
|
|
|
|
|
|
|
|
case 'endcidchar': |
|
|
|
case 'endcidchar': |
|
|
|
case 'endbfchar': |
|
|
|
case 'endbfchar': |
|
|
|
for (var j = 0; j < tokens.length; j += 2) { |
|
|
|
for (var j = 0, jj = tokens.length; j < jj; j += 2) { |
|
|
|
var index = tokens[j]; |
|
|
|
var index = tokens[j]; |
|
|
|
var code = tokens[j + 1]; |
|
|
|
var code = tokens[j + 1]; |
|
|
|
var mapping = map[index] || {}; |
|
|
|
var mapping = map[index] || {}; |
|
|
@ -807,7 +807,7 @@ var PartialEvaluator = (function partialEvaluator() { |
|
|
|
var encoding = {}; |
|
|
|
var encoding = {}; |
|
|
|
var widths = xref.fetchIfRef(dict.get('Widths')); |
|
|
|
var widths = xref.fetchIfRef(dict.get('Widths')); |
|
|
|
if (widths) { |
|
|
|
if (widths) { |
|
|
|
for (var i = 0, j = firstChar; i < widths.length; i++, j++) |
|
|
|
for (var i = 0, j = firstChar, ii = widths.length; i < ii; i++, j++) |
|
|
|
glyphWidths[j] = widths[i]; |
|
|
|
glyphWidths[j] = widths[i]; |
|
|
|
defaultWidth = parseFloat(descriptor.get('MissingWidth')) || 0; |
|
|
|
defaultWidth = parseFloat(descriptor.get('MissingWidth')) || 0; |
|
|
|
} else { |
|
|
|
} else { |
|
|
|