Fixing appendToOperatorList
This commit is contained in:
parent
fc5b7dbb1f
commit
234812a807
@ -129,7 +129,7 @@ var Annotation = (function AnnotationClosure() {
|
|||||||
);
|
);
|
||||||
},
|
},
|
||||||
|
|
||||||
getOperatorList: function Annotation_appendToOperatorList(evaluator) {
|
getOperatorList: function Annotation_getToOperatorList(evaluator) {
|
||||||
|
|
||||||
var promise = new Promise();
|
var promise = new Promise();
|
||||||
|
|
||||||
@ -382,57 +382,77 @@ var TextWidgetAnnotation = (function TextWidgetAnnotationClosure() {
|
|||||||
return element;
|
return element;
|
||||||
},
|
},
|
||||||
|
|
||||||
appendToOperatorList: function TextWidgetAnnotation_appendToOperatorList(
|
getOperatorList: function TextWidgetAnnotation_getOperatorList(evaluator) {
|
||||||
operatorList, dependencies, evaluator) {
|
|
||||||
|
|
||||||
|
var promise = new Promise();
|
||||||
|
var data = this.data;
|
||||||
|
|
||||||
// Even if there is an appearance stream, ignore it. This is the
|
// Even if there is an appearance stream, ignore it. This is the
|
||||||
// behaviour used by Adobe Reader.
|
// behaviour used by Adobe Reader.
|
||||||
|
|
||||||
var defaultAppearance = this.data.defaultAppearance;
|
var defaultAppearance = data.defaultAppearance;
|
||||||
if (!defaultAppearance) {
|
if (!defaultAppearance) {
|
||||||
return;
|
promise.resolve({
|
||||||
|
queue: {
|
||||||
|
fnArray: [],
|
||||||
|
argsArray: []
|
||||||
|
},
|
||||||
|
dependency: {}
|
||||||
|
});
|
||||||
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Include any font resources found in the default appearance
|
// Include any font resources found in the default appearance
|
||||||
|
|
||||||
var stream = new Stream(stringToBytes(defaultAppearance));
|
var stream = new Stream(stringToBytes(defaultAppearance));
|
||||||
var list = evaluator.getOperatorList(stream, this.fieldResources,
|
var listPromise = evaluator.getOperatorList(stream, this.fieldResources);
|
||||||
dependencies);
|
listPromise.then(function(appearanceStreamData) {
|
||||||
|
var appearanceFnArray = appearanceStreamData.queue.fnArray;
|
||||||
|
var appearanceArgsArray = appearanceStreamData.queue.argsArray;
|
||||||
|
var fnArray = [];
|
||||||
|
var argsArray = [];
|
||||||
|
|
||||||
var fnArray = operatorList.fnArray;
|
// TODO(mack): Add support for stroke color
|
||||||
var argsArray = operatorList.argsArray;
|
data.rgb = [0, 0, 0];
|
||||||
var appearanceFnArray = list.fnArray;
|
for (var i = 0, n = fnArray.length; i < n; ++i) {
|
||||||
var appearanceArgsArray = list.argsArray;
|
var fnName = appearanceFnArray[i];
|
||||||
|
var args = appearanceArgsArray[i];
|
||||||
// TODO(mack): Add support for stroke color
|
if (fnName === 'dependency') {
|
||||||
this.data.rgb = [0, 0, 0];
|
var dependency = args[i];
|
||||||
for (var i = 0, n = fnArray.length; i < n; ++i) {
|
if (dependency.indexOf('g_font_') === 0) {
|
||||||
var fnName = appearanceFnArray[i];
|
data.fontRefName = dependency;
|
||||||
var args = appearanceArgsArray[i];
|
}
|
||||||
if (fnName === 'dependency') {
|
fnArray.push(fnName);
|
||||||
var dependency = args[i];
|
argsArray.push(args);
|
||||||
if (dependency.indexOf('g_font_') === 0) {
|
} else if (fnName === 'setFont') {
|
||||||
this.data.fontRefName = dependency;
|
data.fontRefName = args[0];
|
||||||
|
var size = args[1];
|
||||||
|
if (size < 0) {
|
||||||
|
data.fontDirection = -1;
|
||||||
|
data.fontSize = -size;
|
||||||
|
} else {
|
||||||
|
data.fontDirection = 1;
|
||||||
|
data.fontSize = size;
|
||||||
|
}
|
||||||
|
} else if (fnName === 'setFillRGBColor') {
|
||||||
|
data.rgb = args;
|
||||||
|
} else if (fnName === 'setFillGray') {
|
||||||
|
var rgbValue = args[0] * 255;
|
||||||
|
data.rgb = [rgbValue, rgbValue, rgbValue];
|
||||||
}
|
}
|
||||||
fnArray.push(fnName);
|
|
||||||
argsArray.push(args);
|
|
||||||
} else if (fnName === 'setFont') {
|
|
||||||
this.data.fontRefName = args[0];
|
|
||||||
var size = args[1];
|
|
||||||
if (size < 0) {
|
|
||||||
this.data.fontDirection = -1;
|
|
||||||
this.data.fontSize = -size;
|
|
||||||
} else {
|
|
||||||
this.data.fontDirection = 1;
|
|
||||||
this.data.fontSize = size;
|
|
||||||
}
|
|
||||||
} else if (fnName === 'setFillRGBColor') {
|
|
||||||
this.data.rgb = args;
|
|
||||||
} else if (fnName === 'setFillGray') {
|
|
||||||
var rgbValue = args[0] * 255;
|
|
||||||
this.data.rgb = [rgbValue, rgbValue, rgbValue];
|
|
||||||
}
|
}
|
||||||
}
|
promise.resolve({
|
||||||
|
queue: {
|
||||||
|
fnArray: fnArray,
|
||||||
|
argsArray: argsArray
|
||||||
|
},
|
||||||
|
dependency: {}
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
return promise;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user