2

When producing LaTeX documents using e.g. pdflatex with many embedded figures (pdfs, pngs, jpgs, etc.) I have often run into the problem that professional printers are not able to print the document.

Typically they are able to open the pdf just fine in Adobe Reader, but when attempting to print from Adobe Reader (Pro) they encounter errors, even though I experience no problems printing from Evince and Acrobat Reader DC from home. Since I do not have access to Adobe Pro tools myself it can be a long, very tedious process to debug the produced pdf (sending it back and forth to the printer).

  1. Is there are way to validate that my pdfs will be printable for Adobe software?

  2. Which pdf standard should I validate against, PDF/X or PDF/A and which version?

  3. In case my pdf is invalid can I get a detailed report preferable with page numbers for where to improve? I have found the Apache preflight tool, but this gives many, many issues and I do not know which of these are important. Apache preflight only validates PDF/A.

  4. Should pdflatex generally produce valid pdfs or is it not intended to be compliant? What is the procedure for making compliant pdfs?

From Apache preflight I get lines like these:

5.2.2 : Forbidden field in an annotation definition, Flags of Link annotation are invalid on page 2
2.4.2 : Invalid Color space, The operator "k" can't be used with RGB Profile on page 2
2.4.2 : Invalid Color space, The operator "K" can't be used with RGB Profile on page 2
5.2.2 : Forbidden field in an annotation definition, Flags of Link annotation are invalid on page 3
7.1 : Error on MetaData, Cannot understand PI data part : 'begin='?'?' in 'begin='?'? id='W5M0MpCehiHzreSzNTczkc9d' '

(about 800 lines like these for an 18 page document)

Update: After updating texlive install to newest 2015 versions I am able to produce valid pdf-a i.e. the warnings above went away.

I would like to include a MWE, but since I cannot check whether printing fails from Adobe Distiller without involving a professional printer I cannot provide a good test case. My theory is that I am including images with gradients and/or transparencies and that this is not allowed.

Background

I have found this tex.SE question which suggests that pdfx is the way to go, but that I really need to pony up for Adobe Pro suite to really be sure that my pdf will be printable.

I also conclude that most likely the fault derives from some included pdf. I still have to figure out a way to get warnings about problematic files.

The Apache preflight tools seems to only validata pdf-a and not pdf-x so this is of limited utility here.

Update: I have realized that my orginal formulation unnecessarily emphasized Distiller. I have changed to reflect that I was unable to print pdfs genrated by pdflatex from any Adobe Pro tool.

  • 1
    From my experience it is not your document that is not compliant nor the adobe software, but the professional printers which only support old pdf formats with few features (no transparency , limited font support,...). so creating a pdf 1.3 or 1.4 usually helps. pdf-a or pdf-x are also options but still suffer from the limited features (newer versions exist but will probably not be supported by the printers). I found they are also not trivial to create. – ArTourter Oct 02 '16 at 11:05
  • When I have had problems I have been able to test them on Adobe Distiller. By distilling in Adobe Distiller I can trigger the same problems. Does this mean that Distiller only supports older versions or that I am having a different problem from you? – HansHarhoff Oct 02 '16 at 11:17
  • I must admit I have never used distiller and having just tried I am not sure how you can check a pdf file with it since it function is to convert ps into pdf. Feeding it a pdf doesn't seem to lead anywhere. – ArTourter Oct 02 '16 at 12:16
  • Maybe I am confusing the terms.. My understanding was that a preflight could be performed using Distiller to prepare the pdf for printing and detect problems. It is this check I would like to pass or at least get warnings from pdflatex about. – HansHarhoff Oct 02 '16 at 12:41
  • You may try ghostscript to simplify your PDF file: pdf2ps --> ps2pdfXX(where XX is 12, 13 or 14 to get PDF v1.2, v1.3 or v1.4). – Paul Gaborit Oct 02 '16 at 15:27
  • @PaulGaborit: This is very bad advice. If your included PDFs are somewhat broken, fix them. – Martin Schröder Oct 03 '16 at 01:49
  • @MartinSchröder The included PDF are not necessarily broken as they are included and correctly displayed by a PDF viewer... My advice is a method to remove transparencies. – Paul Gaborit Oct 03 '16 at 04:51
  • Even though I provided a reply, I agree that the question (and my reply) is off-topic. –  Oct 03 '16 at 14:28
  • I do not understand why this is off-topic, except for my confusion about Distilller. I am asking whether pdflatex "should" produce valid pdf, whether it does, and how to check. The help center suggests that questions hshould be about e.g. pdflatex and surrounding tools... – HansHarhoff Oct 03 '16 at 20:32
  • @HansHarhoff: pdftex/luatex/xetex produce valid PDFs according to ISO 32000-1. The engines do not enforce this for included PDFs; they also do not enforce any limitations required by other standards, e.g. PDF-A or PDF-X. Your question is probably better suited at graphicdesign.sx as it seems more concerned with general problems of printing houses with PDFs. – Martin Schröder Oct 03 '16 at 22:16
  • @Martin actually your latest comment answers my questions. It turns out that The issue was included pdfs. I'll accept that as the answer if you will post it. – HansHarhoff Oct 04 '16 at 04:29

