From a4e1fba9eca17ff8ed03ea87bc53c4c990ac1cbe Mon Sep 17 00:00:00 2001 From: Andreas Gal Date: Fri, 17 Jun 2011 16:34:29 -0700 Subject: [PATCH] even more error checking for font translation --- pdf.js | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/pdf.js b/pdf.js index d656db87b..56ab89017 100644 --- a/pdf.js +++ b/pdf.js @@ -1931,12 +1931,12 @@ var CanvasGraphics = (function() { } else if (IsName(encoding)) { var encoding = Encodings[encoding.name]; if (!encoding) - error("Unknown encoding"); + error("Unknown font encoding"); var widths = xref.fetchIfRef(fontDict.get("Widths")); var firstChar = xref.fetchIfRef(fontDict.get("FirstChar")); assertWellFormed(IsArray(widths) && IsInteger(firstChar), - "invalid Widths or FirstChar"); + "invalid font Widths or FirstChar"); var charset = []; for (var j = 0; j < widths.length; j++) { if (widths[j]) @@ -1945,11 +1945,16 @@ var CanvasGraphics = (function() { } } + var subType = fontDict.get("Subtype"); + var bbox = descriptor.get("FontBBox"); + assertWellFormed(IsName(subType) && IsArray(bbox), + "invalid font Subtype or FontBBox"); + var properties = { - type: fontDict.get("Subtype").name, + type: subType.name, encoding: encodingMap, charset: charset, - bbox: descriptor.get("FontBBox") + bbox: bbox }; return {