[cstex] Kopírování češtiny z PDF

Petr Sojka sojka at fi.muni.cz
Wed Feb 15 23:44:14 CET 2012


On Wed, Feb 15, 2012 at 12:56:20PM -0800, petr zemánek wrote:
Dobrý den,
> měl bych dotaz ohledně nastavení pro pdfLaTeX, aby bylo možné korektně
> kopírovat text z PDF souboru. Používat toto nastavení
> 
> \usepackage[utf8]{inputenc}
> \usepackage[T1]{fontenc}
> \usepackage[czech]{babel}
> \usepackage{mathptmx}
> 
> A když zkopíruji text "Plné jméno autora včetně titulů" (takto je i
> zadán ve zdrojovém souboru; ale předpokládám, ze zadání pomocí \v{c}
> apod., by ke změně nevedlo), tak dostanu toto
> 
> Plné jméno autora vˇcetnˇe titul°u
> 
> Je to možné docílit správného kopírování?
Je to po porozumění mechanismu CMAP (Character mapping) 
v PDF možné docílit. 

Aby šlo text z PDF kopírovat, musí být informace
o Unicode pozicích vysázených znaků z fontů v PDF
použitých do PDF generující aplikací (pdftexem)
vložena. To stále pro mnohé fonty není splněno.
Některé virtuální fonty skládají znak z více glyfů
fontu (jak v případě mathptmx uváděném výše), některé
fonty zase mají pojmenování znaků takové, že 
nelze z názvu znaku pozici Unicode (tj. jednoznačnou
identifikaci znaku) uhádnout, a dělat OCR je nespolehlivý
kanón na vrabce.

Autor resp. aplikace musí mapování znaků sdělit a do PDF
uložit. O to se stará balík cmap, viz `texdoc cmap`.
Ten zatím nepodporuje všechny druhy mapování,
například selhává v případech když by měl mapovat
víceglyfové znaky (ne vždy to může být žádoucí).
Proto pro docílení funcionality je pragmatické
použít osmibitové fonty v balíkem cmap podporovaných
kódováních (T1 ap.). 

Pokud laskavý čtenář dočetl až sem, a chce si
ověřit porozumění principu, nemusí ostránkovávat 
pro správné řešení otázky na konci tohoto emailu.

Pěkný zbytek dne
Petr Sojka



































































\documentclass{minimal}
\usepackage[utf8]{inputenc}
\usepackage{cmap}     % <- zajistí vložení CMap
\usepackage[T1]{fontenc}
\usepackage[czech]{babel}
%\usepackage{mathptmx}
\usepackage{tgtermes} % osmibitový "Times" 
\begin{document}
Plné jméno autora včetně titulů.
\end{document}



More information about the csTeX mailing list