From 6c48c0eddda66705bab3f457ae5edd01ffdeed76 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Wed, 12 Aug 2020 21:15:22 +0000 Subject: asmeconf (12aug20) git-svn-id: svn://tug.org/texlive/trunk@56096 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/tex/latex/asmeconf/asmeconf.cls | 76 ++++++++++++++++++++--- 1 file changed, 66 insertions(+), 10 deletions(-) (limited to 'Master/texmf-dist/tex/latex/asmeconf') diff --git a/Master/texmf-dist/tex/latex/asmeconf/asmeconf.cls b/Master/texmf-dist/tex/latex/asmeconf/asmeconf.cls index be225271d9c..b1f0ec6b349 100644 --- a/Master/texmf-dist/tex/latex/asmeconf/asmeconf.cls +++ b/Master/texmf-dist/tex/latex/asmeconf/asmeconf.cls @@ -5,9 +5,9 @@ %% %% Please note that ASME's journals follow specifications different from ASME conference papers. %% -%% This file is version 1.18 dated 2020/04/14. - \def\versionno{1.18} - \def\versiondate{2020/04/14\space} +%% This file is version 1.19 dated 2020/08/12. + \def\versionno{1.19} + \def\versiondate{2020/08/12\space} %% %% Author: John H. Lienhard V %% Department of Mechanical Engineering @@ -22,6 +22,7 @@ %% 4. Use the newtxtext and newtxmath font packages, including relevant features %% 5. Provide automatic layout of author names and addresses %% 6. Support bold face, sans serif math in headings +%% 7. Support the archival PDF/A standards 1b, 2b, 2u, 3b, and 3u %% %% This class is compatible with either pdfLaTeX or LuaLaTeX. The class uses a number of packages, %% many of which are part of the standard LaTeX distribution, and all of which are in TeXLive and @@ -33,7 +34,7 @@ %% This class is not designed for unicode-math or fontspec, given that the ASME conference style is %% specific with respect to the font selections. %% -%% Options for the class are configured on lines 79-169. +%% Options for the class are configured on lines 79-210. %% %% The class defines two environments: abstract and nomenclature. The latter has an optional argument to %% control the space between the entries and the definitions. @@ -78,6 +79,7 @@ %%%%%%%%%%%%%% Options for the class %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \RequirePackage{ifthen} +\RequirePackage{iftex} % check whether pdftex or another engine is used \newboolean{DefaultSups} \setboolean{DefaultSups}{true} \newboolean{Oldauthors} @@ -86,13 +88,18 @@ \setboolean{Balance}{false} \newboolean{lineno} \setboolean{lineno}{false} - +\newboolean{setpdfa} +\setboolean{setpdfa}{false} +\newboolean{pdfaone} +\setboolean{pdfaone}{false} \RequirePackage{kvoptions} %\RequirePackage{kvsetkeys} % already loaded by kvoptions \SetupKeyvalOptions{ family=asmeconf, prefix=asmeconf@, + family=pdfaopt, + prefix=pdafopt@, setkeys=\kvsetkeys, } @@ -137,7 +144,31 @@ \PassOptionsToPackage{#1}{babel}% } -\ProcessKeyvalOptions* +\ProcessKeyvalOptions{asmeconf} + + +\ifpdftex %% PDF/A compliance has only been configured for pdflatex +% +%%% set key [pdfa] to activate pdf/a compliance (default is pdf/A-3u) + \define@key{pdfaopt}{pdf-a}[true]{% + \setboolean{setpdfa}{#1}% + \PassOptionsToPackage{pdfa,pdfapart=3,pdfaconformance=u}{hyperref}% +} +%%% to select part 1, 2 or 3 + \define@key{pdfaopt}{pdfapart}[3]{% + \PassOptionsToPackage{pdfapart=#1}{hyperref}% + \ifthenelse{\equal{#1}{1}}{\setboolean{pdfaone}{true}}{\relax}% +} +%% to select conformance b or u. NB: a is not possible with pdfLaTeX, and u is not possible with 1. + \define@key{pdfaopt}{pdfaconformance}[u]{% + \PassOptionsToPackage{pdfaconformance=#1}{hyperref}% +} + \ProcessKeyvalOptions{pdfaopt} +\else + \ClassWarningNoLine{asmejour}{PDF/A compliance option requires pdfLaTeX engine}% +\fi + +%%%%%%%%%%%%%%%%%%% %% option to have colored hyperlinks \DeclareOption{colorlinks}{% @@ -204,9 +235,11 @@ \RequirePackage[T1]{fontenc} -\RequirePackage{iftex} % check whether pdfTeX or a different engine is used \ifpdftex - \pdfminorversion=7 % This selection is not required. + \ifthenelse{\boolean{pdfaone}}{ + \pdfminorversion=4}{% for pdf/a-1 need version 4, not 7 + \pdfminorversion=7 % this selection is not really required. + } \RequirePackage[utf8]{inputenc} % for backward compatibility with pre-2018 distributions \else \relax @@ -343,7 +376,30 @@ \titleformat{\section}{\mathversion{sansbold}\bfseries\sffamily\raggedright}{\MakeTextUppercase{\appendixname}\ \thesection.}{0.5em}{\MakeTextUppercase} } -%%%%%%%%%%%%% hyperref %%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%% Hyperref %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\ifthenelse{\boolean{setpdfa}}{% +% + %%% to assist with unicode glyph mapping, following M. Sharpe's recommendation in newtx documentation. + \pdfgentounicode=1 %% enable CMaps + \input glyphtounicode.tex %% lists of mappings + \InputIfFileExists{glyphtounicode-cmr.tex}{}{} %% additional mappings + \InputIfFileExists{glyphtounicode-ntx.tex}{}{} %% additional mappings +% +%%% a fairly generic RGB color profile, aimed at on-screen rendering (not print production) +\immediate\pdfobj stream attr{/N 3} file{sRGB.icc} +\pdfcatalog{% + /OutputIntents [ + << + /Type /OutputIntent + /S /GTS_PDFA1 + /DestOutputProfile \the\pdflastobj\space 0 R + /OutputConditionIdentifier (sRGB) + /Info (sRGB) + >> + ] +}% +}{\relax} \RequirePackage{hyperxmp} %% to fix transfer of metadata to Acrobat pdf @@ -363,7 +419,7 @@ pdftitle={}, % <=== add in .tex file pdfkeywords={}, % <=== add in .tex file pdfnewwindow=true,% - pdfpagelayout=TwoPageRight,% + pdfpagelayout=SinglePage, %TwoPageRight,% changed this 12/08/2020 pdfauthor={}, % <=== add in .tex file pdfdisplaydoctitle=true% ]{hyperref} -- cgit v1.2.3