4

I am not completely sure whether this is even supposed to work, but reading the documentation of pdfx it is my understanding that while PDF/A by default uses a RGB profile, it is possible to specifically ask for a CMYK profile. The manual says the following (p. 12): "For users who have a specific color profile they wish to use, it is possible to do so by including a \setRGBcolorprofile or \setCMYKcolorprofile command in the .xmpdata file."

I tried the following MWE:

\RequirePackage{filecontents}
 \begin{filecontents*}{\jobname.xmpdata}
 \setCMYKcolorprofile{coated_FOGRA39L_argl.icc}
                     {Coated FOGRA39}
                     {FOGRA39 (ISO Coated v2 300\% (ECI))}
                     {http://www.argyllcms.com/}
        \Title{Title}
        \Author{Author\sep}
        \Language{de-DE}
        \Keywords{keyword1\sep keyword2\sep keyword3}
        \Publisher{Publisher}
      \end{filecontents*}
\documentclass[]{scrbook}

\usepackage[a-3b]{pdfx}

\begin{document}
Test
\end{document}

While this is a valid PDF/A according to Adobe Acrobat – the preflight test does not produce an error – the color profile used is IEC sRGB. And if I actually include CMYK images, it does not pass as proper PDF/A since the color profiles of the PDF and the included image differ.

pdfx simply seems to ignore the color profile set in the .xmpdata file.

4

You can force the output intent with :

\RequirePackage{filecontents}
 \begin{filecontents*}{\jobname.xmpdata}
 \setCMYKcolorprofile{coated_FOGRA39L_argl.icc}
                     {Coated FOGRA39}
                     {FOGRA39 (ISO Coated v2 300\% (ECI))}
                     {http://www.argyllcms.com/}
        \Title{Title}
        \Author{Author\sep}
        \Language{de-DE}
        \Keywords{keyword1\sep keyword2\sep keyword3}
        \Publisher{Publisher}
      \end{filecontents*}
\documentclass[]{scrbook}

\usepackage[a-3b]{pdfx}

% -- snipp --

\immediate\pdfobj stream attr{/N 4} file{coated_FOGRA39L_argl.icc}
\pdfcatalog{%
/OutputIntents [ <<
/Type /OutputIntent
/S/GTS_PDFA1
/DestOutputProfile \the\pdflastobj\space 0 R
/OutputConditionIdentifier (Coated FOGRA39)
/Info(FOGRA39L)
>> ]
}

% -- snapp -- 

\begin{document}
Test
\end{document}

But preflight will complain, that the output intent isn't RGB

  • Thanks, but what does this actually mean? That PDF/A can't, by definition, be CMYK, that pfdx is unable to produce a proper file, or that preflight is wrong? And what about the part in the pdfx documentation where they recommend the solution I chose in my MWE? EDIT: Where do I have to put this code snippet? I am unable to compile this … – Simifilm Dec 10 '18 at 9:32
  • Well, if you look at the source of pdfx, you will find, that cmyk is disabled for pdf/a and pdf/e. I have no idea, why Adobe Acrobat's preflight insists on RGB, since CMYK is explicitly allowed: pdfa.org/pdfa-and-colors – DG' Dec 10 '18 at 9:41
  • 3
    I just realised that the name of the profile file given in the pdfx doc is actually wrong. The file installed by package colorprofiles is FOGRA39L_coated.icc, not coated_FOGRA39L_argl.icc. After correcting this, the file compiles flawlessly. But preflight does indeed complain although the output profile is now set correctly. – Simifilm Dec 10 '18 at 9:50

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.