Merge pull request #5713 from Snuffleupagus/evaluator-IdentityToUnicodeMap
Create a IdentityToUnicodeMap in evaluator.js when toUnicode contains IdentityH/IdentityV
This commit is contained in:
commit
3a8d4a7d72
@ -14,15 +14,15 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
/* globals assert, ColorSpace, DecodeStream, Dict, Encodings,
|
/* globals assert, CMapFactory, ColorSpace, DecodeStream, Dict, Encodings,
|
||||||
error, ErrorFont, Font, FONT_IDENTITY_MATRIX, fontCharsToUnicode,
|
error, ErrorFont, Font, FONT_IDENTITY_MATRIX, fontCharsToUnicode,
|
||||||
FontFlags, ImageKind, info, isArray, isCmd, isDict, isEOF, isName,
|
FontFlags, ImageKind, info, isArray, isCmd, isDict, isEOF, isName,
|
||||||
isNum, isStream, isString, JpegStream, Lexer, Metrics,
|
isNum, isStream, isString, JpegStream, Lexer, Metrics, IdentityCMap,
|
||||||
MurmurHash3_64, Name, Parser, Pattern, PDFImage, PDFJS, serifFonts,
|
MurmurHash3_64, Name, Parser, Pattern, PDFImage, PDFJS, serifFonts,
|
||||||
stdFontMap, symbolsFonts, getTilingPatternIR, warn, Util, Promise,
|
stdFontMap, symbolsFonts, getTilingPatternIR, warn, Util, Promise,
|
||||||
RefSetCache, isRef, TextRenderingMode, ToUnicodeMap, CMapFactory,
|
RefSetCache, isRef, TextRenderingMode, IdentityToUnicodeMap,
|
||||||
OPS, UNSUPPORTED_FEATURES, UnsupportedManager, NormalizedUnicodes,
|
OPS, UNSUPPORTED_FEATURES, UnsupportedManager, NormalizedUnicodes,
|
||||||
IDENTITY_MATRIX, reverseIfRtl, createPromiseCapability,
|
IDENTITY_MATRIX, reverseIfRtl, createPromiseCapability, ToUnicodeMap,
|
||||||
getFontType */
|
getFontType */
|
||||||
|
|
||||||
'use strict';
|
'use strict';
|
||||||
@ -1332,8 +1332,11 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
|
|||||||
var cmap, cmapObj = toUnicode;
|
var cmap, cmapObj = toUnicode;
|
||||||
if (isName(cmapObj)) {
|
if (isName(cmapObj)) {
|
||||||
cmap = CMapFactory.create(cmapObj,
|
cmap = CMapFactory.create(cmapObj,
|
||||||
{ url: PDFJS.cMapUrl, packed: PDFJS.cMapPacked }, null).getMap();
|
{ url: PDFJS.cMapUrl, packed: PDFJS.cMapPacked }, null);
|
||||||
return new ToUnicodeMap(cmap);
|
if (cmap instanceof IdentityCMap) {
|
||||||
|
return new IdentityToUnicodeMap(0, 0xFFFF);
|
||||||
|
}
|
||||||
|
return new ToUnicodeMap(cmap.getMap());
|
||||||
} else if (isStream(cmapObj)) {
|
} else if (isStream(cmapObj)) {
|
||||||
cmap = CMapFactory.create(cmapObj,
|
cmap = CMapFactory.create(cmapObj,
|
||||||
{ url: PDFJS.cMapUrl, packed: PDFJS.cMapPacked }, null).getMap();
|
{ url: PDFJS.cMapUrl, packed: PDFJS.cMapPacked }, null).getMap();
|
||||||
|
@ -2227,7 +2227,7 @@ var IdentityToUnicodeMap = (function IdentityToUnicodeMapClosure() {
|
|||||||
|
|
||||||
IdentityToUnicodeMap.prototype = {
|
IdentityToUnicodeMap.prototype = {
|
||||||
get length() {
|
get length() {
|
||||||
error('should not access .length');
|
return (this.lastChar + 1) - this.firstChar;
|
||||||
},
|
},
|
||||||
|
|
||||||
forEach: function (callback) {
|
forEach: function (callback) {
|
||||||
|
Loading…
Reference in New Issue
Block a user