22 червня 2010 о 21:01 +0200 Eugeniy Meshcheryakov написав(-ла):
> > 1 begincodespacerange
> > <0000><ffff>
> > endcodespacerange
> > 3 beginbfrange
> > <000f><000f><2022>
> > <0066><0066><007b>
> > <0067><0067><007d>
> > endbfrange

I recompiled poppler without optimization and now gdb shows that error()
is called from line 312 in CharCodeToUnicode.cc. There code expects that
ranges will contain only 2 digits. This is strange because cmap
specifies 2-byte codespace. 

PDF 1.7 spec contains (5.9.2):
  The CMap file must contain begincodespacerange and endcodespacerange
  operators that are consistent with the encoding that the font uses. In
  particular, for a simple font, the codespace must be one byte long.

And font that references this ToUnicode cmap also references encoding that
has WinAnsiEncoding as base. And this is I guess 1-byte encoding, so
maybe this ToUnicode cmap is inconsistent with the font. If this is true
then this is not a bug in poppler and pdflatex should be fixed.

Attachment: signature.asc
Description: Digital signature

Reply via email to