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.
signature.asc
Description: Digital signature

