4

I am trying to create a PDF/A-2u compliant PDF file from a LaTEX version of my thesis. I am using the pdfx package set to a-2u and validating the generated PDF using the VeraPDF validator with a profile for PDF/A-2u, since it is what my university does when validating submitted files.

But when I run the validator the following test fails:

Specification: ISO 19005-2:2011, Clause: 6.2.11.4, Test number: 1

The font programs for all fonts used for rendering within a conforming file shall be embedded within that file, as defined in ISO 32000-1:2008, 9.9.

Subtype == "Type3" || Subtype == "Type0" || renderingMode == 3 || fontFile_size == 1

I have created a fairly minimal example, which I compile into pdf using pdflatex document

\documentclass[12pt,a4paper]{report}
\setlength\textwidth{145mm}
\setlength\textheight{247mm}
\setlength\oddsidemargin{15mm}
\setlength\evensidemargin{15mm}
\setlength\topmargin{0mm}
\setlength\headsep{0mm}
\setlength\headheight{0mm}

\let\openright=\clearpage

\usepackage[czech]{babel}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage{textcomp}

\usepackage[utf8]{inputenc}

\usepackage[a-2u]{pdfx}

\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amsthm}
\usepackage{bbding}

\usepackage{bm}
\usepackage{graphicx}
\usepackage{fancyvrb}
\usepackage{indentfirst}
\usepackage{natbib}

\usepackage[nottoc]{tocbibind}

\usepackage{icomma}
\usepackage{dcolumn}
\usepackage{booktabs}
\usepackage{paralist}
\usepackage[usenames,table,xcdraw]{xcolor}

\usepackage{subcaption}
\usepackage{multirow}

\usepackage{tabularx}

\hypersetup{unicode}
\hypersetup{breaklinks=true}

\begin{document}

\pagestyle{empty}
\hypersetup{pageanchor=false}

hello, \emph{world}

\openright
\end{document}

When I run pdffonts document.pdf, I can see that all the used fonts are embedded and of Type 1:

name                                 type              encoding         emb sub uni object ID
------------------------------------ ----------------- ---------------- --- --- --- ---------
YGPAOD+LMRoman12-Regular             Type 1            Custom           yes yes yes      9  0
OCNWPR+LMRoman12-Italic              Type 1            Custom           yes yes yes     10  0

Which means that the fonts do not match the desired renderingMode or fontFile_size requirement.

Is there a way to fix this, ideally within latex?


This is the full output of the validator:

<?xml version="1.0" encoding="utf-8"?>
<report>
  <buildInformation>
    <releaseDetails id="core" version="1.10.2" buildDate="2017-11-30T12:47:00+01:00"></releaseDetails>
    <releaseDetails id="validation-model" version="1.10.5" buildDate="2017-12-28T11:51:00+01:00"></releaseDetails>
    <releaseDetails id="gui" version="1.10.6" buildDate="2017-12-28T11:58:00+01:00"></releaseDetails>
  </buildInformation>
  <jobs>
    <job>
      <item size="40467">
        <name>/home/.../minimal-example.pdf</name>
      </item>
      <validationReport profileName="PDF/A-2U validation profile" statement="PDF file is not compliant with Validation Profile requirements." isCompliant="false">
        <details passedRules="119" failedRules="1" passedChecks="615" failedChecks="1">
          <rule specification="ISO 19005-2:2011" clause="6.2.11.4" testNumber="1" status="failed" passedChecks="0" failedChecks="1">
            <description>The font programs for all fonts used for rendering within a conforming file shall be embedded within that file, as defined in ISO 32000-1:2008, 9.9.</description>
            <object>PDFont</object>
            <test>Subtype == "Type3" || Subtype == "Type0" || renderingMode == 3 || fontFile_size == 1</test>
            <check status="failed">
              <context>root/document[0]/pages[0](5 0 obj PDPage)/contentStream[0](7 0 obj PDContentStream)/operators[9]/font[0](YGPAOD+LMRoman12-Regular)</context>
            </check>
          </rule>
        </details>
      </validationReport>
      <duration start="1523967257917" finish="1523967258155">00:00:00.238</duration>
    </job>
  </jobs>
  <batchSummary totalJobs="1" failedToParse="0" encrypted="0">
    <validationReports compliant="0" nonCompliant="1" failedJobs="0">1</validationReports>
    <featureReports failedJobs="0">0</featureReports>
    <repairReports failedJobs="0">0</repairReports>
    <duration start="1523967257908" finish="1523967258159">00:00:00.251</duration>
  </batchSummary>
</report>
1

1 Answer 1

5

This has been fixed in veraPDF V1.11.19, see https://github.com/veraPDF/veraPDF-library/issues/957.

I confirm this has been an issue in PostScript font parser in the 1.10.6 release. It has been fixed in dev. Please check the latest dev version: http://software.verapdf.org/develop/1.11/verapdf-greenfield-1.11.19-installer.zip

You must log in to answer this question.

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