13

When I create a pdf with pdflatexand copy text from that pdf (using Adobe Reader DC on Windows 10), some of the spaces are missing. Here's an MWE:

\documentclass{article}
\usepackage{newtxtext}
\begin{document}
    Therefore, this work ... \hspace*{\linewidth}
\end{document}

When I copy text from that pdf, this is what I get (1 being the page number):

Therefore, thiswork ...
1

Removing the \hspace*, OR removing newtxtext (or both) fixed the problem, but that's not I want, of course (as \hspace* represents some text following "this work").

I have come across Problem copying text from pdf - spaces being stripped and XeLaTeX and missing spaces in PDF text, which proposed \pdfgeninterwordspace, which is now \pdfinterwordspaceon (thanks, @egreg). So I tried that:

\documentclass{article}
\usepackage{newtxtext}
\pdfmapline{+dummy-space <dummy-space.pfb}
\pdfinterwordspaceon
\begin{document}
    Therefore, this work ... \hspace*{\linewidth}
\end{document}

(See Use pdfinterwordspaceon with pdflatex from MiKTeX on Windows if that does not compile for you.)

Now, when I copy text from that pdf, I get this:

Therefore,  this work  ... 
1

So basically, additional space has been introduced regardless of whether or not it was needed. Yes, the missing space in "thiswork" has been added, which is good; but so have three extra spaces after "Therefore,", "work", and "...", which is not good.

Is there a better solution? Am I using \pdfinterwordspaceon correctly?

  • 2
    It should be \pdfinterwordspaceon – egreg Jul 1 '16 at 22:48
  • 1
    Same issue on ubuntu with acroread, but copying from the system pdf reader evince works as desired. – JPi Jul 8 '16 at 19:15
  • 1
    @JPi: Good point. I tried the Chrome (Browser) pdf plugin, and both pdf files work as expected in terms of copying text from it - Therefore, this work ... is the result in both cases. – bers Jul 8 '16 at 19:21
  • 3
    As far as I know, this is at least partly a known issue with Adobe Reader. It is an issue in the viewer, not the file, and there's not much to be done on the TeX side of things. – cfr Jul 8 '16 at 23:11
  • 1
    If you're like me, and don't like the prospect of switching to a new pdf reader just so that copying works, I found the following ghostscript call which fixes the weird spaces: gs -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=new.pdf old.pdf – rien333 Oct 27 '19 at 23:48
4

This is at least partly a known issue with Adobe Reader. Adobe Reader fails to recognise spaces between words in certain cases (e.g. where the spacing is smaller than average) or recognises one space as multiple spaces (e.g. where the spacing is larger than average).

It is an issue in the viewer, not the file - as demonstrated by the fact that other viewers work fine - and there's not much to be done on the TeX side of things.

| improve this answer | |
  • But a pdf file, with \usepackage[T1]{fontenc}, is able to make the "fi" ligature copy-and-pasteable as "fi" (2 letters). Why is there no way to make a space copy-and-pasteable as a space? – bers Sep 8 '16 at 15:12
  • 2
    @bers Space isn't a character. It is just space. – cfr Sep 8 '16 at 21:02
2

Old thread, but I had the same problem as you and after a lot of searching online I was able to find a fix that really helped me.

\fontdimen2 controls the spacing between words in LaTeX so we can use that to make sure a PDF reader can tell where one word starts, and another ends.

Here's a simple example using an environment to define an area that we want different spacing in:

\documentclass{article}
\usepackage{newtxtext}

\newenvironment{goodspacing}{
    \fontdimen2\font=0.5em
}

\begin{document}
\begin{goodspacing}
    Therefore, this work ...
\end{goodspacing}
\end{document}

Wrapping your content with this environment should be sufficient enough for copy and pasting to work correctly.

Adjust the number after \font= to your desired amount of inter-word spacing.

| improve this answer | |
  • Welcome to TeX.SE! – CarLaTeX Dec 14 '19 at 7:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.