Dlaczego ten plik PDF poprawnie koduje nawiasy, ale nie używa pdftotekstu lub kopiowania i wklejania?

4

Oto linki do niektórych artykułów z czasopism:

Wszystkie one niepoprawnie kodują nawiasy (i inne znaki, takie jak nawiasy). Jest to jednak widoczne tylko podczas próby przekonwertowania ich na tekst lub skopiowania i wklejenia. Na przykład pierwszy wiersz treści pierwszego artykułu powinien brzmieć:

Proton exchange membrane fuel cells (PEMFCs) have received

Zamiast tego, podczas kopiowania i wklejania z Acrobat Reader, daje

Proton exchange membrane fuel cells PEMFCs have received

I kiedy używasz "Zapisz jako tekst", daje

Proton exchange membrane fuel cells ^CPEMFCs�
have received 

Gdzie jest otwarty nawias ^C, 03 sekwencja sterująca ASCII, a nawiasem zamykającym jest Unicode 65533, znak zastępczy, po którym następuje znak nowej linii. Podobnie, pdf2txt koduje to jako

Proton exchange membrane fuel cells 共PEMFCs兲 have received

(Unicode 20849 i 20850) i pdftotext koduje to jako

Proton exchange membrane fuel cells ͑PEMFCs͒ have received

(Unicode 849 i 850).

Jest też kod Unicode 851 (͓), 852 (͔), 1003 (ϫ), 1011 (ϳ), 1015 (Ϸ), 8217 ('), 8211 (-), 8722 (-), 64257 (fi), 64258 ( fl) i znak kontrolny Ctrl-L (ASCII 12) w pdftotext wydajność. Niektóre z nich można dość łatwo znormalizować do ASCII, ale niektóre z nich będą wymagały manualnego mapowania.

Moje pytania to:

  1. Jaki jest najlepszy sposób, aby to naprawić? Widziałem podobne pytania, łącznie z tym używa skryptu, aby zastąpić błędne znaki , ale konfigurowanie odwzorowań jest nietrywialne i nie naprawia pliku PDF.

  2. Dlaczego różne czytniki PDF i narzędzia PDF do tekstów dają tak różne wyniki?

Oto wyniki pdfinfo i pdffonts:

Title:          
Subject:        
Keywords:       
Author:         
Creator:        XPP
Producer:       Acrobat Distiller 6.0.1 (Windows)
CreationDate:   Thu Mar 23 12:07:23 2006
ModDate:        Sun Nov  4 12:48:02 2012
Tagged:         no
Pages:          6
Encrypted:      no
Page size:      657 x 855 pts
File size:      266467 bytes
Optimized:      no
PDF version:    1.4

name                                 type              emb sub uni object ID
------------------------------------ ----------------- --- --- --- ---------
Helvetica                            Type 1            no  no  no      89  0
Helvetica-Oblique                    Type 1            no  no  no     109  0
Helvetica-Bold                       Type 1            no  no  no      88  0
LFNLKJ+Times-Bold                    Type 1C           yes yes no      63  0
LFNLLK+Times-Italic                  Type 1C           yes yes no      64  0
LFNLMK+Times-Roman                   Type 1C           yes yes no      65  0
LFNLML+MathematicalPi-Three          Type 1C           yes yes no      66  0
LFNLMM+MathematicalPi-One            Type 1C           yes yes no      67  0
LFNLMN+Universal-GreekwithMathPi     Type 1C           yes yes no      72  0
Nathaniel M. Beaver
źródło

Odpowiedzi:

2

Odpowiedź jest w kolumnie "uni": te czcionki, w szczególności te, które były używane w nawiasach, nie mają wyraźnego odwzorowania na kod Unicode. Trudno jest zidentyfikować najbardziej poprawny kod dla jakiegoś dowolnego symbolu.

Aaron Brick
źródło