2 Answers2

4

Adobe Distiller (which I have) can be set to process files in different ways. More likely than not, the Distiller is set to process against PDF/X-1a:2001 standards, if the end is commercial printing. I rarely find Distiller useful.

Among the limitations of that standard: Files must be "flat" (no transparency); no active content such as bookmarks; a printer output intent must be specified (or added at time of distill), and color must be CMYK. Fonts must be (subset) embedded, but that's usual.

In some cases, the Distiller can fix your file. In other cases, particularly if you have included RGB images, it cannot do that. If the standard in use is more advanced than PDF/X-1a, then the odds are better that your file can be fixed.

Adobe Acrobat Pro (which I have) has features that allow you to directly identify and, in most cases, fix discrepancies. This includes flattening and RGB to CMYK conversion against standard printer output intents.

In LaTeX, there is a `pdfx' package that is useful for some, only some, files. As of the time I write this, the package does not readily account for dimensions. It is still under development. Understand that it is possible for pdfLaTeX and LuaTeX (but not XeTeX) to create fully PDF/X compliant files, with all the bells and whistles. I have tested this. But it is not obvious.

For printing (to paper), you want PDF/X. The PDF/A standard is for computer files (e-books) rather than print. Still, if a file is PDF/A and has no active content such as hyperlinks, then the odds are good that it is close enough to PDF/X. In the meantime, I recommend that you compile your TeX document using PDF 1.3 or at most 1.4. That should be good enough, if you do not include color images, and even then it will be OK for some printers.

The reason that a commercial printer will reject a file that prints well on your home inkjet, is that the commercial service is used to working against color standards, but the inkjet doesn't care.

  • How does Adobe, which is defining the PDF standards by the way, make a software that is not compatible with the standards ? And I have no idea what you mean in the last paragraph. – percusse Oct 03 '16 at 06:25
  • 1
    There are several PDF standards. A PDF can be valid and printable without being standard. You can choose which standard you want. If you make the wrong choice, then the standard you get is incompatible with the standard you should have chosen, and the resulting file may be rejected by the recipient. Your home or office inkjet printer prints anything that can possibly be printed, (usually) without regard to standards. But a commercial printer may reject perfectly valid, printable files, if not in a particular standard. The standard is for uniformity. –  Oct 03 '16 at 14:27
  • Distiller is for producing flat PDF files that are standard (as the name implies). I think there is a confusion here with a PostScript driver capable printer and the PDF file format. – percusse Oct 03 '16 at 15:01
  • @percusse: Yes, there is a confusion. It seems to have started back at the OP experience with the printing service. –  Oct 03 '16 at 15:28
  • @percusse: It's 2016: A printing house should be able to handle PDFs with transparency, i.e. PDF 1.4 or PDF-X/4. Both versions are more than a decade old - if a printing house can not handle them, they have probably not upgraded their software for years. – Martin Schröder Oct 03 '16 at 22:12
  • @MartinSchröder Printing companies have really big printers. They can't change printers that frequently (not software the actual hardware). But yes it's due. But I can't blame them. – percusse Oct 04 '16 at 06:56
  • @percusse: The software printing houses use (preflight and RIP) is independent of the printing machines they use. – Martin Schröder Oct 04 '16 at 09:29
  • @MartinSchröder You would be surprised ;) – percusse Oct 04 '16 at 09:57
  • @percusse: I would indeed. At least a decade ago when I worked at a company producing RIPs and preflighting software, that was the case. It might be different for digital printers, but even those will have upgradable software. – Martin Schröder Oct 04 '16 at 10:00
  • Do you have an open source alternative to Adobe Pro tools for preflighting (of e.g. PDF/X or PDF/A) a part from Apache preflight? I have now purchased a month of Adobe Pro, but I would like an open source tool to detect problems with the output from pdflatex. – HansHarhoff Oct 04 '16 at 11:20
  • 1
    @MartinSchröder: In the USA, the "print on demand" market is very active. The service sends the PDF to whichever printer is available at a given time. Some have old equipment. Thus, PDF 1.4 and even 1.3 is the norm, in order to ensure that even the oldest equipment can print it. In some cases, color must be separated to CMYK in advance. Whether the same companies could have printed the PDF with advanced technology (and many do) is not relevant. I have done this, PDF/X-1a:2001 in PDF 1.3 with CMYK separation, as recently as 2014. But in the end, my book was printed using recent technology. –  Oct 05 '16 at 02:39
1

Your "professional" printers should not use Distiller, but preflighting tools (if they really use Distiller, they are not professionals). These will report any errors (these will typically be in included PDFs) and may be even able to fix them.

  • I believe that a preflight tool was probably what they were using ( but as I was not physically there I cannot know for certain). I have changed the question to say Adobe pro tools and preflight. – HansHarhoff Oct 03 '16 at 20:27