aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHenri Menke <henri@icp.uni-stuttgart.de>2018-03-18 17:05:55 +1300
committerJohn MacFarlane <jgm@berkeley.edu>2018-03-17 21:05:55 -0700
commit46f4238a2a40b5542612bc745e63ce503ce12a32 (patch)
tree97cee60621fe034ea09b284ea4a7de12e1806827
parent155a2ac0391e8b800d8d2ff0fb3ebe5e049ca278 (diff)
downloadpandoc-46f4238a2a40b5542612bc745e63ce503ce12a32.tar.gz
ConTeXt template: pdfa variable to generate PDF/A (#4294)
The resulting PDF can be verified using the Apache PDFBox preflight app. ``` $ java -jar preflight-app-2.0.8.jar test.pdf The file test.pdf is a valid PDF/A-1b file ``` Instructions on how to install the ICC profiles on ConTeXt standalone can be found in the wiki: <http://wiki.contextgarden.net/PDFX#ICC_profiles>. If the ICC profiles are not available the log will contain messages like these ``` backend > profiles > profile specification 'sRGB.icc' loaded from '/usr/local/texlive/2017/texmf-dist/tex/context/colors/icc/context/colorprofiles.xml' backend > profiles > error, couldn't locate profile 'srgb.icc' backend > profiles > no default profile 'srgb.icc' for colorspace 'rgb' backend > profiles > profile specification 'sRGB IEC61966-2.1' loaded from '/usr/local/texlive/2017/texmf-dist/tex/context/colors/icc/context/colorprofiles.xml' backend > profiles > error, couldn't locate profile 'srgb.icc' backend > profiles > invalid output intent 'sRGB IEC61966-2.1' ``` and the resulting PDF will not be valid PDF/A: ``` $ java -jar preflight-app-2.0.8.jar test.pdf The file test.pdf is not a valid PDF/A-1b file, error(s) : 2.4.3 : Invalid Color space, The operator "g" can't be used without Color Profile on page 1 2.4.3 : Invalid Color space, The operator "G" can't be used without Color Profile on page 1 2.4.3 : Invalid Color space, /DeviceGray default for operator "TJ" can't be used without Color Profile on page 1 2.4.3 : Invalid Color space, /DeviceGray default for operator "TJ" can't be used without Color Profile on page 1 2.4.3 : Invalid Color space, The operator "g" can't be used without Color Profile on page 1 2.4.3 : Invalid Color space, The operator "G" can't be used without Color Profile on page 1 2.4.3 : Invalid Color space, /DeviceGray default for operator "TJ" can't be used without Color Profile on page 1 ``` However, the PDF will still be generated and the "errors" shown in the log do not break anything.
-rw-r--r--MANUAL.txt10
-rw-r--r--data/templates/default.context7
2 files changed, 17 insertions, 0 deletions
diff --git a/MANUAL.txt b/MANUAL.txt
index 8960d9bc3..cdfdcda2c 100644
--- a/MANUAL.txt
+++ b/MANUAL.txt
@@ -1624,12 +1624,22 @@ Variables for ConTeXt
`lof`, `lot`
: include list of figures, list of tables
+`pdfa`
+: adds to the preamble the setup necessary to generate PDF/A-1b:2005.
+ To successfully generate PDF/A the required ICC color profiles have to
+ be available and the content and all included files (such as images)
+ have to be standard conforming. The ICC profiles can be obtained
+ from [ConTeXt ICC Profiles]. See also [ConTeXt PDFA] for more
+ details.
+
[ConTeXt Paper Setup]: http://wiki.contextgarden.net/PaperSetup
[ConTeXt Layout]: http://wiki.contextgarden.net/Layout
[ConTeXt Font Switching]: http://wiki.contextgarden.net/Font_Switching
[ConTeXt Color]: http://wiki.contextgarden.net/Color
[ConTeXt Headers and Footers]: http://wiki.contextgarden.net/Headers_and_Footers
[ConTeXt Indentation]: http://wiki.contextgarden.net/Indentation
+[ConTeXt ICC Profiles]: http://wiki.contextgarden.net/PDFX#ICC_profiles
+[ConTeXt PDFA]: http://wiki.contextgarden.net/PDF/A
[`setupwhitespace`]: http://wiki.contextgarden.net/Command/setupwhitespace
[`setupinterlinespace`]: http://wiki.contextgarden.net/Command/setupinterlinespace
[`setuppagenumbering`]: http://wiki.contextgarden.net/Command/setuppagenumbering
diff --git a/data/templates/default.context b/data/templates/default.context
index 56f4e9cf7..039b6cdaf 100644
--- a/data/templates/default.context
+++ b/data/templates/default.context
@@ -38,6 +38,13 @@ $endif$
$if(pagenumbering)$
\setuppagenumbering[$for(pagenumbering)$$pagenumbering$$sep$,$endfor$]
$endif$
+$if(pdfa)$
+% attempt to generate PDF/A
+\setupbackend
+ [format=PDF/A-1b:2005,
+ intent=sRGB IEC61966-2.1,
+ profile=sRGB.icc]
+$endif$
% use microtypography
\definefontfeature[default][default][script=latn, protrusion=quality, expansion=quality, itlc=yes, textitalics=yes, onum=yes, pnum=yes]