[
https://issues.apache.org/jira/browse/PDFBOX-2923?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14679802#comment-14679802
]
Petras edited comment on PDFBOX-2923 at 8/10/15 8:42 AM:
---------------------------------------------------------
Yes, I think so. As ISO 32000-1 notes on Glyph Positioning and Metrics:
{quote}Storing this \[Width] information in the font dictionary, although
redundant, enables a conforming reader to determine glyph positioning without
having to look inside the font program.{quote}
Thus I guess most renderers generally rely on information in Font dictionary,
not in Font program.
was (Author: abyss):
Yes, I think so. As ISO 32000-1 notes:
{quote}Storing this \[Width] information in the font dictionary, although
redundant, enables a conforming reader to determine glyph positioning without
having to look inside the font program.{quote}
Thus I guess most renderers generally rely on information in Font dictionary,
not in Font program.
> CFFParser parser treats CIDFont's charset data as SID
> -----------------------------------------------------
>
> Key: PDFBOX-2923
> URL: https://issues.apache.org/jira/browse/PDFBOX-2923
> Project: PDFBox
> Issue Type: Bug
> Components: FontBox
> Affects Versions: 1.8.10
> Reporter: Petras
> Fix For: 1.8.11
>
> Attachments: MyriadPro-Regular.cff, Patch_to_fix_PDFBOX-2923.patch,
> sample-a2b-acrosigned_B.pdf
>
>
> As stated in Compact Font File specification:
> {quote}
> The charset data, although in the same format as non-CIDFonts, will represent
> CIDs rather than SIDs, i.e. charstrings are “named” by CIDs in a CIDFont.
> {quote}
> Unfortunately, {{CFFParser}} does not consider this specific and always treat
> charset data as SID: is looking for SID referenced text in _String INDEX_
> structure. Since such SID-indexed string does not exist there, it sets the
> name of the glyph to "{{.ndef}}".
> Consequently, {{CFFParser}} fails to register correct charstrings, as it
> associates glyph names to them using a map. As there can be several
> charstrings, only the last charstring entry is retained.
> Then also {{CFFFont.getWidth()}} method fails to return correct width of the
> given CID as correct link between CID and charstring is lost.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]