|
|
|
@ -85,12 +85,15 @@ function stringToBytes(str) {
@@ -85,12 +85,15 @@ function stringToBytes(str) {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
var PDFStringTranslateTable = [ |
|
|
|
|
,,,,,,,,,,,,,,,,,,,,,,,, 0x2D8, 0x2C7, 0x2C6, 0x2D9, 0x2DD, 0x2DB, 0x2DA, |
|
|
|
|
0x2DC,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, |
|
|
|
|
,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 0x2022, 0x2020, 0x2021, 0x2026, 0x2014, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0x2D8, 0x2C7, 0x2C6, 0x2D9, 0x2DD, 0x2DB, 0x2DA, 0x2DC, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x2022, 0x2020, 0x2021, 0x2026, 0x2014, |
|
|
|
|
0x2013, 0x192, 0x2044, 0x2039, 0x203A, 0x2212, 0x2030, 0x201E, 0x201C, |
|
|
|
|
0x201D, 0x2018, 0x2019, 0x201A, 0x2122, 0xFB01, 0xFB02, 0x141, 0x152, |
|
|
|
|
0x160, 0x178, 0x17D, 0x131, 0x142, 0x153, 0x161, 0x17E,, 0x20AC |
|
|
|
|
0x201D, 0x2018, 0x2019, 0x201A, 0x2122, 0xFB01, 0xFB02, 0x141, 0x152, 0x160, |
|
|
|
|
0x178, 0x17D, 0x131, 0x142, 0x153, 0x161, 0x17E, 0, 0x20AC |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
function stringToPDFString(str) { |
|
|
|
@ -556,12 +559,6 @@ var FlateStream = (function() {
@@ -556,12 +559,6 @@ var FlateStream = (function() {
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
constructor.prototype.readBlock = function() { |
|
|
|
|
function repeat(stream, array, len, offset, what) { |
|
|
|
|
var repeatLength = stream.getBits(len) + offset; |
|
|
|
|
while (repeatLength-- > 0) |
|
|
|
|
array[i++] = what; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// read block header
|
|
|
|
|
var hdr = this.getBits(3); |
|
|
|
|
if (hdr & 1) |
|
|
|
@ -631,14 +628,19 @@ var FlateStream = (function() {
@@ -631,14 +628,19 @@ var FlateStream = (function() {
|
|
|
|
|
while (i < codes) { |
|
|
|
|
var code = this.getCode(codeLenCodeTab); |
|
|
|
|
if (code == 16) { |
|
|
|
|
repeat(this, codeLengths, 2, 3, len); |
|
|
|
|
var bitsLength = 2, bitsOffset = 3, what = len; |
|
|
|
|
} else if (code == 17) { |
|
|
|
|
repeat(this, codeLengths, 3, 3, len = 0); |
|
|
|
|
var bitsLength = 3, bitsOffset = 3, what = (len = 0); |
|
|
|
|
} else if (code == 18) { |
|
|
|
|
repeat(this, codeLengths, 7, 11, len = 0); |
|
|
|
|
var bitsLength = 7, bitsOffset = 11, what = (len = 0); |
|
|
|
|
} else { |
|
|
|
|
codeLengths[i++] = len = code; |
|
|
|
|
continue; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
var repeatLength = this.getBits(bitsLength) + bitsOffset; |
|
|
|
|
while (repeatLength-- > 0) |
|
|
|
|
codeLengths[i++] = what; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
litCodeTable = |
|
|
|
@ -711,9 +713,9 @@ var PredictorStream = (function() {
@@ -711,9 +713,9 @@ var PredictorStream = (function() {
|
|
|
|
|
var bits = this.bits = params.get('BitsPerComponent') || 8; |
|
|
|
|
var columns = this.columns = params.get('Columns') || 1; |
|
|
|
|
|
|
|
|
|
var pixBytes = this.pixBytes = (colors * bits + 7) >> 3; |
|
|
|
|
this.pixBytes = (colors * bits + 7) >> 3; |
|
|
|
|
// add an extra pixByte to represent the pixel left of column 0
|
|
|
|
|
var rowBytes = this.rowBytes = (columns * colors * bits + 7) >> 3; |
|
|
|
|
this.rowBytes = (columns * colors * bits + 7) >> 3; |
|
|
|
|
|
|
|
|
|
DecodeStream.call(this); |
|
|
|
|
return this; |
|
|
|
@ -723,7 +725,6 @@ var PredictorStream = (function() {
@@ -723,7 +725,6 @@ var PredictorStream = (function() {
|
|
|
|
|
|
|
|
|
|
constructor.prototype.readBlockTiff = function() { |
|
|
|
|
var rowBytes = this.rowBytes; |
|
|
|
|
var pixBytes = this.pixBytes; |
|
|
|
|
|
|
|
|
|
var bufferLength = this.bufferLength; |
|
|
|
|
var buffer = this.ensureBuffer(bufferLength + rowBytes); |
|
|
|
@ -734,16 +735,18 @@ var PredictorStream = (function() {
@@ -734,16 +735,18 @@ var PredictorStream = (function() {
|
|
|
|
|
|
|
|
|
|
var rawBytes = this.stream.getBytes(rowBytes); |
|
|
|
|
|
|
|
|
|
var inbuf = 0, outbuf = 0; |
|
|
|
|
var inbits = 0, outbits = 0; |
|
|
|
|
|
|
|
|
|
if (bits === 1) { |
|
|
|
|
var inbuf = 0; |
|
|
|
|
for (var i = 0; i < rowBytes; ++i) { |
|
|
|
|
var c = rawBytes[i]; |
|
|
|
|
inBuf = (inBuf << 8) | c; |
|
|
|
|
inbuf = (inbuf << 8) | c; |
|
|
|
|
// bitwise addition is exclusive or
|
|
|
|
|
// first shift inBuf and then add
|
|
|
|
|
currentRow[i] = (c ^ (inBuf >> colors)) & 0xFF; |
|
|
|
|
// truncate inBuf (assumes colors < 16)
|
|
|
|
|
inBuf &= 0xFFFF; |
|
|
|
|
// first shift inbuf and then add
|
|
|
|
|
currentRow[i] = (c ^ (inbuf >> colors)) & 0xFF; |
|
|
|
|
// truncate inbuf (assumes colors < 16)
|
|
|
|
|
inbuf &= 0xFFFF; |
|
|
|
|
} |
|
|
|
|
} else if (bits === 8) { |
|
|
|
|
for (var i = 0; i < colors; ++i) |
|
|
|
@ -753,8 +756,6 @@ var PredictorStream = (function() {
@@ -753,8 +756,6 @@ var PredictorStream = (function() {
|
|
|
|
|
} else { |
|
|
|
|
var compArray = new Uint8Array(colors + 1); |
|
|
|
|
var bitMask = (1 << bits) - 1; |
|
|
|
|
var inbuf = 0, outbut = 0; |
|
|
|
|
var inbits = 0, outbits = 0; |
|
|
|
|
var j = 0, k = 0; |
|
|
|
|
var columns = this.columns; |
|
|
|
|
for (var i = 0; i < columns; ++i) { |
|
|
|
@ -861,11 +862,44 @@ var PredictorStream = (function() {
@@ -861,11 +862,44 @@ var PredictorStream = (function() {
|
|
|
|
|
// A JpegStream can't be read directly. We use the platform to render
|
|
|
|
|
// the underlying JPEG data for us.
|
|
|
|
|
var JpegStream = (function() { |
|
|
|
|
function isYcckImage(bytes) { |
|
|
|
|
var maxBytesScanned = Math.max(bytes.length - 16, 1024); |
|
|
|
|
// Looking for APP14, 'Adobe' and transform = 2
|
|
|
|
|
for (var i = 0; i < maxBytesScanned; ++i) { |
|
|
|
|
if (bytes[i] == 0xFF && bytes[i + 1] == 0xEE && |
|
|
|
|
bytes[i + 2] == 0x00 && bytes[i + 3] == 0x0E && |
|
|
|
|
bytes[i + 4] == 0x41 && bytes[i + 5] == 0x64 && |
|
|
|
|
bytes[i + 6] == 0x6F && bytes[i + 7] == 0x62 && |
|
|
|
|
bytes[i + 8] == 0x65 && bytes[i + 9] == 0x00) |
|
|
|
|
return bytes[i + 15] == 0x02; |
|
|
|
|
// scanning until frame tag
|
|
|
|
|
if (bytes[i] == 0xFF && bytes[i + 1] == 0xC0) |
|
|
|
|
break; |
|
|
|
|
} |
|
|
|
|
return false; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
function fixYcckImage(bytes) { |
|
|
|
|
// Inserting 'EMBED' marker after JPEG signature
|
|
|
|
|
var embedMarker = new Uint8Array([0xFF, 0xEC, 0, 8, 0x45, 0x4D, 0x42, 0x45, |
|
|
|
|
0x44, 0]); |
|
|
|
|
var newBytes = new Uint8Array(bytes.length + embedMarker.length); |
|
|
|
|
newBytes.set(bytes, embedMarker.length); |
|
|
|
|
// copy JPEG header
|
|
|
|
|
newBytes[0] = bytes[0]; |
|
|
|
|
newBytes[1] = bytes[1]; |
|
|
|
|
newBytes.set(embedMarker, 2); |
|
|
|
|
return newBytes; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
function constructor(bytes, dict) { |
|
|
|
|
// TODO: per poppler, some images may have "junk" before that
|
|
|
|
|
// need to be removed
|
|
|
|
|
this.dict = dict; |
|
|
|
|
|
|
|
|
|
if (isYcckImage(bytes)) |
|
|
|
|
bytes = fixYcckImage(bytes); |
|
|
|
|
|
|
|
|
|
// create DOM image
|
|
|
|
|
var img = new Image(); |
|
|
|
|
img.onload = (function() { |
|
|
|
@ -985,11 +1019,11 @@ var Ascii85Stream = (function() {
@@ -985,11 +1019,11 @@ var Ascii85Stream = (function() {
|
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
var bufferLength = this.bufferLength; |
|
|
|
|
var bufferLength = this.bufferLength, buffer; |
|
|
|
|
|
|
|
|
|
// special code for z
|
|
|
|
|
if (c == zCode) { |
|
|
|
|
var buffer = this.ensureBuffer(bufferLength + 4); |
|
|
|
|
buffer = this.ensureBuffer(bufferLength + 4); |
|
|
|
|
for (var i = 0; i < 4; ++i) |
|
|
|
|
buffer[bufferLength + i] = 0; |
|
|
|
|
this.bufferLength += 4; |
|
|
|
@ -1006,7 +1040,7 @@ var Ascii85Stream = (function() {
@@ -1006,7 +1040,7 @@ var Ascii85Stream = (function() {
|
|
|
|
|
if (!c || c == tildaCode) |
|
|
|
|
break; |
|
|
|
|
} |
|
|
|
|
var buffer = this.ensureBuffer(bufferLength + i - 1); |
|
|
|
|
buffer = this.ensureBuffer(bufferLength + i - 1); |
|
|
|
|
this.bufferLength += i - 1; |
|
|
|
|
|
|
|
|
|
// partial ending;
|
|
|
|
@ -1844,7 +1878,7 @@ var CCITTFaxStream = (function() {
@@ -1844,7 +1878,7 @@ var CCITTFaxStream = (function() {
|
|
|
|
|
for (var i = 0; i < 4; ++i) { |
|
|
|
|
code1 = this.lookBits(12); |
|
|
|
|
if (code1 != 1) |
|
|
|
|
warning('bad rtc code'); |
|
|
|
|
warn('bad rtc code: ' + code1); |
|
|
|
|
this.eatBits(12); |
|
|
|
|
if (this.encoding > 0) { |
|
|
|
|
this.lookBits(1); |
|
|
|
@ -1983,7 +2017,7 @@ var CCITTFaxStream = (function() {
@@ -1983,7 +2017,7 @@ var CCITTFaxStream = (function() {
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
for (var n = 11; n <= 12; ++n) { |
|
|
|
|
code == this.lookBits(n); |
|
|
|
|
code = this.lookBits(n); |
|
|
|
|
if (code == EOF) |
|
|
|
|
return 1; |
|
|
|
|
if (n < 12) |
|
|
|
@ -2407,11 +2441,6 @@ var Lexer = (function() {
@@ -2407,11 +2441,6 @@ var Lexer = (function() {
|
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 // fx
|
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
var MIN_INT = (1 << 31) | 0; |
|
|
|
|
var MAX_INT = (MIN_INT - 1) | 0; |
|
|
|
|
var MIN_UINT = 0; |
|
|
|
|
var MAX_UINT = ((1 << 30) * 4) - 1; |
|
|
|
|
|
|
|
|
|
function ToHexDigit(ch) { |
|
|
|
|
if (ch >= '0' && ch <= '9') |
|
|
|
|
return ch.charCodeAt(0) - 48; |
|
|
|
@ -2865,6 +2894,8 @@ var Parser = (function() {
@@ -2865,6 +2894,8 @@ var Parser = (function() {
|
|
|
|
|
if (IsArray(paramsArray) && (i in paramsArray)) |
|
|
|
|
params = paramsArray[i]; |
|
|
|
|
stream = this.makeFilter(stream, filter.name, length, params); |
|
|
|
|
// after the first stream the length variable is invalid
|
|
|
|
|
length = null; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
@ -3077,7 +3108,6 @@ var XRef = (function() {
@@ -3077,7 +3108,6 @@ var XRef = (function() {
|
|
|
|
|
}, |
|
|
|
|
readXRefStream: function readXRefStream(stream) { |
|
|
|
|
var streamParameters = stream.parameters; |
|
|
|
|
var length = streamParameters.get('Length'); |
|
|
|
|
var byteWidths = streamParameters.get('W'); |
|
|
|
|
var range = streamParameters.get('Index'); |
|
|
|
|
if (!range) |
|
|
|
@ -3162,7 +3192,7 @@ var XRef = (function() {
@@ -3162,7 +3192,7 @@ var XRef = (function() {
|
|
|
|
|
return obj; |
|
|
|
|
return this.fetch(obj); |
|
|
|
|
}, |
|
|
|
|
fetch: function(ref) { |
|
|
|
|
fetch: function(ref, suppressEncryption) { |
|
|
|
|
var num = ref.num; |
|
|
|
|
var e = this.cache[num]; |
|
|
|
|
if (e) |
|
|
|
@ -3193,7 +3223,7 @@ var XRef = (function() {
@@ -3193,7 +3223,7 @@ var XRef = (function() {
|
|
|
|
|
} |
|
|
|
|
error('bad XRef entry'); |
|
|
|
|
} |
|
|
|
|
if (this.encrypt) { |
|
|
|
|
if (this.encrypt && !suppressEncryption) { |
|
|
|
|
e = parser.getObj(this.encrypt.createCipherTransform(num, gen)); |
|
|
|
|
} else { |
|
|
|
|
e = parser.getObj(); |
|
|
|
@ -3326,7 +3356,7 @@ var Page = (function() {
@@ -3326,7 +3356,7 @@ var Page = (function() {
|
|
|
|
|
} |
|
|
|
|
return shadow(this, 'rotate', rotate); |
|
|
|
|
}, |
|
|
|
|
startRendering: function(canvasCtx, continuation, onerror) { |
|
|
|
|
startRendering: function(canvasCtx, continuation) { |
|
|
|
|
var self = this; |
|
|
|
|
var stats = self.stats; |
|
|
|
|
stats.compile = stats.fonts = stats.render = 0; |
|
|
|
@ -3349,7 +3379,7 @@ var Page = (function() {
@@ -3349,7 +3379,7 @@ var Page = (function() {
|
|
|
|
|
} catch (e) { |
|
|
|
|
exc = e.toString(); |
|
|
|
|
} |
|
|
|
|
continuation(exc); |
|
|
|
|
if (continuation) continuation(exc); |
|
|
|
|
}); |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
@ -3724,8 +3754,6 @@ var PDFDoc = (function() {
@@ -3724,8 +3754,6 @@ var PDFDoc = (function() {
|
|
|
|
|
return shadow(this, 'numPages', num); |
|
|
|
|
}, |
|
|
|
|
getPage: function(n) { |
|
|
|
|
var linearization = this.linearization; |
|
|
|
|
// assert(!linearization, "linearized page access not implemented");
|
|
|
|
|
return this.catalog.getPage(n); |
|
|
|
|
} |
|
|
|
|
}; |
|
|
|
@ -3735,38 +3763,42 @@ var PDFDoc = (function() {
@@ -3735,38 +3763,42 @@ var PDFDoc = (function() {
|
|
|
|
|
|
|
|
|
|
var Encodings = { |
|
|
|
|
get ExpertEncoding() { |
|
|
|
|
return shadow(this, 'ExpertEncoding', [,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, |
|
|
|
|
'space', 'exclamsmall', 'Hungarumlautsmall',, 'dollaroldstyle', |
|
|
|
|
'dollarsuperior', 'ampersandsmall', 'Acutesmall', 'parenleftsuperior', |
|
|
|
|
'parenrightsuperior', 'twodotenleader', 'onedotenleader', 'comma', |
|
|
|
|
'hyphen', 'period', 'fraction', 'zerooldstyle', 'oneoldstyle', |
|
|
|
|
'twooldstyle', 'threeoldstyle', 'fouroldstyle', 'fiveoldstyle', |
|
|
|
|
'sixoldstyle', 'sevenoldstyle', 'eightoldstyle', 'nineoldstyle', 'colon', |
|
|
|
|
'semicolon', 'commasuperior', 'threequartersemdash', 'periodsuperior', |
|
|
|
|
'questionsmall',, 'asuperior', 'bsuperior', 'centsuperior', 'dsuperior', |
|
|
|
|
'esuperior',,, 'isuperior',,, 'lsuperior', 'msuperior', 'nsuperior', |
|
|
|
|
'osuperior',,, 'rsuperior', 'ssuperior', 'tsuperior',, 'ff', 'fi', 'fl', |
|
|
|
|
'ffi', 'ffl', 'parenleftinferior',, 'parenrightinferior', |
|
|
|
|
return shadow(this, 'ExpertEncoding', ['', '', '', '', '', '', '', '', '', |
|
|
|
|
'', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', |
|
|
|
|
'', '', '', '', '', 'space', 'exclamsmall', 'Hungarumlautsmall', '', |
|
|
|
|
'dollaroldstyle', 'dollarsuperior', 'ampersandsmall', 'Acutesmall', |
|
|
|
|
'parenleftsuperior', 'parenrightsuperior', 'twodotenleader', |
|
|
|
|
'onedotenleader', 'comma', 'hyphen', 'period', 'fraction', |
|
|
|
|
'zerooldstyle', 'oneoldstyle', 'twooldstyle', 'threeoldstyle', |
|
|
|
|
'fouroldstyle', 'fiveoldstyle', 'sixoldstyle', 'sevenoldstyle', |
|
|
|
|
'eightoldstyle', 'nineoldstyle', 'colon', 'semicolon', 'commasuperior', |
|
|
|
|
'threequartersemdash', 'periodsuperior', 'questionsmall', '', |
|
|
|
|
'asuperior', 'bsuperior', 'centsuperior', 'dsuperior', 'esuperior', '', |
|
|
|
|
'', 'isuperior', '', '', 'lsuperior', 'msuperior', 'nsuperior', |
|
|
|
|
'osuperior', '', '', 'rsuperior', 'ssuperior', 'tsuperior', '', 'ff', |
|
|
|
|
'fi', 'fl', 'ffi', 'ffl', 'parenleftinferior', '', 'parenrightinferior', |
|
|
|
|
'Circumflexsmall', 'hyphensuperior', 'Gravesmall', 'Asmall', 'Bsmall', |
|
|
|
|
'Csmall', 'Dsmall', 'Esmall', 'Fsmall', 'Gsmall', 'Hsmall', 'Ismall', |
|
|
|
|
'Jsmall', 'Ksmall', 'Lsmall', 'Msmall', 'Nsmall', 'Osmall', 'Psmall', |
|
|
|
|
'Qsmall', 'Rsmall', 'Ssmall', 'Tsmall', 'Usmall', 'Vsmall', 'Wsmall', |
|
|
|
|
'Xsmall', 'Ysmall', 'Zsmall', 'colonmonetary', 'onefitted', 'rupiah', |
|
|
|
|
'Tildesmall',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 'exclamdownsmall', |
|
|
|
|
'centoldstyle', 'Lslashsmall',,, 'Scaronsmall', 'Zcaronsmall', |
|
|
|
|
'Dieresissmall', 'Brevesmall', 'Caronsmall',, 'Dotaccentsmall',,, |
|
|
|
|
'Macronsmall',,, 'figuredash', 'hypheninferior',,, 'Ogoneksmall', |
|
|
|
|
'Ringsmall', 'Cedillasmall',,,, 'onequarter', 'onehalf', 'threequarters', |
|
|
|
|
'Tildesmall', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', |
|
|
|
|
'', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', |
|
|
|
|
'', 'exclamdownsmall', 'centoldstyle', 'Lslashsmall', '', '', |
|
|
|
|
'Scaronsmall', 'Zcaronsmall', 'Dieresissmall', 'Brevesmall', |
|
|
|
|
'Caronsmall', '', 'Dotaccentsmall', '', '', 'Macronsmall', '', '', |
|
|
|
|
'figuredash', 'hypheninferior', '', '', 'Ogoneksmall', 'Ringsmall', |
|
|
|
|
'Cedillasmall', '', '', '', 'onequarter', 'onehalf', 'threequarters', |
|
|
|
|
'questiondownsmall', 'oneeighth', 'threeeighths', 'fiveeighths', |
|
|
|
|
'seveneighths', 'onethird', 'twothirds',,, 'zerosuperior', 'onesuperior', |
|
|
|
|
'twosuperior', 'threesuperior', 'foursuperior', 'fivesuperior', |
|
|
|
|
'sixsuperior', 'sevensuperior', 'eightsuperior', 'ninesuperior', |
|
|
|
|
'zeroinferior', 'oneinferior', 'twoinferior', 'threeinferior', |
|
|
|
|
'fourinferior', 'fiveinferior', 'sixinferior', 'seveninferior', |
|
|
|
|
'eightinferior', 'nineinferior', 'centinferior', 'dollarinferior', |
|
|
|
|
'periodinferior', 'commainferior', 'Agravesmall', 'Aacutesmall', |
|
|
|
|
'Acircumflexsmall', 'Atildesmall', 'Adieresissmall', 'Aringsmall', |
|
|
|
|
'AEsmall', 'Ccedillasmall', 'Egravesmall', 'Eacutesmall', |
|
|
|
|
'seveneighths', 'onethird', 'twothirds', '', '', 'zerosuperior', |
|
|
|
|
'onesuperior', 'twosuperior', 'threesuperior', 'foursuperior', |
|
|
|
|
'fivesuperior', 'sixsuperior', 'sevensuperior', 'eightsuperior', |
|
|
|
|
'ninesuperior', 'zeroinferior', 'oneinferior', 'twoinferior', |
|
|
|
|
'threeinferior', 'fourinferior', 'fiveinferior', 'sixinferior', |
|
|
|
|
'seveninferior', 'eightinferior', 'nineinferior', 'centinferior', |
|
|
|
|
'dollarinferior', 'periodinferior', 'commainferior', 'Agravesmall', |
|
|
|
|
'Aacutesmall', 'Acircumflexsmall', 'Atildesmall', 'Adieresissmall', |
|
|
|
|
'Aringsmall', 'AEsmall', 'Ccedillasmall', 'Egravesmall', 'Eacutesmall', |
|
|
|
|
'Ecircumflexsmall', 'Edieresissmall', 'Igravesmall', 'Iacutesmall', |
|
|
|
|
'Icircumflexsmall', 'Idieresissmall', 'Ethsmall', 'Ntildesmall', |
|
|
|
|
'Ogravesmall', 'Oacutesmall', 'Ocircumflexsmall', 'Otildesmall', |
|
|
|
@ -3776,168 +3808,177 @@ var Encodings = {
@@ -3776,168 +3808,177 @@ var Encodings = {
|
|
|
|
|
]); |
|
|
|
|
}, |
|
|
|
|
get MacExpertEncoding() { |
|
|
|
|
return shadow(this, 'MacExpertEncoding', [,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, |
|
|
|
|
'space', 'exclamsmall', 'Hungarumlautsmall', 'centoldstyle', |
|
|
|
|
'dollaroldstyle', 'dollarsuperior', 'ampersandsmall', 'Acutesmall', |
|
|
|
|
'parenleftsuperior', 'parenrightsuperior', 'twodotenleader', |
|
|
|
|
'onedotenleader', 'comma', 'hyphen', 'period', 'fraction', |
|
|
|
|
'zerooldstyle', 'oneoldstyle', 'twooldstyle', 'threeoldstyle', |
|
|
|
|
'fouroldstyle', 'fiveoldstyle', 'sixoldstyle', 'sevenoldstyle', |
|
|
|
|
'eightoldstyle', 'nineoldstyle', 'colon', 'semicolon',, |
|
|
|
|
'threequartersemdash',, 'questionsmall',,,,, 'Ethsmall',,, 'onequarter', |
|
|
|
|
'onehalf', 'threequarters', 'oneeighth', 'threeeighths', 'fiveeighths', |
|
|
|
|
'seveneighths', 'onethird', 'twothirds',,,,,,, 'ff', 'fi', 'fl', 'ffi', |
|
|
|
|
'ffl', 'parenleftinferior',, 'parenrightinferior', 'Circumflexsmall', |
|
|
|
|
return shadow(this, 'MacExpertEncoding', ['', '', '', '', '', '', '', '', |
|
|
|
|
'', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', |
|
|
|
|
'', '', '', '', '', '', 'space', 'exclamsmall', 'Hungarumlautsmall', |
|
|
|
|
'centoldstyle', 'dollaroldstyle', 'dollarsuperior', 'ampersandsmall', |
|
|
|
|
'Acutesmall', 'parenleftsuperior', 'parenrightsuperior', |
|
|
|
|
'twodotenleader', 'onedotenleader', 'comma', 'hyphen', 'period', |
|
|
|
|
'fraction', 'zerooldstyle', 'oneoldstyle', 'twooldstyle', |
|
|
|
|
'threeoldstyle', 'fouroldstyle', 'fiveoldstyle', 'sixoldstyle', |
|
|
|
|
'sevenoldstyle', 'eightoldstyle', 'nineoldstyle', 'colon', 'semicolon', |
|
|
|
|
'', 'threequartersemdash', '', 'questionsmall', '', '', '', '', |
|
|
|
|
'Ethsmall', '', '', 'onequarter', 'onehalf', 'threequarters', |
|
|
|
|
'oneeighth', 'threeeighths', 'fiveeighths', 'seveneighths', 'onethird', |
|
|
|
|
'twothirds', '', '', '', '', '', '', 'ff', 'fi', 'fl', 'ffi', 'ffl', |
|
|
|
|
'parenleftinferior', '', 'parenrightinferior', 'Circumflexsmall', |
|
|
|
|
'hypheninferior', 'Gravesmall', 'Asmall', 'Bsmall', 'Csmall', 'Dsmall', |
|
|
|
|
'Esmall', 'Fsmall', 'Gsmall', 'Hsmall', 'Ismall', 'Jsmall', 'Ksmall', |
|
|
|
|
'Lsmall', 'Msmall', 'Nsmall', 'Osmall', 'Psmall', 'Qsmall', 'Rsmall', |
|
|
|
|
'Ssmall', 'Tsmall', 'Usmall', 'Vsmall', 'Wsmall', 'Xsmall', 'Ysmall', |
|
|
|
|
'Zsmall', 'colonmonetary', 'onefitted', 'rupiah', 'Tildesmall',,, |
|
|
|
|
'asuperior', 'centsuperior',,,,, 'Aacutesmall', 'Agravesmall', |
|
|
|
|
'Acircumflexsmall', 'Adieresissmall', 'Atildesmall', 'Aringsmall', |
|
|
|
|
'Ccedillasmall', 'Eacutesmall', 'Egravesmall', 'Ecircumflexsmall', |
|
|
|
|
'Edieresissmall', 'Iacutesmall', 'Igravesmall', 'Icircumflexsmall', |
|
|
|
|
'Idieresissmall', 'Ntildesmall', 'Oacutesmall', 'Ogravesmall', |
|
|
|
|
'Ocircumflexsmall', 'Odieresissmall', 'Otildesmall', 'Uacutesmall', |
|
|
|
|
'Ugravesmall', 'Ucircumflexsmall', 'Udieresissmall',, 'eightsuperior', |
|
|
|
|
'fourinferior', 'threeinferior', 'sixinferior', 'eightinferior', |
|
|
|
|
'seveninferior', 'Scaronsmall',, 'centinferior', 'twoinferior',, |
|
|
|
|
'Dieresissmall',, 'Caronsmall', 'osuperior', 'fiveinferior',, |
|
|
|
|
'commainferior', 'periodinferior', 'Yacutesmall',, 'dollarinferior',, |
|
|
|
|
'Thornsmall',, 'nineinferior', 'zeroinferior', 'Zcaronsmall', 'AEsmall', |
|
|
|
|
'Oslashsmall', 'questiondownsmall', 'oneinferior', 'Lslashsmall',,,,,,, |
|
|
|
|
'Cedillasmall',,,,,, 'OEsmall', 'figuredash', 'hyphensuperior',,,,, |
|
|
|
|
'exclamdownsmall',, 'Ydieresissmall',, 'onesuperior', 'twosuperior', |
|
|
|
|
'threesuperior', 'foursuperior', 'fivesuperior', 'sixsuperior', |
|
|
|
|
'sevensuperior', 'ninesuperior', 'zerosuperior',, 'esuperior', |
|
|
|
|
'rsuperior', 'tsuperior',,, 'isuperior', 'ssuperior', 'dsuperior',,,,,, |
|
|
|
|
'lsuperior', 'Ogoneksmall', 'Brevesmall', 'Macronsmall', 'bsuperior', |
|
|
|
|
'nsuperior', 'msuperior', 'commasuperior', 'periodsuperior', |
|
|
|
|
'Dotaccentsmall', 'Ringsmall' |
|
|
|
|
'Zsmall', 'colonmonetary', 'onefitted', 'rupiah', 'Tildesmall', '', '', |
|
|
|
|
'asuperior', 'centsuperior', '', '', '', '', 'Aacutesmall', |
|
|
|
|
'Agravesmall', 'Acircumflexsmall', 'Adieresissmall', 'Atildesmall', |
|
|
|
|
'Aringsmall', 'Ccedillasmall', 'Eacutesmall', 'Egravesmall', |
|
|
|
|
'Ecircumflexsmall', 'Edieresissmall', 'Iacutesmall', 'Igravesmall', |
|
|
|
|
'Icircumflexsmall', 'Idieresissmall', 'Ntildesmall', 'Oacutesmall', |
|
|
|
|
'Ogravesmall', 'Ocircumflexsmall', 'Odieresissmall', 'Otildesmall', |
|
|
|
|
'Uacutesmall', 'Ugravesmall', 'Ucircumflexsmall', 'Udieresissmall', '', |
|
|
|
|
'eightsuperior', 'fourinferior', 'threeinferior', 'sixinferior', |
|
|
|
|
'eightinferior', 'seveninferior', 'Scaronsmall', '', 'centinferior', |
|
|
|
|
'twoinferior', '', 'Dieresissmall', '', 'Caronsmall', 'osuperior', |
|
|
|
|
'fiveinferior', '', 'commainferior', 'periodinferior', 'Yacutesmall', '', |
|
|
|
|
'dollarinferior', '', 'Thornsmall', '', 'nineinferior', 'zeroinferior', |
|
|
|
|
'Zcaronsmall', 'AEsmall', 'Oslashsmall', 'questiondownsmall', |
|
|
|
|
'oneinferior', 'Lslashsmall', '', '', '', '', '', '', 'Cedillasmall', '', |
|
|
|
|
'', '', '', '', 'OEsmall', 'figuredash', 'hyphensuperior', '', '', '', |
|
|
|
|
'', 'exclamdownsmall', '', 'Ydieresissmall', '', 'onesuperior', |
|
|
|
|
'twosuperior', 'threesuperior', 'foursuperior', 'fivesuperior', |
|
|
|
|
'sixsuperior', 'sevensuperior', 'ninesuperior', 'zerosuperior', '', |
|
|
|
|
'esuperior', 'rsuperior', 'tsuperior', '', '', 'isuperior', 'ssuperior', |
|
|
|
|
'dsuperior', '', '', '', '', '', 'lsuperior', 'Ogoneksmall', |
|
|
|
|
'Brevesmall', 'Macronsmall', 'bsuperior', 'nsuperior', 'msuperior', |
|
|
|
|
'commasuperior', 'periodsuperior', 'Dotaccentsmall', 'Ringsmall' |
|
|
|
|
]); |
|
|
|
|
}, |
|
|
|
|
get MacRomanEncoding() { |
|
|
|
|
return shadow(this, 'MacRomanEncoding', [,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, |
|
|
|
|
'space', 'exclam', 'quotedbl', 'numbersign', 'dollar', 'percent', |
|
|
|
|
'ampersand', 'quotesingle', 'parenleft', 'parenright', 'asterisk', |
|
|
|
|
'plus', 'comma', 'hyphen', 'period', 'slash', 'zero', 'one', 'two', |
|
|
|
|
'three', 'four', 'five', 'six', 'seven', 'eight', 'nine', 'colon', |
|
|
|
|
'semicolon', 'less', 'equal', 'greater', 'question', 'at', 'A', 'B', 'C', |
|
|
|
|
'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', |
|
|
|
|
'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'bracketleft', 'backslash', |
|
|
|
|
'bracketright', 'asciicircum', 'underscore', 'grave', 'a', 'b', 'c', 'd', |
|
|
|
|
'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', |
|
|
|
|
's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'braceleft', 'bar', 'braceright', |
|
|
|
|
'asciitilde',, 'Adieresis', 'Aring', 'Ccedilla', 'Eacute', 'Ntilde', |
|
|
|
|
'Odieresis', 'Udieresis', 'aacute', 'agrave', 'acircumflex', 'adieresis', |
|
|
|
|
'atilde', 'aring', 'ccedilla', 'eacute', 'egrave', 'ecircumflex', |
|
|
|
|
'edieresis', 'iacute', 'igrave', 'icircumflex', 'idieresis', 'ntilde', |
|
|
|
|
'oacute', 'ograve', 'ocircumflex', 'odieresis', 'otilde', 'uacute', |
|
|
|
|
'ugrave', 'ucircumflex', 'udieresis', 'dagger', 'degree', 'cent', |
|
|
|
|
'sterling', 'section', 'bullet', 'paragraph', 'germandbls', 'registered', |
|
|
|
|
'copyright', 'trademark', 'acute', 'dieresis', 'notequal', 'AE', |
|
|
|
|
'Oslash', 'infinity', 'plusminus', 'lessequal', 'greaterequal', 'yen', |
|
|
|
|
'mu', 'partialdiff', 'summation', 'product', 'pi', 'integral', |
|
|
|
|
'ordfeminine', 'ordmasculine', 'Omega', 'ae', 'oslash', 'questiondown', |
|
|
|
|
'exclamdown', 'logicalnot', 'radical', 'florin', 'approxequal', 'Delta', |
|
|
|
|
'guillemotleft', 'guillemotright', 'ellipsis', 'space', 'Agrave', |
|
|
|
|
'Atilde', 'Otilde', 'OE', 'oe', 'endash', 'emdash', 'quotedblleft', |
|
|
|
|
'quotedblright', 'quoteleft', 'quoteright', 'divide', 'lozenge', |
|
|
|
|
'ydieresis', 'Ydieresis', 'fraction', 'currency', 'guilsinglleft', |
|
|
|
|
'guilsinglright', 'fi', 'fl', 'daggerdbl', 'periodcentered', |
|
|
|
|
'quotesinglbase', 'quotedblbase', 'perthousand', 'Acircumflex', |
|
|
|
|
'Ecircumflex', 'Aacute', 'Edieresis', 'Egrave', 'Iacute', 'Icircumflex', |
|
|
|
|
'Idieresis', 'Igrave', 'Oacute', 'Ocircumflex', 'apple', 'Ograve', |
|
|
|
|
'Uacute', 'Ucircumflex', 'Ugrave', 'dotlessi', 'circumflex', 'tilde', |
|
|
|
|
'macron', 'breve', 'dotaccent', 'ring', 'cedilla', 'hungarumlaut', |
|
|
|
|
'ogonek', 'caron' |
|
|
|
|
return shadow(this, 'MacRomanEncoding', ['', '', '', '', '', '', '', '', |
|
|
|
|
'', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', |
|
|
|
|
'', '', '', '', '', '', 'space', 'exclam', 'quotedbl', 'numbersign', |
|
|
|
|
'dollar', 'percent', 'ampersand', 'quotesingle', 'parenleft', |
|
|
|
|
'parenright', 'asterisk', 'plus', 'comma', 'hyphen', 'period', 'slash', |
|
|
|
|
'zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', |
|
|
|
|
'nine', 'colon', 'semicolon', 'less', 'equal', 'greater', 'question', |
|
|
|
|
'at', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', |
|
|
|
|
'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', |
|
|
|
|
'bracketleft', 'backslash', 'bracketright', 'asciicircum', 'underscore', |
|
|
|
|
'grave', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', |
|
|
|
|
'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', |
|
|
|
|
'braceleft', 'bar', 'braceright', 'asciitilde', '', 'Adieresis', 'Aring', |
|
|
|
|
'Ccedilla', 'Eacute', 'Ntilde', 'Odieresis', 'Udieresis', 'aacute', |
|
|
|
|
'agrave', 'acircumflex', 'adieresis', 'atilde', 'aring', 'ccedilla', |
|
|
|
|
'eacute', 'egrave', 'ecircumflex', 'edieresis', 'iacute', 'igrave', |
|
|
|
|
'icircumflex', 'idieresis', 'ntilde', 'oacute', 'ograve', 'ocircumflex', |
|
|
|
|
'odieresis', 'otilde', 'uacute', 'ugrave', 'ucircumflex', 'udieresis', |
|
|
|
|
'dagger', 'degree', 'cent', 'sterling', 'section', 'bullet', 'paragraph', |
|
|
|
|
'germandbls', 'registered', 'copyright', 'trademark', 'acute', |
|
|
|
|
'dieresis', 'notequal', 'AE', 'Oslash', 'infinity', 'plusminus', |
|
|
|
|
'lessequal', 'greaterequal', 'yen', 'mu', 'partialdiff', 'summation', |
|
|
|
|
'product', 'pi', 'integral', 'ordfeminine', 'ordmasculine', 'Omega', |
|
|
|
|
'ae', 'oslash', 'questiondown', 'exclamdown', 'logicalnot', 'radical', |
|
|
|
|
'florin', 'approxequal', 'Delta', 'guillemotleft', 'guillemotright', |
|
|
|
|
'ellipsis', 'space', 'Agrave', 'Atilde', 'Otilde', 'OE', 'oe', 'endash', |
|
|
|
|
'emdash', 'quotedblleft', 'quotedblright', 'quoteleft', 'quoteright', |
|
|
|
|
'divide', 'lozenge', 'ydieresis', 'Ydieresis', 'fraction', 'currency', |
|
|
|
|
'guilsinglleft', 'guilsinglright', 'fi', 'fl', 'daggerdbl', |
|
|
|
|
'periodcentered', 'quotesinglbase', 'quotedblbase', 'perthousand', |
|
|
|
|
'Acircumflex', 'Ecircumflex', 'Aacute', 'Edieresis', 'Egrave', 'Iacute', |
|
|
|
|
'Icircumflex', 'Idieresis', 'Igrave', 'Oacute', 'Ocircumflex', 'apple', |
|
|
|
|
'Ograve', 'Uacute', 'Ucircumflex', 'Ugrave', 'dotlessi', 'circumflex', |
|
|
|
|
'tilde', 'macron', 'breve', 'dotaccent', 'ring', 'cedilla', |
|
|
|
|
'hungarumlaut', 'ogonek', 'caron' |
|
|
|
|
]); |
|
|
|
|
}, |
|
|
|
|
get StandardEncoding() { |
|
|
|
|
return shadow(this, 'StandardEncoding', [,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, |
|
|
|
|
'space', 'exclam', 'quotedbl', 'numbersign', 'dollar', 'percent', |
|
|
|
|
'ampersand', 'quoteright', 'parenleft', 'parenright', 'asterisk', |
|
|
|
|
'plus', 'comma', 'hyphen', 'period', 'slash', 'zero', 'one', 'two', |
|
|
|
|
'three', 'four', 'five', 'six', 'seven', 'eight', 'nine', 'colon', |
|
|
|
|
'semicolon', 'less', 'equal', 'greater', 'question', 'at', 'A', 'B', |
|
|
|
|
'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', |
|
|
|
|
'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'bracketleft', |
|
|
|
|
'backslash', 'bracketright', 'asciicircum', 'underscore', 'quoteleft', |
|
|
|
|
'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', |
|
|
|
|
'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'braceleft', |
|
|
|
|
'bar', 'braceright', 'asciitilde',,, 'exclamdown', 'cent', 'sterling', |
|
|
|
|
'fraction', 'yen', 'florin', 'section', 'currency', 'quotesingle', |
|
|
|
|
'quotedblleft', 'guillemotleft', 'guilsinglleft', 'guilsinglright', 'fi', |
|
|
|
|
'fl',, 'endash', 'dagger', 'daggerdbl', 'periodcentered',, 'paragraph', |
|
|
|
|
'bullet', 'quotesinglbase', 'quotedblbase', 'quotedblright', |
|
|
|
|
'guillemotright', 'ellipsis', 'perthousand',, 'questiondown',, 'grave', |
|
|
|
|
'acute', 'circumflex', 'tilde', 'macron', 'breve', 'dotaccent', |
|
|
|
|
'dieresis',, 'ring', 'cedilla',, 'hungarumlaut', 'ogonek', 'caron', |
|
|
|
|
'emdash',,,,,,,,,,,,,,,,, 'AE',, 'ordfeminine',,,,, 'Lslash', 'Oslash', |
|
|
|
|
'OE', 'ordmasculine',,,,,, 'ae',,,, 'dotlessi',,, 'lslash', 'oslash', |
|
|
|
|
'oe', 'germandbls' |
|
|
|
|
return shadow(this, 'StandardEncoding', ['', '', '', '', '', '', '', '', |
|
|
|
|
'', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', |
|
|
|
|
'', '', '', '', '', '', 'space', 'exclam', 'quotedbl', 'numbersign', |
|
|
|
|
'dollar', 'percent', 'ampersand', 'quoteright', 'parenleft', |
|
|
|
|
'parenright', 'asterisk', 'plus', 'comma', 'hyphen', 'period', 'slash', |
|
|
|
|
'zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', |
|
|
|
|
'nine', 'colon', 'semicolon', 'less', 'equal', 'greater', 'question', |
|
|
|
|
'at', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', |
|
|
|
|
'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', |
|
|
|
|
'bracketleft', 'backslash', 'bracketright', 'asciicircum', 'underscore', |
|
|
|
|
'quoteleft', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', |
|
|
|
|
'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', |
|
|
|
|
'braceleft', 'bar', 'braceright', 'asciitilde', '', '', 'exclamdown', |
|
|
|
|
'cent', 'sterling', 'fraction', 'yen', 'florin', 'section', 'currency', |
|
|
|
|
'quotesingle', 'quotedblleft', 'guillemotleft', 'guilsinglleft', |
|
|
|
|
'guilsinglright', 'fi', 'fl', '', 'endash', 'dagger', 'daggerdbl', |
|
|
|
|
'periodcentered', '', 'paragraph', 'bullet', 'quotesinglbase', |
|
|
|
|
'quotedblbase', 'quotedblright', 'guillemotright', 'ellipsis', |
|
|
|
|
'perthousand', '', 'questiondown', '', 'grave', 'acute', 'circumflex', |
|
|
|
|
'tilde', 'macron', 'breve', 'dotaccent', 'dieresis', '', 'ring', |
|
|
|
|
'cedilla', '', 'hungarumlaut', 'ogonek', 'caron', 'emdash', '', '', '', |
|
|
|
|
'', '', '', '', '', '', '', '', '', '', '', '', '', 'AE', '', |
|
|
|
|
'ordfeminine', '', '', '', '', 'Lslash', 'Oslash', 'OE', 'ordmasculine', |
|
|
|
|
'', '', '', '', '', 'ae', '', '', '', 'dotlessi', '', '', 'lslash', |
|
|
|
|
'oslash', 'oe', 'germandbls' |
|
|
|
|
]); |
|
|
|
|
}, |
|
|
|
|
get WinAnsiEncoding() { |
|
|
|
|
return shadow(this, 'WinAnsiEncoding', |
|
|
|
|
[,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, |
|
|
|
|
'space', 'exclam', 'quotedbl', 'numbersign', 'dollar', 'percent', |
|
|
|
|
'ampersand', 'quotesingle', 'parenleft', 'parenright', 'asterisk', |
|
|
|
|
'plus', 'comma', 'hyphen', 'period', 'slash', 'zero', 'one', 'two', |
|
|
|
|
'three', 'four', 'five', 'six', 'seven', 'eight', 'nine', 'colon', |
|
|
|
|
'semicolon', 'less', 'equal', 'greater', 'question', 'at', 'A', 'B', 'C', |
|
|
|
|
'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', |
|
|
|
|
'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'bracketleft', 'backslash', |
|
|
|
|
'bracketright', 'asciicircum', 'underscore', 'grave', 'a', 'b', 'c', 'd', |
|
|
|
|
'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', |
|
|
|
|
's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'braceleft', 'bar', 'braceright', |
|
|
|
|
'asciitilde', 'bullet', 'Euro', 'bullet', 'quotesinglbase', 'florin', |
|
|
|
|
'quotedblbase', 'ellipsis', 'dagger', 'daggerdbl', 'circumflex', |
|
|
|
|
'perthousand', 'Scaron', 'guilsinglleft', 'OE', 'bullet', 'Zcaron', |
|
|
|
|
'bullet', 'bullet', 'quoteleft', 'quoteright', 'quotedblleft', |
|
|
|
|
'quotedblright', 'bullet', 'endash', 'emdash', 'tilde', 'trademark', |
|
|
|
|
'scaron', 'guilsinglright', 'oe', 'bullet', 'zcaron', 'Ydieresis', |
|
|
|
|
'space', 'exclamdown', 'cent', 'sterling', 'currency', 'yen', 'brokenbar', |
|
|
|
|
'section', 'dieresis', 'copyright', 'ordfeminine', 'guillemotleft', |
|
|
|
|
'logicalnot', 'hyphen', 'registered', 'macron', 'degree', 'plusminus', |
|
|
|
|
'twosuperior', 'threesuperior', 'acute', 'mu', 'paragraph', |
|
|
|
|
'periodcentered', 'cedilla', 'onesuperior', 'ordmasculine', |
|
|
|
|
'guillemotright', 'onequarter', 'onehalf', 'threequarters', |
|
|
|
|
'questiondown', 'Agrave', 'Aacute', 'Acircumflex', 'Atilde', 'Adieresis', |
|
|
|
|
'Aring', 'AE', 'Ccedilla', 'Egrave', 'Eacute', 'Ecircumflex', |
|
|
|
|
'Edieresis', 'Igrave', 'Iacute', 'Icircumflex', 'Idieresis', 'Eth', |
|
|
|
|
'Ntilde', 'Ograve', 'Oacute', 'Ocircumflex', 'Otilde', 'Odieresis', |
|
|
|
|
'multiply', 'Oslash', 'Ugrave', 'Uacute', 'Ucircumflex', 'Udieresis', |
|
|
|
|
'Yacute', 'Thorn', 'germandbls', 'agrave', 'aacute', 'acircumflex', |
|
|
|
|
'atilde', 'adieresis', 'aring', 'ae', 'ccedilla', 'egrave', 'eacute', |
|
|
|
|
'ecircumflex', 'edieresis', 'igrave', 'iacute', 'icircumflex', |
|
|
|
|
'idieresis', 'eth', 'ntilde', 'ograve', 'oacute', 'ocircumflex', |
|
|
|
|
'otilde', 'odieresis', 'divide', 'oslash', 'ugrave', 'uacute', |
|
|
|
|
'ucircumflex', 'udieresis', 'yacute', 'thorn', 'ydieresis' |
|
|
|
|
return shadow(this, 'WinAnsiEncoding', ['', '', '', '', '', '', '', '', '', |
|
|
|
|
'', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', |
|
|
|
|
'', '', '', '', '', 'space', 'exclam', 'quotedbl', 'numbersign', |
|
|
|
|
'dollar', 'percent', 'ampersand', 'quotesingle', 'parenleft', |
|
|
|
|
'parenright', 'asterisk', 'plus', 'comma', 'hyphen', 'period', 'slash', |
|
|
|
|
'zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', |
|
|
|
|
'nine', 'colon', 'semicolon', 'less', 'equal', 'greater', 'question', |
|
|
|
|
'at', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', |
|
|
|
|
'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', |
|
|
|
|
'bracketleft', 'backslash', 'bracketright', 'asciicircum', 'underscore', |
|
|
|
|
'grave', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', |
|
|
|
|
'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', |
|
|
|
|
'braceleft', 'bar', 'braceright', 'asciitilde', 'bullet', 'Euro', |
|
|
|
|
'bullet', 'quotesinglbase', 'florin', 'quotedblbase', 'ellipsis', |
|
|
|
|
'dagger', 'daggerdbl', 'circumflex', 'perthousand', 'Scaron', |
|
|
|
|
'guilsinglleft', 'OE', 'bullet', 'Zcaron', 'bullet', 'bullet', |
|
|
|
|
'quoteleft', 'quoteright', 'quotedblleft', 'quotedblright', 'bullet', |
|
|
|
|
'endash', 'emdash', 'tilde', 'trademark', 'scaron', 'guilsinglright', |
|
|
|
|
'oe', 'bullet', 'zcaron', 'Ydieresis', 'space', 'exclamdown', 'cent', |
|
|
|
|
'sterling', 'currency', 'yen', 'brokenbar', 'section', 'dieresis', |
|
|
|
|
'copyright', 'ordfeminine', 'guillemotleft', 'logicalnot', 'hyphen', |
|
|
|
|
'registered', 'macron', 'degree', 'plusminus', 'twosuperior', |
|
|
|
|
'threesuperior', 'acute', 'mu', 'paragraph', 'periodcentered', |
|
|
|
|
'cedilla', 'onesuperior', 'ordmasculine', 'guillemotright', 'onequarter', |
|
|
|
|
'onehalf', 'threequarters', 'questiondown', 'Agrave', 'Aacute', |
|
|
|
|
'Acircumflex', 'Atilde', 'Adieresis', 'Aring', 'AE', 'Ccedilla', |
|
|
|
|
'Egrave', 'Eacute', 'Ecircumflex', 'Edieresis', 'Igrave', 'Iacute', |
|
|
|
|
'Icircumflex', 'Idieresis', 'Eth', 'Ntilde', 'Ograve', 'Oacute', |
|
|
|
|
'Ocircumflex', 'Otilde', 'Odieresis', 'multiply', 'Oslash', 'Ugrave', |
|
|
|
|
'Uacute', 'Ucircumflex', 'Udieresis', 'Yacute', 'Thorn', 'germandbls', |
|
|
|
|
'agrave', 'aacute', 'acircumflex', 'atilde', 'adieresis', 'aring', 'ae', |
|
|
|
|
'ccedilla', 'egrave', 'eacute', 'ecircumflex', 'edieresis', 'igrave', |
|
|
|
|
'iacute', 'icircumflex', 'idieresis', 'eth', 'ntilde', 'ograve', |
|
|
|
|
'oacute', 'ocircumflex', 'otilde', 'odieresis', 'divide', 'oslash', |
|
|
|
|
'ugrave', 'uacute', 'ucircumflex', 'udieresis', 'yacute', 'thorn', |
|
|
|
|
'ydieresis' |
|
|
|
|
]); |
|
|
|
|
}, |
|
|
|
|
get symbolsEncoding() { |
|
|
|
|
return shadow(this, 'symbolsEncoding', |
|
|
|
|
[,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, |
|
|
|
|
'space', 'exclam', 'universal', 'numbersign', 'existential', 'percent', |
|
|
|
|
'ampersand', 'suchthat', 'parenleft', 'parenright', 'asteriskmath', |
|
|
|
|
'plus', 'comma', 'minus', 'period', 'slash', 'zero', 'one', 'two', |
|
|
|
|
'three', 'four', 'five', 'six', 'seven', 'eight', 'nine', 'colon', |
|
|
|
|
'semicolon', 'less', 'equal', 'greater', 'question', 'congruent', |
|
|
|
|
'Alpha', 'Beta', 'Chi', 'Delta', 'Epsilon', 'Phi', 'Gamma', 'Eta', |
|
|
|
|
'Iota', 'theta1', 'Kappa', 'Lambda', 'Mu', 'Nu', 'Omicron', 'Pi', |
|
|
|
|
'Theta', 'Rho', 'Sigma', 'Tau', 'Upsilon', 'sigma1', 'Omega', 'Xi', |
|
|
|
|
'Psi', 'Zeta', 'bracketleft', 'therefore', 'bracketright', |
|
|
|
|
return shadow(this, 'symbolsEncoding', ['', '', '', '', '', '', '', '', '', |
|
|
|
|
'', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', |
|
|
|
|
'', '', '', '', '', 'space', 'exclam', 'universal', 'numbersign', |
|
|
|
|
'existential', 'percent', 'ampersand', 'suchthat', 'parenleft', |
|
|
|
|
'parenright', 'asteriskmath', 'plus', 'comma', 'minus', 'period', |
|
|
|
|
'slash', 'zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', |
|
|
|
|
'eight', 'nine', 'colon', 'semicolon', 'less', 'equal', 'greater', |
|
|
|
|
'question', 'congruent', 'Alpha', 'Beta', 'Chi', 'Delta', 'Epsilon', |
|
|
|
|
'Phi', 'Gamma', 'Eta', 'Iota', 'theta1', 'Kappa', 'Lambda', 'Mu', 'Nu', |
|
|
|
|
'Omicron', 'Pi', 'Theta', 'Rho', 'Sigma', 'Tau', 'Upsilon', 'sigma1', |
|
|
|
|
'Omega', 'Xi', 'Psi', 'Zeta', 'bracketleft', 'therefore', 'bracketright', |
|
|
|
|
'perpendicular', 'underscore', 'radicalex', 'alpha', 'beta', 'chi', |
|
|
|
|
'delta', 'epsilon', 'phi', 'gamma', 'eta', 'iota', 'phi1', 'kappa', |
|
|
|
|
'lambda', 'mu', 'nu', 'omicron', 'pi', 'theta', 'rho', 'sigma', 'tau', |
|
|
|
|
'upsilon', 'omega1', 'omega', 'xi', 'psi', 'zeta', 'braceleft', 'bar', |
|
|
|
|
'braceright', 'similar',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 'Euro', |
|
|
|
|
'Upsilon1', 'minute', 'lessequal', 'fraction', 'infinity', 'florin', |
|
|
|
|
'club', 'diamond', 'heart', 'spade', 'arrowboth', 'arrowleft', 'arrowup', |
|
|
|
|
'arrowright', 'arrowdown', 'degree', 'plusminus', 'second', |
|
|
|
|
'greaterequal', 'multiply', 'proportional', 'partialdiff', 'bullet', |
|
|
|
|
'divide', 'notequal', 'equivalence', 'approxequal', 'ellipsis', |
|
|
|
|
'braceright', 'similar', '', '', '', '', '', '', '', '', '', '', '', '', |
|
|
|
|
'', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', |
|
|
|
|
'', '', '', 'Euro', 'Upsilon1', 'minute', 'lessequal', 'fraction', |
|
|
|
|
'infinity', 'florin', 'club', 'diamond', 'heart', 'spade', 'arrowboth', |
|
|
|
|
'arrowleft', 'arrowup', 'arrowright', 'arrowdown', 'degree', 'plusminus', |
|
|
|
|
'second', 'greaterequal', 'multiply', 'proportional', 'partialdiff', |
|
|
|
|
'bullet', 'divide', 'notequal', 'equivalence', 'approxequal', 'ellipsis', |
|
|
|
|
'arrowvertex', 'arrowhorizex', 'carriagereturn', 'aleph', 'Ifraktur', |
|
|
|
|
'Rfraktur', 'weierstrass', 'circlemultiply', 'circleplus', 'emptyset', |
|
|
|
|
'intersection', 'union', 'propersuperset', 'reflexsuperset', 'notsubset', |
|
|
|
@ -3948,36 +3989,39 @@ var Encodings = {
@@ -3948,36 +3989,39 @@ var Encodings = {
|
|
|
|
|
'arrowdbldown', 'lozenge', 'angleleft', 'registersans', 'copyrightsans', |
|
|
|
|
'trademarksans', 'summation', 'parenlefttp', 'parenleftex', |
|
|
|
|
'parenleftbt', 'bracketlefttp', 'bracketleftex', 'bracketleftbt', |
|
|
|
|
'bracelefttp', 'braceleftmid', 'braceleftbt', 'braceex',, 'angleright', |
|
|
|
|
'integral', 'integraltp', 'integralex', 'integralbt', 'parenrighttp', |
|
|
|
|
'parenrightex', 'parenrightbt', 'bracketrighttp', 'bracketrightex', |
|
|
|
|
'bracketrightbt', 'bracerighttp', 'bracerightmid', 'bracerightbt' |
|
|
|
|
'bracelefttp', 'braceleftmid', 'braceleftbt', 'braceex', '', |
|
|
|
|
'angleright', 'integral', 'integraltp', 'integralex', 'integralbt', |
|
|
|
|
'parenrighttp', 'parenrightex', 'parenrightbt', 'bracketrighttp', |
|
|
|
|
'bracketrightex', 'bracketrightbt', 'bracerighttp', 'bracerightmid', |
|
|
|
|
'bracerightbt' |
|
|
|
|
]); |
|
|
|
|
}, |
|
|
|
|
get zapfDingbatsEncoding() { |
|
|
|
|
return shadow(this, 'zapfDingbatsEncoding', |
|
|
|
|
[,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, |
|
|
|
|
'space', 'a1', 'a2', 'a202', 'a3', 'a4', 'a5', 'a119', 'a118', 'a117', |
|
|
|
|
'a11', 'a12', 'a13', 'a14', 'a15', 'a16', 'a105', 'a17', 'a18', 'a19', |
|
|
|
|
'a20', 'a21', 'a22', 'a23', 'a24', 'a25', 'a26', 'a27', 'a28', 'a6', |
|
|
|
|
'a7', 'a8', 'a9', 'a10', 'a29', 'a30', 'a31', 'a32', 'a33', 'a34', 'a35', |
|
|
|
|
'a36', 'a37', 'a38', 'a39', 'a40', 'a41', 'a42', 'a43', 'a44', 'a45', |
|
|
|
|
'a46', 'a47', 'a48', 'a49', 'a50', 'a51', 'a52', 'a53', 'a54', 'a55', |
|
|
|
|
'a56', 'a57', 'a58', 'a59', 'a60', 'a61', 'a62', 'a63', 'a64', 'a65', |
|
|
|
|
'a66', 'a67', 'a68', 'a69', 'a70', 'a71', 'a72', 'a73', 'a74', 'a203', |
|
|
|
|
'a75', 'a204', 'a76', 'a77', 'a78', 'a79', 'a81', 'a82', 'a83', 'a84', |
|
|
|
|
'a97', 'a98', 'a99', 'a100',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 'a101', |
|
|
|
|
'a102', 'a103', 'a104', 'a106', 'a107', 'a108', 'a112', 'a111', 'a110', |
|
|
|
|
'a109', 'a120', 'a121', 'a122', 'a123', 'a124', 'a125', 'a126', 'a127', |
|
|
|
|
'a128', 'a129', 'a130', 'a131', 'a132', 'a133', 'a134', 'a135', 'a136', |
|
|
|
|
'a137', 'a138', 'a139', 'a140', 'a141', 'a142', 'a143', 'a144', 'a145', |
|
|
|
|
'a146', 'a147', 'a148', 'a149', 'a150', 'a151', 'a152', 'a153', 'a154', |
|
|
|
|
'a155', 'a156', 'a157', 'a158', 'a159', 'a160', 'a161', 'a163', 'a164', |
|
|
|
|
'a196', 'a165', 'a192', 'a166', 'a167', 'a168', 'a169', 'a170', 'a171', |
|
|
|
|
'a172', 'a173', 'a162', 'a174', 'a175', 'a176', 'a177', 'a178', 'a179', |
|
|
|
|
'a193', 'a180', 'a199', 'a181', 'a200', 'a182',, 'a201', 'a183', 'a184', |
|
|
|
|
'a197', 'a185', 'a194', 'a198', 'a186', 'a195', 'a187', 'a188', 'a189', |
|
|
|
|
'a190', 'a191' |
|
|
|
|
return shadow(this, 'zapfDingbatsEncoding', ['', '', '', '', '', '', '', |
|
|
|
|
'', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', |
|
|
|
|
'', '', '', '', '', '', '', 'space', 'a1', 'a2', 'a202', 'a3', 'a4', |
|
|
|
|
'a5', 'a119', 'a118', 'a117', 'a11', 'a12', 'a13', 'a14', 'a15', 'a16', |
|
|
|
|
'a105', 'a17', 'a18', 'a19', 'a20', 'a21', 'a22', 'a23', 'a24', 'a25', |
|
|
|
|
'a26', 'a27', 'a28', 'a6', 'a7', 'a8', 'a9', 'a10', 'a29', 'a30', 'a31', |
|
|
|
|
'a32', 'a33', 'a34', 'a35', 'a36', 'a37', 'a38', 'a39', 'a40', 'a41', |
|
|
|
|
'a42', 'a43', 'a44', 'a45', 'a46', 'a47', 'a48', 'a49', 'a50', 'a51', |
|
|
|
|
'a52', 'a53', 'a54', 'a55', 'a56', 'a57', 'a58', 'a59', 'a60', 'a61', |
|
|
|
|
'a62', 'a63', 'a64', 'a65', 'a66', 'a67', 'a68', 'a69', 'a70', 'a71', |
|
|
|
|
'a72', 'a73', 'a74', 'a203', 'a75', 'a204', 'a76', 'a77', 'a78', 'a79', |
|
|
|
|
'a81', 'a82', 'a83', 'a84', 'a97', 'a98', 'a99', 'a100', '', '', '', '', |
|
|
|
|
'', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', |
|
|
|
|
'', '', '', '', '', '', '', '', '', '', '', '', 'a101', 'a102', 'a103', |
|
|
|
|
'a104', 'a106', 'a107', 'a108', 'a112', 'a111', 'a110', 'a109', 'a120', |
|
|
|
|
'a121', 'a122', 'a123', 'a124', 'a125', 'a126', 'a127', 'a128', 'a129', |
|
|
|
|
'a130', 'a131', 'a132', 'a133', 'a134', 'a135', 'a136', 'a137', 'a138', |
|
|
|
|
'a139', 'a140', 'a141', 'a142', 'a143', 'a144', 'a145', 'a146', 'a147', |
|
|
|
|
'a148', 'a149', 'a150', 'a151', 'a152', 'a153', 'a154', 'a155', 'a156', |
|
|
|
|
'a157', 'a158', 'a159', 'a160', 'a161', 'a163', 'a164', 'a196', 'a165', |
|
|
|
|
'a192', 'a166', 'a167', 'a168', 'a169', 'a170', 'a171', 'a172', 'a173', |
|
|
|
|
'a162', 'a174', 'a175', 'a176', 'a177', 'a178', 'a179', 'a193', 'a180', |
|
|
|
|
'a199', 'a181', 'a200', 'a182', '', 'a201', 'a183', 'a184', 'a197', |
|
|
|
|
'a185', 'a194', 'a198', 'a186', 'a195', 'a187', 'a188', 'a189', 'a190', |
|
|
|
|
'a191' |
|
|
|
|
]); |
|
|
|
|
} |
|
|
|
|
}; |
|
|
|
@ -4111,7 +4155,7 @@ var PartialEvaluator = (function() {
@@ -4111,7 +4155,7 @@ var PartialEvaluator = (function() {
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
constructor.prototype = { |
|
|
|
|
eval: function(stream, xref, resources, fonts, images) { |
|
|
|
|
evaluate: function(stream, xref, resources, fonts, images) { |
|
|
|
|
resources = xref.fetchIfRef(resources) || new Dict(); |
|
|
|
|
var xobjs = xref.fetchIfRef(resources.get('XObject')) || new Dict(); |
|
|
|
|
var patterns = xref.fetchIfRef(resources.get('Pattern')) || new Dict(); |
|
|
|
@ -4135,8 +4179,9 @@ var PartialEvaluator = (function() {
@@ -4135,8 +4179,9 @@ var PartialEvaluator = (function() {
|
|
|
|
|
var dict = IsStream(pattern) ? pattern.dict : pattern; |
|
|
|
|
var typeNum = dict.get('PatternType'); |
|
|
|
|
if (typeNum == 1) { |
|
|
|
|
patternName.code = this.eval(pattern, xref, |
|
|
|
|
dict.get('Resources'), fonts); |
|
|
|
|
patternName.code = this.evaluate(pattern, xref, |
|
|
|
|
dict.get('Resources'), |
|
|
|
|
fonts); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
@ -4155,8 +4200,9 @@ var PartialEvaluator = (function() {
@@ -4155,8 +4200,9 @@ var PartialEvaluator = (function() {
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
if ('Form' == type.name) { |
|
|
|
|
args[0].code = this.eval(xobj, xref, xobj.dict.get('Resources'), |
|
|
|
|
fonts, images); |
|
|
|
|
args[0].code = this.evaluate(xobj, xref, |
|
|
|
|
xobj.dict.get('Resources'), fonts, |
|
|
|
|
images); |
|
|
|
|
} |
|
|
|
|
if (xobj instanceof JpegStream) |
|
|
|
|
images.bind(xobj); // monitoring image load
|
|
|
|
@ -4194,7 +4240,7 @@ var PartialEvaluator = (function() {
@@ -4194,7 +4240,7 @@ var PartialEvaluator = (function() {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
extractEncoding: function(dict, xref, properties) { |
|
|
|
|
var type = properties.type; |
|
|
|
|
var type = properties.type, encoding; |
|
|
|
|
if (properties.composite) { |
|
|
|
|
if (type == 'CIDFontType2') { |
|
|
|
|
var defaultWidth = xref.fetchIfRef(dict.get('DW')) || 1000; |
|
|
|
@ -4231,7 +4277,7 @@ var PartialEvaluator = (function() {
@@ -4231,7 +4277,7 @@ var PartialEvaluator = (function() {
|
|
|
|
|
var glyphsData = glyphsStream.getBytes(0); |
|
|
|
|
|
|
|
|
|
// Glyph ids are big-endian 2-byte values
|
|
|
|
|
var encoding = properties.encoding; |
|
|
|
|
encoding = properties.encoding; |
|
|
|
|
|
|
|
|
|
// Set encoding 0 to later verify the font has an encoding
|
|
|
|
|
encoding[0] = { unicode: 0, width: 0 }; |
|
|
|
@ -4248,7 +4294,7 @@ var PartialEvaluator = (function() {
@@ -4248,7 +4294,7 @@ var PartialEvaluator = (function() {
|
|
|
|
|
}; |
|
|
|
|
} |
|
|
|
|
} else if (type == 'CIDFontType0') { |
|
|
|
|
var encoding = xref.fetchIfRef(dict.get('Encoding')); |
|
|
|
|
encoding = xref.fetchIfRef(dict.get('Encoding')); |
|
|
|
|
if (IsName(encoding)) { |
|
|
|
|
// Encoding is a predefined CMap
|
|
|
|
|
if (encoding.name == 'Identity-H') { |
|
|
|
@ -4269,7 +4315,7 @@ var PartialEvaluator = (function() {
@@ -4269,7 +4315,7 @@ var PartialEvaluator = (function() {
|
|
|
|
|
var map = properties.encoding; |
|
|
|
|
var baseEncoding = null; |
|
|
|
|
if (dict.has('Encoding')) { |
|
|
|
|
var encoding = xref.fetchIfRef(dict.get('Encoding')); |
|
|
|
|
encoding = xref.fetchIfRef(dict.get('Encoding')); |
|
|
|
|
if (IsDict(encoding)) { |
|
|
|
|
var baseName = encoding.get('BaseEncoding'); |
|
|
|
|
if (baseName) |
|
|
|
@ -4333,7 +4379,10 @@ var PartialEvaluator = (function() {
@@ -4333,7 +4379,10 @@ var PartialEvaluator = (function() {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (type == 'TrueType' && dict.has('ToUnicode') && differences) { |
|
|
|
|
var cmapObj = xref.fetchIfRef(dict.get('ToUnicode')); |
|
|
|
|
var cmapObj = dict.get('ToUnicode'); |
|
|
|
|
if (IsRef(cmapObj)) { |
|
|
|
|
cmapObj = xref.fetch(cmapObj, true); |
|
|
|
|
} |
|
|
|
|
if (IsName(cmapObj)) { |
|
|
|
|
error('ToUnicode file cmap translation not implemented'); |
|
|
|
|
} else if (IsStream(cmapObj)) { |
|
|
|
@ -4653,7 +4702,7 @@ var CanvasGraphics = (function() {
@@ -4653,7 +4702,7 @@ var CanvasGraphics = (function() {
|
|
|
|
|
|
|
|
|
|
compile: function(stream, xref, resources, fonts, images) { |
|
|
|
|
var pe = new PartialEvaluator(); |
|
|
|
|
return pe.eval(stream, xref, resources, fonts, images); |
|
|
|
|
return pe.evaluate(stream, xref, resources, fonts, images); |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
execute: function(code, xref, resources) { |
|
|
|
@ -4692,13 +4741,13 @@ var CanvasGraphics = (function() {
@@ -4692,13 +4741,13 @@ var CanvasGraphics = (function() {
|
|
|
|
|
this.ctx.mozDashOffset = dashPhase; |
|
|
|
|
}, |
|
|
|
|
setRenderingIntent: function(intent) { |
|
|
|
|
TODO('set rendering intent'); |
|
|
|
|
TODO('set rendering intent: ' + intent); |
|
|
|
|
}, |
|
|
|
|
setFlatness: function(flatness) { |
|
|
|
|
TODO('set flatness'); |
|
|
|
|
TODO('set flatness: ' + flatness); |
|
|
|
|
}, |
|
|
|
|
setGState: function(dictName) { |
|
|
|
|
TODO('set graphics state from dict'); |
|
|
|
|
TODO('set graphics state from dict: ' + dictName); |
|
|
|
|
}, |
|
|
|
|
save: function() { |
|
|
|
|
this.ctx.save(); |
|
|
|
@ -4893,10 +4942,10 @@ var CanvasGraphics = (function() {
@@ -4893,10 +4942,10 @@ var CanvasGraphics = (function() {
|
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
setTextRenderingMode: function(mode) { |
|
|
|
|
TODO('text rendering mode'); |
|
|
|
|
TODO('text rendering mode: ' + mode); |
|
|
|
|
}, |
|
|
|
|
setTextRise: function(rise) { |
|
|
|
|
TODO('text rise'); |
|
|
|
|
TODO('text rise: ' + rise); |
|
|
|
|
}, |
|
|
|
|
moveText: function(x, y) { |
|
|
|
|
this.current.x = this.current.lineX += x; |
|
|
|
@ -4999,10 +5048,13 @@ var CanvasGraphics = (function() {
@@ -4999,10 +5048,13 @@ var CanvasGraphics = (function() {
|
|
|
|
|
|
|
|
|
|
// Type3 fonts
|
|
|
|
|
setCharWidth: function(xWidth, yWidth) { |
|
|
|
|
TODO("type 3 fonts ('d0' operator)"); |
|
|
|
|
TODO('type 3 fonts ("d0" operator) xWidth: ' + xWidth + ' yWidth: ' + |
|
|
|
|
yWidth); |
|
|
|
|
}, |
|
|
|
|
setCharWidthAndBounds: function(xWidth, yWidth, llx, lly, urx, ury) { |
|
|
|
|
TODO("type 3 fonts ('d1' operator)"); |
|
|
|
|
TODO('type 3 fonts ("d1" operator) xWidth: ' + xWidth + ' yWidth: ' + |
|
|
|
|
yWidth + ' llx: ' + llx + ' lly: ' + lly + ' urx: ' + urx + |
|
|
|
|
' ury ' + ury); |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
// Color
|
|
|
|
@ -5401,7 +5453,6 @@ var ColorSpace = (function() {
@@ -5401,7 +5453,6 @@ var ColorSpace = (function() {
|
|
|
|
|
var lookup = xref.fetchIfRef(cs[3]); |
|
|
|
|
return new IndexedCS(base, hiVal, lookup); |
|
|
|
|
case 'Separation': |
|
|
|
|
var name = cs[1]; |
|
|
|
|
var alt = ColorSpace.parse(cs[2], xref, res); |
|
|
|
|
var tintFn = new PDFFunction(xref, xref.fetchIfRef(cs[3])); |
|
|
|
|
return new SeparationCS(alt, tintFn); |
|
|
|
@ -5439,12 +5490,12 @@ var SeparationCS = (function() {
@@ -5439,12 +5490,12 @@ var SeparationCS = (function() {
|
|
|
|
|
var base = this.base; |
|
|
|
|
var scale = 1 / ((1 << bits) - 1); |
|
|
|
|
|
|
|
|
|
var length = 3 * input.length; |
|
|
|
|
var length = input.length; |
|
|
|
|
var pos = 0; |
|
|
|
|
|
|
|
|
|
var numComps = base.numComps; |
|
|
|
|
var baseBuf = new Uint8Array(numComps * input.length); |
|
|
|
|
for (var i = 0, ii = input.length; i < ii; ++i) { |
|
|
|
|
var baseBuf = new Uint8Array(numComps * length); |
|
|
|
|
for (var i = 0; i < length; ++i) { |
|
|
|
|
var scaled = input[i] * scale; |
|
|
|
|
var tinted = tintFn.func([scaled]); |
|
|
|
|
for (var j = 0; j < numComps; ++j) |
|
|
|
@ -5750,8 +5801,6 @@ var DummyShading = (function() {
@@ -5750,8 +5801,6 @@ var DummyShading = (function() {
|
|
|
|
|
var RadialAxialShading = (function() { |
|
|
|
|
function constructor(dict, matrix, xref, res, ctx) { |
|
|
|
|
this.matrix = matrix; |
|
|
|
|
var bbox = dict.get('BBox'); |
|
|
|
|
var background = dict.get('Background'); |
|
|
|
|
this.coordsArr = dict.get('Coords'); |
|
|
|
|
this.shadingType = dict.get('ShadingType'); |
|
|
|
|
this.type = 'Pattern'; |
|
|
|
@ -5809,15 +5858,17 @@ var RadialAxialShading = (function() {
@@ -5809,15 +5858,17 @@ var RadialAxialShading = (function() {
|
|
|
|
|
getPattern: function() { |
|
|
|
|
var coordsArr = this.coordsArr; |
|
|
|
|
var type = this.shadingType; |
|
|
|
|
var p0, p1, r0, r1; |
|
|
|
|
if (type == 2) { |
|
|
|
|
var p0 = [coordsArr[0], coordsArr[1]]; |
|
|
|
|
var p1 = [coordsArr[2], coordsArr[3]]; |
|
|
|
|
p0 = [coordsArr[0], coordsArr[1]]; |
|
|
|
|
p1 = [coordsArr[2], coordsArr[3]]; |
|
|
|
|
} else if (type == 3) { |
|
|
|
|
var p0 = [coordsArr[0], coordsArr[1]]; |
|
|
|
|
var p1 = [coordsArr[3], coordsArr[4]]; |
|
|
|
|
var r0 = coordsArr[2], r1 = coordsArr[5]; |
|
|
|
|
p0 = [coordsArr[0], coordsArr[1]]; |
|
|
|
|
p1 = [coordsArr[3], coordsArr[4]]; |
|
|
|
|
r0 = coordsArr[2]; |
|
|
|
|
r1 = coordsArr[5]; |
|
|
|
|
} else { |
|
|
|
|
error(); |
|
|
|
|
error('getPattern type unknown: ' + type); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
var matrix = this.matrix; |
|
|
|
@ -5840,11 +5891,11 @@ var RadialAxialShading = (function() {
@@ -5840,11 +5891,11 @@ var RadialAxialShading = (function() {
|
|
|
|
|
p1 = Util.applyTransform(p1, userMatrix); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
var colorStops = this.colorStops; |
|
|
|
|
var colorStops = this.colorStops, grad; |
|
|
|
|
if (type == 2) |
|
|
|
|
var grad = ctx.createLinearGradient(p0[0], p0[1], p1[0], p1[1]); |
|
|
|
|
grad = ctx.createLinearGradient(p0[0], p0[1], p1[0], p1[1]); |
|
|
|
|
else if (type == 3) |
|
|
|
|
var grad = ctx.createRadialGradient(p0[0], p0[1], r0, p1[0], p1[1], r1); |
|
|
|
|
grad = ctx.createRadialGradient(p0[0], p0[1], r0, p1[0], p1[1], r1); |
|
|
|
|
|
|
|
|
|
for (var i = 0, ii = colorStops.length; i < ii; ++i) { |
|
|
|
|
var c = colorStops[i]; |
|
|
|
@ -6035,6 +6086,7 @@ var PDFImage = (function() {
@@ -6035,6 +6086,7 @@ var PDFImage = (function() {
|
|
|
|
|
var bufferPos = 0; |
|
|
|
|
var output = bpc <= 8 ? new Uint8Array(length) : |
|
|
|
|
bpc <= 16 ? new Uint16Array(length) : new Uint32Array(length); |
|
|
|
|
var rowComps = width * numComps; |
|
|
|
|
|
|
|
|
|
if (bpc == 1) { |
|
|
|
|
var valueZero = 0, valueOne = 1; |
|
|
|
@ -6042,7 +6094,6 @@ var PDFImage = (function() {
@@ -6042,7 +6094,6 @@ var PDFImage = (function() {
|
|
|
|
|
valueZero = decodeMap[0] ? 1 : 0; |
|
|
|
|
valueOne = decodeMap[1] ? 1 : 0; |
|
|
|
|
} |
|
|
|
|
var rowComps = width * numComps; |
|
|
|
|
var mask = 0; |
|
|
|
|
var buf = 0; |
|
|
|
|
|
|
|
|
@ -6064,8 +6115,7 @@ var PDFImage = (function() {
@@ -6064,8 +6115,7 @@ var PDFImage = (function() {
|
|
|
|
|
} else { |
|
|
|
|
if (decodeMap != null) |
|
|
|
|
TODO('interpolate component values'); |
|
|
|
|
var rowComps = width * numComps; |
|
|
|
|
var bits, buf; |
|
|
|
|
var bits = 0, buf = 0; |
|
|
|
|
for (var i = 0, ii = length; i < ii; ++i) { |
|
|
|
|
if (i % rowComps == 0) { |
|
|
|
|
buf = 0; |
|
|
|
@ -6270,14 +6320,14 @@ var PDFFunction = (function() {
@@ -6270,14 +6320,14 @@ var PDFFunction = (function() {
|
|
|
|
|
floor *= outputSize; |
|
|
|
|
ceil *= outputSize; |
|
|
|
|
|
|
|
|
|
var output = []; |
|
|
|
|
var output = [], v = 0; |
|
|
|
|
for (var i = 0; i < outputSize; ++i) { |
|
|
|
|
if (ceil == floor) { |
|
|
|
|
var v = samples[ceil + i]; |
|
|
|
|
v = samples[ceil + i]; |
|
|
|
|
} else { |
|
|
|
|
var low = samples[floor + i]; |
|
|
|
|
var high = samples[ceil + i]; |
|
|
|
|
var v = low * scale + high * (1 - scale); |
|
|
|
|
v = low * scale + high * (1 - scale); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
var i2 = i * 2; |
|
|
|
|