mirror of
https://github.com/mozilla/pdf.js.git
synced 2025-04-26 01:58:06 +02:00
Merge branch 'master' of git://github.com/mozilla/pdf.js.git into encoding-2
Conflicts: src/evaluator.js src/fonts.js
This commit is contained in:
commit
60744a8a61
37 changed files with 786 additions and 489 deletions
|
@ -123,7 +123,7 @@ var PartialEvaluator = (function partialEvaluator() {
|
|||
function insertDependency(depList) {
|
||||
fnArray.push('dependency');
|
||||
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];
|
||||
if (dependency.indexOf(dep) == -1) {
|
||||
dependency.push(depList[i]);
|
||||
|
@ -145,12 +145,12 @@ var PartialEvaluator = (function partialEvaluator() {
|
|||
var font = xref.fetchIfRef(fontRef);
|
||||
assertWellFormed(isDict(font));
|
||||
if (!font.translated) {
|
||||
font.translated = self.translateFont(font, xref, resources, handler,
|
||||
uniquePrefix, dependency);
|
||||
font.translated = self.translateFont(font, xref, resources,
|
||||
dependency);
|
||||
if (font.translated) {
|
||||
// keep track of each font we translated so the caller can
|
||||
// load them asynchronously before calling display on a page
|
||||
loadedName = 'font_' + uniquePrefix + ++self.objIdCounter;
|
||||
loadedName = 'font_' + uniquePrefix + (++self.objIdCounter);
|
||||
font.translated.properties.loadedName = loadedName;
|
||||
font.loadedName = loadedName;
|
||||
|
||||
|
@ -180,7 +180,7 @@ var PartialEvaluator = (function partialEvaluator() {
|
|||
var h = dict.get('Height', 'H');
|
||||
|
||||
if (image instanceof JpegStream) {
|
||||
var objId = 'img_' + uniquePrefix + ++self.objIdCounter;
|
||||
var objId = 'img_' + uniquePrefix + (++self.objIdCounter);
|
||||
handler.send('obj', [objId, 'JpegStream', image.getIR()]);
|
||||
|
||||
// Add the dependency on the image object.
|
||||
|
@ -405,6 +405,8 @@ var PartialEvaluator = (function partialEvaluator() {
|
|||
case 'D':
|
||||
case 'RI':
|
||||
case 'FL':
|
||||
case 'CA':
|
||||
case 'ca':
|
||||
gsStateObj.push([key, value]);
|
||||
break;
|
||||
case 'Font':
|
||||
|
@ -428,8 +430,6 @@ var PartialEvaluator = (function partialEvaluator() {
|
|||
case 'SA':
|
||||
case 'BM':
|
||||
case 'SMask':
|
||||
case 'CA':
|
||||
case 'ca':
|
||||
case 'AIS':
|
||||
case 'TK':
|
||||
TODO('graphic state operator ' + key);
|
||||
|
@ -498,7 +498,7 @@ var PartialEvaluator = (function partialEvaluator() {
|
|||
if (encoding.has('Differences')) {
|
||||
var diffEncoding = encoding.get('Differences');
|
||||
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];
|
||||
if (isNum(data))
|
||||
index = data;
|
||||
|
@ -529,7 +529,7 @@ var PartialEvaluator = (function partialEvaluator() {
|
|||
var beginArrayToken = {};
|
||||
|
||||
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];
|
||||
if (byte == 0x20 || byte == 0x0D || byte == 0x0A ||
|
||||
byte == 0x3C || byte == 0x5B || byte == 0x5D) {
|
||||
|
@ -548,7 +548,7 @@ var PartialEvaluator = (function partialEvaluator() {
|
|||
|
||||
case 'endcidrange':
|
||||
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 endRange = tokens[j + 1];
|
||||
var code = tokens[j + 2];
|
||||
|
@ -561,7 +561,7 @@ var PartialEvaluator = (function partialEvaluator() {
|
|||
|
||||
case 'endcidchar':
|
||||
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 code = tokens[j + 1];
|
||||
charToUnicode[index] = code;
|
||||
|
@ -611,7 +611,7 @@ var PartialEvaluator = (function partialEvaluator() {
|
|||
|
||||
// Set encoding 0 to later verify the font has an encoding
|
||||
var result = [];
|
||||
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];
|
||||
if (glyphID == 0)
|
||||
continue;
|
||||
|
@ -634,10 +634,10 @@ var PartialEvaluator = (function partialEvaluator() {
|
|||
var widths = xref.fetchIfRef(dict.get('W'));
|
||||
if (widths) {
|
||||
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];
|
||||
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];
|
||||
start = 0;
|
||||
} else if (start) {
|
||||
|
@ -654,8 +654,9 @@ var PartialEvaluator = (function partialEvaluator() {
|
|||
var firstChar = properties.firstChar;
|
||||
var widths = xref.fetchIfRef(dict.get('Widths'));
|
||||
if (widths) {
|
||||
for (var i = 0, j = firstChar; i < widths.length; i++, j++)
|
||||
glyphsWidths[j] = widths[i];
|
||||
var j = firstChar;
|
||||
for (var i = 0, ii = widths.length; i < ii; i++)
|
||||
glyphsWidths[j++] = widths[i];
|
||||
defaultWidth = parseFloat(descriptor.get('MissingWidth')) || 0;
|
||||
} else {
|
||||
// Trying get the BaseFont metrics (see comment above).
|
||||
|
@ -689,7 +690,7 @@ var PartialEvaluator = (function partialEvaluator() {
|
|||
},
|
||||
|
||||
translateFont: function partialEvaluatorTranslateFont(dict, xref, resources,
|
||||
queue, handler, uniquePrefix, dependency) {
|
||||
dependency) {
|
||||
var baseDict = dict;
|
||||
var type = dict.get('Subtype');
|
||||
assertWellFormed(isName(type), 'invalid font Subtype');
|
||||
|
@ -759,7 +760,6 @@ var PartialEvaluator = (function partialEvaluator() {
|
|||
// a variant.
|
||||
var firstChar = xref.fetchIfRef(dict.get('FirstChar')) || 0;
|
||||
var lastChar = xref.fetchIfRef(dict.get('LastChar')) || maxCharIndex;
|
||||
|
||||
var fontName = xref.fetchIfRef(descriptor.get('FontName'));
|
||||
assertWellFormed(isName(fontName), 'invalid font name');
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue