|
|
|
@ -139,6 +139,9 @@ var ColorSpace = (function ColorSpaceClosure() {
@@ -139,6 +139,9 @@ var ColorSpace = (function ColorSpaceClosure() {
|
|
|
|
|
var baseIndexedCS = ColorSpace.parseToIR(cs[1], xref, res); |
|
|
|
|
var hiVal = cs[2] + 1; |
|
|
|
|
var lookup = xref.fetchIfRef(cs[3]); |
|
|
|
|
if (isStream(lookup)) { |
|
|
|
|
lookup = lookup.getBytes(); |
|
|
|
|
} |
|
|
|
|
return ['IndexedCS', baseIndexedCS, hiVal, lookup]; |
|
|
|
|
case 'Separation': |
|
|
|
|
case 'DeviceN': |
|
|
|
@ -260,14 +263,18 @@ var IndexedCS = (function IndexedCSClosure() {
@@ -260,14 +263,18 @@ var IndexedCS = (function IndexedCSClosure() {
|
|
|
|
|
|
|
|
|
|
var baseNumComps = base.numComps; |
|
|
|
|
var length = baseNumComps * highVal; |
|
|
|
|
var lookupArray = new Uint8Array(length); |
|
|
|
|
var lookupArray; |
|
|
|
|
|
|
|
|
|
if (isStream(lookup)) { |
|
|
|
|
lookupArray = new Uint8Array(length); |
|
|
|
|
var bytes = lookup.getBytes(length); |
|
|
|
|
lookupArray.set(bytes); |
|
|
|
|
} else if (isString(lookup)) { |
|
|
|
|
lookupArray = new Uint8Array(length); |
|
|
|
|
for (var i = 0; i < length; ++i) |
|
|
|
|
lookupArray[i] = lookup.charCodeAt(i); |
|
|
|
|
} else if (lookup instanceof Uint8Array) { |
|
|
|
|
lookupArray = lookup; |
|
|
|
|
} else { |
|
|
|
|
error('Unrecognized lookup table: ' + lookup); |
|
|
|
|
} |
|
|
|
|