0

I've noticed some details in PDF files, such as thin lines, render differently depending on the Viewer:

  • Preview (Apple)
  • Adobe Acrobat Reader

Is there a way to save them in order to make them display in the same way on all viewers ?

thanks

4
  • Yeah, save them as images. A PDF file (just like HTML + CSS) is just a set of instructions on which the application is to use to render the document, I guess there's a spec to follow but the same could be said for web browsers and look how inconsistent they are. Sep 28, 2010 at 13:07
  • But is there an option to render the PDF as images ? In this way it weights more, but I don't care about that...
    – aneuryzm
    Sep 28, 2010 at 13:09
  • It was a facetious statement to be fair, but that said there must be a way of outputting it as an image, thus it would make it a billion times less accessible. Sep 28, 2010 at 13:12
  • I suspect you have to tell the application that makes the pdf to make images instead of a normal pdf.
    – Nifle
    Sep 28, 2010 at 13:35

3 Answers 3

2

Saving as images is inefficient and a waste of space.

Make sure that your generated pdf files are embedding all of the elements required to display them correctly (embedded fonts are a major culprit for non-standard display)

Are the thin lines vector-based images, text, or bitmap-based images? It's possible that one of your viewers is anti-aliasing the lines, and the other is not.

1
  • 1
    Making text into images also makes them non-searchable and unCopyable.
    – paradroid
    Sep 28, 2010 at 17:42
1

The problem is this:

  • A PDF file is composed of semi-programmatic instructions how to render it.
  • A PDF file may use fonts which are not embedded.
  • One PDF viewer may interprete some of the render instructions differently from another.
  • The fonts used by the PDF file may not be embedded, but only referenced by name.
  • PDF viewers are free to use a local substitute font for non-embedded ones if they can't find the original one.
  • Even if a viewer finds a font with the same name, it may be a different version on the the local 'puter from the one used when creating the PDF. Example? Arial. There are dozens of Arials out there. And they all go by the same name.
  • 'Thin lines': PostScript and PDF have a concept of linewidth. You can set linewidth to 0. This is defined to mean for the interpreter: "Use the thinnest line you can render for a given resolution." It is especially this instruction which makes different viewers render the same file differently.

Of course you can convert your PDFs to images (TIFF, PNG, JPEG,...). But are you sure that each image viewer on all platforms will display your image the same way?

If you still want to convert your PDFs to images, you can use Ghostscript for the job. Here for converting to TIFF G4 format as multi-page TIFF:

gswin32c.exe ^
  -sDEVICE=tiffg4 ^
  -r1200x1200 ^
  -o c:/path/to/output.tif ^
   d:/path/to/input.pdf

If you want a TIFF per PDF page, use this:

gswin32c.exe ^
  -sDEVICE=tiffg4 ^
  -r1200x1200 ^
  -o e:/path/to/output/input_page_%03d.tif ^
   d:/path/to/input.pdf

If you want to convert your PDFs in such a way that thickens up very thin lines, you'll have to look into shelling out lots of money for a so-called PDF Preflight software. One of which I am aware is pdfToolbox4 by callassoftware.com. This product can batch-convert PDFs and change all so called hairlines to a minimum thickness (which in turn should make all viewers to display the files in a similar way). And of course, this product can do much, much more than just that: it is a professional tool used by printing professionals for preflighting printjobs.

0

Make sure the fonts are all setup correctly and embedded as well. There is a blog article explaining all about fonts at http://www.jpedal.org/PDFblog/?p=635

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .