[gs-bugs] [Bug 692000] New: pdfwrite: incorrect treatment of substitution-based Type 3 Fonts
bugzilla-daemon at ghostscript.com
bugzilla-daemon at ghostscript.com
Thu Feb 24 16:11:16 UTC 2011
http://bugs.ghostscript.com/show_bug.cgi?id=692000
Summary: pdfwrite: incorrect treatment of substitution-based
Type 3 Fonts
Product: Ghostscript
Version: HEAD
Platform: All
OS/Version: All
Status: NEW
Severity: major
Priority: P4
Component: PDF Writer
AssignedTo: ken.sharp at artifex.com
ReportedBy: zgilboa at indiana.edu
QAContact: gs-bugs at ghostscript.com
Estimated Hours: 0.0
Created an attachment (id=7289)
--> (http://bugs.ghostscript.com/attachment.cgi?id=7289)
Source postscript file using "vowel-friendly" Type 3 font
BACKGROUND: In order to place vowels and diacritical marks correctly, type 3
fonts use the original type 1 glyphs, however while adding additional
postscript positioning commands.
PROBLEM: Ghostscript fails to recognize that the only glyphs actually used are
the font's original type 1 glyphs. In consequence, it embeds in the pdf output
file custom-type, Type 3 fonts. Even worse, every set of glyphs of
letter-vowels combination ends up having its own type 3 font subset.
OUTCOME: The above results in an UNNECESSARILY HUGE pdf file. Another negative
side effect is that the output pdf file cannot be searched for text phrases.
IS THERE AN ALTERNATIVE?: Since Adobe's Acrobat Distiller (9.0) treats the ps
source file correctly, there is apparently an a way to identify the "trick"
used by Type 3 Fonts such as the one used in the example source file.
MORE THOUGHTS: it seems that the problem lies in the point in time when
font-usage is recorded and embedded. When a Type 3 glyph command is executed,
the postscript interpreter should not immediately embed the glyph (or font
subset), but instead "wait" to see which commands the glyph executes. If these
commands only include---in addition to the Type 1 glyphs---only positioning
commands, then it is the Type 1 font/glyph (rather than Type 3), that should be
"recorded" and subsequently embedded in the output pdf file.
--
Configure bugmail: http://bugs.ghostscript.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
More information about the gs-bugs
mailing list