2016-01-11 2 views
0

Я компилирую латексный документ, содержащий акценты (например, «é») с использованием RSweave. Затем я копирую текст из pdf, созданного pdflatex в блокноте. В результате отображаются странные символы, для некоторых причин кодирования.RSweave: Как скопировать/вставить из pdf в блокнот, избегая ошибки?

Есть ли способ решить эту проблему?

Минимальный рабочий пример

\documentclass{article} 

\usepackage[utf8]{inputenc} 
\begin{document} 
\SweaveOpts{concordance=FALSE} 

Orçamentária \\ 
Tendência \\ 
saída \\ 
gestão \\ 
órgão \\ 
coração 

\end{document} 

Когда я скопировать эти слова из PDF в блокнот (PDF открыть в Adobe Reader), я получаю:

Orcamentaria Склонны^encia Sada gest ~ ao org ~ ao corac ~ ao

The real output

+0

Попробуйте добавить \ usepackage [T1] {fontenc} и \ usepackage {lmodern} перед \ begin {document} –

+0

К сожалению, это не решило проблему. –

ответ

0

После поиска много, я обнаруживаю источник проблемы. В C: \ Users ... \ Documents \ R \ R-3.1.2 \ доля \ TEXMF \ текс \ латексная \ Sweave.sty есть:

\ifthenelse{\boolean{[email protected]}}{% 
    \RequirePackage[T1]{fontenc} 
    \RequirePackage{ae} 
}{}% 

По https://en.wikibooks.org/wiki/LaTeX/Fonts:

пакет ae (почти европейский) устарел. Он предоставил некоторые обходные пути для переносов слов со специальными символами. Они больше не нужны с такими шрифтами, как lmodern. Использование пакета ae приводит к проблемам с текстовым кодированием в файлах PDF, созданных с помощью pdflatex (например, извлечение и поиск текста), помимо типографских проблем.

Итак, если я прокомментирую эту строку в Sweave.sty, я решу проблему. Или просто комментарий \ userpackage {sweave} в .tex-файле.

Смежные вопросы