From 0ecf5cacb77a8ffb9204f7532bf5d93b44fe5e29 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Thu, 17 May 2018 20:25:12 +0000 Subject: gentombow (17may18) git-svn-id: svn://tug.org/texlive/trunk@47738 c570f23f-e606-0410-a88d-b1316a301751 --- .../texmf-dist/tex/latex/gentombow/gentombow.sty | 640 +++++++++++++++++++-- .../texmf-dist/tex/latex/gentombow/pxgentombow.sty | 329 +---------- 2 files changed, 588 insertions(+), 381 deletions(-) (limited to 'Master/texmf-dist/tex/latex/gentombow') diff --git a/Master/texmf-dist/tex/latex/gentombow/gentombow.sty b/Master/texmf-dist/tex/latex/gentombow/gentombow.sty index 61bccca4987..c8fe79d0849 100644 --- a/Master/texmf-dist/tex/latex/gentombow/gentombow.sty +++ b/Master/texmf-dist/tex/latex/gentombow/gentombow.sty @@ -8,69 +8,114 @@ \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{gentombow} - [2018/03/16 v0.9e Generate crop mark 'tombow'] -\def\pxgtmb@emu@pkgname{gentombow} + [2018/05/17 v0.9g Generate crop mark 'tombow'] +\def\pxgtmb@pkgname{gentombow} +\@namedef{ver@pxgentombow.sty}{}% fake -%% error status (shared with pxgentombow.sty) -\ifx\pxgtmb@errlevel\@undefined - \chardef\pxgtmb@errlevel=\z@ -\fi +%% error status +\chardef\pxgtmb@errlevel=\z@ %% supported engines +% case 2: pdfLaTeX etc. +% case 1: pLaTeX2e <2018-04-01>+2 or older +% case 0: newer pLaTeX2e \ifx\pfmtversion\@undefined - \@ifpackageloaded{luatexja}{}{\chardef\pxgtmb@errlevel=\@ne} + \@ifpackageloaded{luatexja}{}{\chardef\pxgtmb@errlevel=\tw@} +\fi +\ifnum\pxgtmb@errlevel<\tw@ + \ifx\@tombowreset@@paper\@undefined + \chardef\pxgtmb@errlevel=\@ne + \fi \fi -\ifnum\pxgtmb@errlevel>\z@\else - \PackageInfo{\pxgtmb@emu@pkgname}{% - pLaTeX, upLaTeX and LuaTeX-ja are natively\MessageBreak - supported by `pxgentombow' package;\MessageBreak - there is no need for this package.} - \RequirePackageWithOptions{pxgentombow} +\ifcase\pxgtmb@errlevel + \let\pxgtmb@sel@twoone\@gobble + \let\pxgtmb@sel@two@one\@gobbletwo + \let\pxgtmb@sel@two\@gobble +\or + \let\pxgtmb@sel@twoone\@firstofone + \let\pxgtmb@sel@two@one\@secondoftwo + \let\pxgtmb@sel@two\@gobble +\or + \let\pxgtmb@sel@twoone\@firstofone + \let\pxgtmb@sel@two@one\@firstoftwo + \let\pxgtmb@sel@two\@firstofone +\else + \PackageError{\pxgtmb@pkgname}{% + This cannot happen! + Please report to package author}\@ehc \expandafter\endinput \fi +\@onlypreamble\pxgtmb@sel@twoone +\@onlypreamble\pxgtmb@sel@two@one +\@onlypreamble\pxgtmb@sel@two %%%%% EMULATION BEGIN % required for patching \@outputpage -\RequirePackage{etoolbox} +\pxgtmb@sel@twoone{\RequirePackage{etoolbox}} % patch \@outputpage \begingroup \def\pxgtmb@emu@status{0} \let\pxgtmb@emu@outputpage\@outputpage -\patchcmd\pxgtmb@emu@outputpage % try first patch +\pxgtmb@sel@two@one +{%% case 2 begin + \patchcmd\pxgtmb@emu@outputpage % try first patch {\reset@font\normalsize\normalsfcodes}% - {% - \@@topmargin\topmargin - \iftombow - \@@paperwidth\paperwidth \advance\@@paperwidth 6mm\relax - \@@paperheight\paperheight \advance\@@paperheight 16mm\relax - \advance\@@topmargin 1in\relax \advance\@themargin 1in\relax - \fi - \reset@font\normalsize\normalsfcodes} + {\@tombowreset@@paper + \reset@font\normalsize\normalsfcodes}% {}{\def\pxgtmb@emu@status{1}} -\patchcmd\pxgtmb@emu@outputpage % try second patch + \patchcmd\pxgtmb@emu@outputpage % try second patch {\@begindvi \vskip \topmargin}% {\@begindvi \@outputtombow \vskip \@@topmargin}% {}{\def\pxgtmb@emu@status{1}} +}%% case 2 end +{%% case 1 begin + \patchcmd\pxgtmb@emu@outputpage % try patch + {% + \@@topmargin\topmargin + \iftombow + \@@paperwidth\paperwidth \advance\@@paperwidth 6mm\relax + \@@paperheight\paperheight \advance\@@paperheight 16mm\relax + \advance\@@topmargin 1in\relax \advance\@themargin 1in\relax + \fi + \reset@font\normalsize\normalsfcodes} + {\@tombowreset@@paper + \reset@font\normalsize\normalsfcodes}% + {}{\def\pxgtmb@emu@status{1}} +}%% case 1 end % commit the change only when successful; otherwise % tombow feature is never enabled, exit right away -\if 0\pxgtmb@emu@status\relax +\pxgtmb@sel@twoone +{%% case 2 and 1 begin + \if 0\pxgtmb@emu@status\relax \global\let\@outputpage\pxgtmb@emu@outputpage -\else - \PackageError{\pxgtmb@emu@pkgname}{% + \else + \PackageError{\pxgtmb@pkgname}{% Failed in patching \string\@outputpage!\MessageBreak Sorry, I can't proceed anymore...}\@ehc \expandafter\expandafter\expandafter\endinput\expandafter -\fi + \fi +}%% case 2 and 1 end \endgroup % % provides equivalent for plcore.ltx +\pxgtmb@sel@two +{%% case 2 begin \newif\iftombow \tombowfalse \newif\iftombowdate \tombowdatetrue \newdimen\@tombowwidth \setlength{\@tombowwidth}{.1\p@} +}%% case 2 end +\pxgtmb@sel@twoone +{%% case 2 and 1 begin +\setlength{\@tombowwidth}{.1\p@} +\def\@tombowbleed{3mm} +\def\@tombowcolor{\normalcolor} +}%% case 2 and 1 end +\pxgtmb@sel@two +{%% case 2 begin \newbox\@TL\newbox\@Tl \newbox\@TC \newbox\@TR\newbox\@Tr @@ -82,56 +127,61 @@ \font\@bannerfont=cmtt9 \newtoks\@bannertoken \@bannertoken{} -\def\maketombowbox{% removed \yoko from all boxes - \setbox\@TL\hbox to\z@{\hss - \vrule width13mm height\@tombowwidth depth\z@ +}%% case 2 end +\pxgtmb@sel@twoone +{%% case 2 and 1 begin +\def\maketombowbox{% hide \yoko from all boxes + \setbox\@TL\hbox to\z@{\csname yoko\endcsname\hss + \vrule width\dimexpr 10mm+\@tombowbleed\relax height\@tombowwidth depth\z@ \vrule height10mm width\@tombowwidth depth\z@ \iftombowdate \raise4pt\hbox to\z@{\hskip5mm\@bannerfont\the\@bannertoken\hss}% \fi}% - \setbox\@Tl\hbox to\z@{\hss + \setbox\@Tl\hbox to\z@{\csname yoko\endcsname\hss \vrule width10mm height\@tombowwidth depth\z@ - \vrule height13mm width\@tombowwidth depth\z@}% - \setbox\@TC\hbox{% + \vrule height\dimexpr 10mm+\@tombowbleed\relax width\@tombowwidth depth\z@}% + \setbox\@TC\hbox{\csname yoko\endcsname \vrule width10mm height\@tombowwidth depth\z@ \vrule height10mm width\@tombowwidth depth\z@ \vrule width10mm height\@tombowwidth depth\z@}% - \setbox\@TR\hbox to\z@{% + \setbox\@TR\hbox to\z@{\csname yoko\endcsname \vrule height10mm width\@tombowwidth depth\z@ - \vrule width13mm height\@tombowwidth depth\z@\hss}% - \setbox\@Tr\hbox to\z@{% - \vrule height13mm width\@tombowwidth depth\z@ + \vrule width\dimexpr 10mm+\@tombowbleed\relax height\@tombowwidth depth\z@\hss}% + \setbox\@Tr\hbox to\z@{\csname yoko\endcsname + \vrule height\dimexpr 10mm+\@tombowbleed\relax width\@tombowwidth depth\z@ \vrule width10mm height\@tombowwidth depth\z@\hss}% - \setbox\@BL\hbox to\z@{\hss - \vrule width13mm depth\@tombowwidth height\z@ + \setbox\@BL\hbox to\z@{\csname yoko\endcsname\hss + \vrule width\dimexpr 10mm+\@tombowbleed\relax depth\@tombowwidth height\z@ \vrule depth10mm width\@tombowwidth height\z@}% - \setbox\@Bl\hbox to\z@{\hss + \setbox\@Bl\hbox to\z@{\csname yoko\endcsname\hss \vrule width10mm depth\@tombowwidth height\z@ - \vrule depth13mm width\@tombowwidth height\z@}% - \setbox\@BC\hbox{% + \vrule depth\dimexpr 10mm+\@tombowbleed\relax width\@tombowwidth height\z@}% + \setbox\@BC\hbox{\csname yoko\endcsname \vrule width10mm depth\@tombowwidth height\z@ \vrule depth10mm width\@tombowwidth height\z@ \vrule width10mm depth\@tombowwidth height\z@}% - \setbox\@BR\hbox to\z@{% + \setbox\@BR\hbox to\z@{\csname yoko\endcsname \vrule depth10mm width\@tombowwidth height\z@ - \vrule width13mm depth\@tombowwidth height\z@\hss}% - \setbox\@Br\hbox to\z@{% - \vrule depth13mm width\@tombowwidth height\z@ + \vrule width\dimexpr 10mm+\@tombowbleed\relax depth\@tombowwidth height\z@\hss}% + \setbox\@Br\hbox to\z@{\csname yoko\endcsname + \vrule depth\dimexpr 10mm+\@tombowbleed\relax width\@tombowwidth height\z@ \vrule width10mm depth\@tombowwidth height\z@\hss}% - \setbox\@CL\hbox to\z@{\hss + \setbox\@CL\hbox to\z@{\csname yoko\endcsname\hss \vrule width10mm height.5\@tombowwidth depth.5\@tombowwidth \vrule height10mm depth10mm width\@tombowwidth}% - \setbox\@CR\hbox to\z@{% + \setbox\@CR\hbox to\z@{\csname yoko\endcsname \vrule height10mm depth10mm width\@tombowwidth \vrule height.5\@tombowwidth depth.5\@tombowwidth width10mm\hss}% } \def\@outputtombow{% \iftombow - \vbox to\z@{\kern-13mm\relax + \vbox to\z@{\kern-\dimexpr 10mm+\@tombowbleed\relax\relax \boxmaxdepth\maxdimen - \moveleft3mm\vbox to\@@paperheight{% - \hbox to\@@paperwidth{\hskip3mm\relax - \copy\@TL\hfill\copy\@TC\hfill\copy\@TR\hskip3mm}% + \moveleft\@tombowbleed \vbox to\@@paperheight{% + \color@begingroup + \@tombowcolor + \hbox to\@@paperwidth{\hskip\@tombowbleed\relax + \copy\@TL\hfill\copy\@TC\hfill\copy\@TR\hskip\@tombowbleed}% \kern-10mm \hbox to\@@paperwidth{\copy\@Tl\hfill\copy\@Tr}% \vfill @@ -139,21 +189,497 @@ \vfill \hbox to\@@paperwidth{\copy\@Bl\hfill\copy\@Br}% \kern-10mm - \hbox to\@@paperwidth{\hskip3mm\relax - \copy\@BL\hfill\copy\@BC\hfill\copy\@BR\hskip3mm}% + \hbox to\@@paperwidth{\hskip\@tombowbleed\relax + \copy\@BL\hfill\copy\@BC\hfill\copy\@BR\hskip\@tombowbleed}% + \color@endgroup }\vss }% \fi } +}%% case 2 and 1 end +\pxgtmb@sel@two +{%% case 2 begin \newdimen\@@paperheight \newdimen\@@paperwidth \newdimen\@@topmargin +}%% case 2 end +\pxgtmb@sel@twoone +{%% case 2 and 1 begin +\def\@tombowreset@@paper{% + \@@topmargin\topmargin + \iftombow + \@@paperwidth\paperwidth + \advance\@@paperwidth 2\dimexpr\@tombowbleed\relax + \@@paperheight\paperheight \advance\@@paperheight 10mm\relax + \advance\@@paperheight 2\dimexpr\@tombowbleed\relax + \advance\@@topmargin 1in\relax \advance\@themargin 1in\relax + \fi +} +}%% case 2 and 1 end +\pxgtmb@sel@two +{%% case 2 begin \newcount\hour \newcount\minute +}%% case 2 end %%%%% EMULATION END -%% load it -\RequirePackageWithOptions{pxgentombow} +%% import from jsclasses +\hour\time \divide\hour by 60\relax +\@tempcnta\hour \multiply\@tempcnta 60\relax +\minute\time \advance\minute-\@tempcnta + +\ifnum\mag=\@m\else + % if BXjscls is detected and \mag != 1000, + % the layout will be definitely broken + \ifx\bxjs@param@mag\@undefined\else + \PackageError{\pxgtmb@pkgname}{% + It seems you are using Japanese `BXjscls'\MessageBreak + (bxjsarticle, bxjsbook, bxjsreport, etc.) or\MessageBreak + some derived class. Try adding `nomag' or\MessageBreak + `nomag*' to the class option list}\@ehc + \fi +\fi + +%% this package will use tombo feature in pLaTeX kernel +% if tombow-related option is not included in class option list, +% show info and enable it now +\iftombow\else + % if jsclasses is detected and \mag != 1000, it's too late + % -- When a size option other than `10pt' is specified, + % jsclasses uses \mag and calculates \oddsidemargin and \topmargin + % differently, depending on tombow status. + % In order to force `jsclasses' to calculate correctly, + % `tombow' or `tombo' is required as a class option. + % ... or, you may add `nomag' or `nomag*' instead. + \ifnum\mag=\@m\else \ifx\inv@mag\@undefined\else + \PackageError{\pxgtmb@pkgname}{% + It seems you are using Japanese `jsclasses'\MessageBreak + (jsarticle, jsbook, jsreport, etc.) or some\MessageBreak + derived class. Please add `tombow' or `tombo'\MessageBreak + to the class option list}\@ehc + \fi \fi + % BXjscls is already checked above, no check here + \PackageInfo\pxgtmb@pkgname{tombow feature enabled by \pxgtmb@pkgname} +\fi +\tombowtrue %\tombowdatetrue %% enabled by tombowbanner option +\setlength{\@tombowwidth}{.1\p@}% + +%% import from jsclasses +\@bannertoken{% + \jobname\space(\number\year-\two@digits\month-\two@digits\day + \space\two@digits\hour:\two@digits\minute)} + +%% prepare dimension +\ifx\stockheight\@undefined \newdimen\stockheight \fi +\ifx\stockwidth\@undefined \newdimen\stockwidth \fi + +%% prepare flag +\newif\ifpxgtmb@switch \pxgtmb@switchfalse +\newif\ifpxgtmb@landscape \pxgtmb@landscapefalse + +%% passed from class options +%% should be declared first inside this package (least priority) +\DeclareOption{tombow}{\tombowdatetrue} +\DeclareOption{tombo}{\tombowdatefalse} +\DeclareOption{mentuke}{\tombowdatefalse \setlength{\@tombowwidth}{\z@}} + +%% package options part 1 +\DeclareOption{tombowbanner}{\tombowdatetrue} +\DeclareOption{notombowbanner}{\tombowdatefalse} +\DeclareOption{tombowdate}{% obsolete since v0.9c (2018/01/11) + \PackageWarning{\pxgtmb@pkgname}{% + Option `tombowdate' is renamed;\MessageBreak + use `tombowbanner' instead}% + \tombowdatetrue} +\DeclareOption{notombowdate}{% obsolete since v0.9c (2018/01/11) + \PackageWarning{\pxgtmb@pkgname}{% + Option `notombowdate' is renamed;\MessageBreak + use `notombowbanner' instead}% + \tombowdatefalse} + +%% register a list of candidate papersize +% * \pxgtmb@addpapersize[]{}{}{} +% used for declaration of papersize. +% when no option is specified (that is, \ifpxgtmb@switch = \iffalse), +% also used for automatic stocksize determination. +% * if = \@empty, the next is assumed. +% * if = n, stocksize is set to papersize + 2in. +\def\pxgtmb@addpapersize{\@ifnextchar[{\pxgtmb@addp@persize}{\pxgtmb@addp@persize[\@empty]}} +\def\pxgtmb@addp@persize[#1]#2#3#4{% + % get current papersize and search through known standard in ascending order + \ifx\pxgtmb@guessedtombow\@empty + \ifx\pxgtmb@guessedpaper\@empty + % shorter edge -> \@tempdima, longer edge -> \@tempdimb + \ifdim\paperwidth>\paperheight\relax + \pxgtmb@landscapetrue + \@tempdima\paperheight \@tempdimb\paperwidth + \else + \pxgtmb@landscapefalse + \@tempdima\paperwidth \@tempdimb\paperheight + \fi + % \@ovri and \@ovro are used temporarily (safe enough) + \@ovri=#3\relax + \@ovro=#4\relax + % if \mag != 1000 and \inv@mag is defined, assume jsclasses-style \mag employment + \ifnum\mag=\@m\else \ifx\inv@mag\@undefined\else + \@ovri=\inv@mag\@ovri\relax + \@ovro=\inv@mag\@ovro\relax + \fi \fi + % compare + \ifdim\@tempdima=\@ovri\relax \ifdim\@tempdimb=\@ovro\relax + \def\pxgtmb@guessedpaper{#2}% + \ifx#1\@empty\else + \def\pxgtmb@guessedtombow{#1}% + \if n\pxgtmb@guessedtombow\else + \ExecuteOptions{tombow-#1}% package defaults to tombowdatetrue + \pxgtmb@switchfalse + \fi + \fi + \fi \fi + \else + \def\pxgtmb@guessedtombow{#2}% save for console message + \pxgtmb@setstock{#3}{#4}% set stockwidth/height + \fi\fi + \DeclareOption{tombow-#2}{% + \pxgtmb@switchtrue + \tombowdatetrue + \pxgtmb@setstock{#3}{#4}% + }% + \DeclareOption{tombo-#2}{% + \pxgtmb@switchtrue + \tombowdatefalse + \pxgtmb@setstock{#3}{#4}% + }% + \DeclareOption{mentuke-#2}{% + \pxgtmb@switchtrue + \tombowdatefalse + \setlength{\@tombowwidth}{\z@}% + \pxgtmb@setstock{#3}{#4}% + }% +} +\def\pxgtmb@setstock#1#2{% + \ifpxgtmb@landscape + \setlength\stockwidth{#2}% + \setlength\stockheight{#1}% + \else + \setlength\stockwidth{#1}% + \setlength\stockheight{#2}% + \fi + % if \mag != 1000 and \inv@mag is defined, assume jsclasses-style \mag employment + \ifnum\mag=\@m\else \ifx\inv@mag\@undefined\else + \stockwidth=\inv@mag\stockwidth\relax + \stockheight=\inv@mag\stockheight\relax + \fi \fi +}% +\@onlypreamble\pxgtmb@addpapersize +\@onlypreamble\pxgtmb@addp@persize +\@onlypreamble\pxgtmb@setstock + +%% initialize before search +\def\pxgtmb@guessedpaper{} +\def\pxgtmb@guessedtombow{} +\@onlypreamble\pxgtmb@guessedpaper +\@onlypreamble\pxgtmb@guessedtombow + +%% package options part 2 +% ISO A series <=> JIS B series in the ascending order +\pxgtmb@addpapersize{a10}{26mm}{37mm} +\pxgtmb@addpapersize{b10}{32mm}{45mm} +\pxgtmb@addpapersize{a9}{37mm}{52mm} +\pxgtmb@addpapersize{b9}{45mm}{64mm} +\pxgtmb@addpapersize{a8}{52mm}{74mm} +\pxgtmb@addpapersize{b8}{64mm}{91mm} +\pxgtmb@addpapersize{a7}{74mm}{105mm} +\pxgtmb@addpapersize{b7}{91mm}{128mm} +\pxgtmb@addpapersize{a6}{105mm}{148mm} +\pxgtmb@addpapersize{b6}{128mm}{182mm} +\pxgtmb@addpapersize{a5}{148mm}{210mm} +\pxgtmb@addpapersize{b5}{182mm}{257mm} +\pxgtmb@addpapersize{a4}{210mm}{297mm} +\pxgtmb@addpapersize{b4}{257mm}{364mm} +\pxgtmb@addpapersize{a3}{297mm}{420mm} +\pxgtmb@addpapersize{b3}{364mm}{515mm} +\pxgtmb@addpapersize{a2}{420mm}{594mm} +\pxgtmb@addpapersize{b2}{515mm}{728mm} +\pxgtmb@addpapersize{a1}{594mm}{841mm} +\pxgtmb@addpapersize{b1}{728mm}{1030mm} +\pxgtmb@addpapersize[n]{a0}{841mm}{1189mm} +\pxgtmb@addpapersize[n]{b0}{1030mm}{1456mm} + +%% package options part 3 +% ISO C series +\pxgtmb@addpapersize[a9]{c10}{28mm}{40mm} +\pxgtmb@addpapersize[a8]{c9}{40mm}{57mm} +\pxgtmb@addpapersize[a7]{c8}{57mm}{81mm} +\pxgtmb@addpapersize[a6]{c7}{81mm}{114mm} +\pxgtmb@addpapersize[a5]{c6}{114mm}{162mm} +\pxgtmb@addpapersize[a4]{c5}{162mm}{229mm} +\pxgtmb@addpapersize[a3]{c4}{229mm}{354mm} +\pxgtmb@addpapersize[a2]{c3}{324mm}{458mm} +\pxgtmb@addpapersize[a1]{c2}{458mm}{648mm} +\pxgtmb@addpapersize[a0]{c1}{648mm}{917mm} +\pxgtmb@addpapersize[n]{c0}{917mm}{1297mm} +% misc +\pxgtmb@addpapersize[b4]{a4j}{210mm}{297mm} +\pxgtmb@addpapersize[b5]{a5j}{148mm}{210mm} +\pxgtmb@addpapersize[a3]{b4j}{257mm}{364mm} +\pxgtmb@addpapersize[a4]{b5j}{182mm}{257mm} +\pxgtmb@addpapersize[b4]{a4var}{210mm}{283mm} +\pxgtmb@addpapersize[a4]{b5var}{182mm}{230mm} +\pxgtmb@addpapersize[a3]{letter}{8.5in}{11in} +\pxgtmb@addpapersize[a3]{legal}{8.5in}{14in} +\pxgtmb@addpapersize[a4]{executive}{7.25in}{10.5in} + +%% package options part 4 +\def\pxgtmb@pdfbox@status{0} +\DeclareOption{pdfbox}{\def\pxgtmb@pdfbox@status{1}} +\DeclareOption{dvips}{\def\pxgtmb@driver{s}} +\DeclareOption{dvipdfmx}{\def\pxgtmb@driver{m}} +\DeclareOption{xetex}{\def\pxgtmb@driver{x}} +\DeclareOption{pdftex}{\def\pxgtmb@driver{p}} +\DeclareOption{luatex}{\def\pxgtmb@driver{l}} + +%% default options +\ExecuteOptions{tombowbanner}% package defaults to tombowdatetrue +\ProcessOptions + +%% display search result +% if any of explicit size option is specified, \ifpxgtmb@switch = \iftrue. +% otherwise, automatic size detection should be successful. +\ifpxgtmb@switch\else + % check status + \@tempcnta=\z@\relax + \ifx\pxgtmb@guessedpaper\@empty + \advance\@tempcnta\@ne\relax + \fi + \ifx\pxgtmb@guessedtombow\@empty + \advance\@tempcnta\tw@\relax + \else\if n\pxgtmb@guessedtombow + \advance\@tempcnta\tw@\relax + \fi\fi + % message + \ifodd\@tempcnta + %\PackageWarningNoLine\pxgtmb@pkgname{% + % No size option specified, and automatic papersize\MessageBreak + % detection also failed} + \else + \typeout{***** Package \pxgtmb@pkgname\space detected \pxgtmb@guessedpaper paper. *****} + \fi + \ifnum\@tempcnta>\@ne\relax + \PackageWarningNoLine\pxgtmb@pkgname{% + Output size cannot be determined. Please add size\MessageBreak + option (e.g. `tombow-a4') to specify output size.\MessageBreak + Falling back to +1in ..} + \stockwidth\paperwidth \advance\stockwidth 2in + \stockheight\paperheight \advance\stockheight 2in + \else + \typeout{***** Now the output size is automatically set to \pxgtmb@guessedtombow. *****} + \fi +\fi + +%% warnings +\ifdim\stockwidth<\paperwidth + \PackageWarningNoLine\pxgtmb@pkgname{% + \string\stockwidth\space is smaller than \string\paperwidth!\MessageBreak + Is this really what you want?} +\fi +\ifdim\stockheight<\paperheight + \PackageWarningNoLine\pxgtmb@pkgname{% + \string\stockheight\space is smaller than \string\paperheight!\MessageBreak + Is this really what you want?} +\fi + +%% make tombow box according to tombowdate & \@tombowwidth status +\maketombowbox + +%% shift amount +\hoffset .5\stockwidth +\advance\hoffset -.5\paperwidth +\advance\hoffset-1truein\relax +\voffset .5\stockheight +\advance\voffset -.5\paperheight +\advance\voffset-1truein\relax + +%% pdf "digital tombo" (driver-dependent) +\if 1\pxgtmb@pdfbox@status +\begingroup +\def\pxgtmb@PDF@setbp#1#2{% + \@tempdima=.996264#2\relax % 0.996264 = 72/72.27 (cf. 1in = 72.27pt = 72bp) + \edef#1{\strip@pt\@tempdima}} +%\pxgtmb@PDF@setbp\pxgtmb@PDF@crop@ur@x\stockwidth +%\pxgtmb@PDF@setbp\pxgtmb@PDF@crop@ur@y\stockheight +\pxgtmb@PDF@setbp\pxgtmb@PDF@trim@ll@x{\dimexpr(\stockwidth-\paperwidth)/2} +\pxgtmb@PDF@setbp\pxgtmb@PDF@trim@ll@y{\dimexpr(\stockheight-\paperheight)/2} +\pxgtmb@PDF@setbp\pxgtmb@PDF@trim@ur@x{\dimexpr(\stockwidth+\paperwidth)/2} +\pxgtmb@PDF@setbp\pxgtmb@PDF@trim@ur@y{\dimexpr(\stockheight+\paperheight)/2} +\pxgtmb@PDF@setbp\pxgtmb@PDF@bleed@ll@x{\dimexpr(\stockwidth-\paperwidth)/2-3mm} +\pxgtmb@PDF@setbp\pxgtmb@PDF@bleed@ll@y{\dimexpr(\stockheight-\paperheight)/2-3mm} +\pxgtmb@PDF@setbp\pxgtmb@PDF@bleed@ur@x{\dimexpr(\stockwidth+\paperwidth)/2+3mm} +\pxgtmb@PDF@setbp\pxgtmb@PDF@bleed@ur@y{\dimexpr(\stockheight+\paperheight)/2+3mm} +\xdef\pxgtmb@PDF@CTM{% + %% CropBox: implicit (same as MediaBox, large paper size) + %/CropBox [0 0 \pxgtmb@PDF@crop@ur@x\space \pxgtmb@PDF@crop@ur@y] + %% BleedBox: explicit (final paper size + surrounding 3mm) + \noexpand\pxgtmb@PDF@begin + /BleedBox [\pxgtmb@PDF@bleed@ll@x\space + \pxgtmb@PDF@bleed@ll@y\space + \pxgtmb@PDF@bleed@ur@x\space + \pxgtmb@PDF@bleed@ur@y] \noexpand\pxgtmb@PDF@end + %% TrimBox: explicit (final paper size) + \noexpand\pxgtmb@PDF@begin + /TrimBox [\pxgtmb@PDF@trim@ll@x\space + \pxgtmb@PDF@trim@ll@y\space + \pxgtmb@PDF@trim@ur@x\space + \pxgtmb@PDF@trim@ur@y] \noexpand\pxgtmb@PDF@end + %% ArtBox: implicit +} +\endgroup +%% supported drivers: dvips, dvipdfmx, XeTeX, pdfTeX, LuaTeX +\ifnum0\ifx\pdfvariable\@undefined\else\the\outputmode\fi=0\relax +\ifnum0\ifx\pdfpageattr\@undefined\else\the\pdfoutput\fi=0\relax + %% for DVI output or XeTeX + \ifx\XeTeXversion\@undefined + \chardef\pxgtmb@errlevel=\z@ + % check graphics/graphicx/color status + \ifx\Gin@driver\@undefined + \ifx\pxgtmb@driver\@undefined % driver option unavailable + \PackageError{\pxgtmb@pkgname}{% + Option `pdfbox' is driver-dependent!\MessageBreak + Please add a driver option}\@ehc + \def\pxgtmb@driver{s}% fallback + \fi + \else + % check consistency + \def\pxgtmb@tempa{dvips.def}\ifx\Gin@driver\pxgtmb@tempa + \ifx\pxgtmb@driver\@undefined + \def\pxgtmb@driver{s}% pass + \else + \if s\pxgtmb@driver\else \chardef\pxgtmb@errlevel=\@ne \fi + \fi + \else\def\pxgtmb@tempa{dvipdfmx.def}\ifx\Gin@driver\pxgtmb@tempa + \ifx\pxgtmb@driver\@undefined + \def\pxgtmb@driver{m}% pass + \else + \if m\pxgtmb@driver\else \chardef\pxgtmb@errlevel=\@ne \fi + \fi + \else + \ifx\pxgtmb@driver\@undefined + \PackageError{\pxgtmb@pkgname}{% + Option `pdfbox' is driver-dependent!\MessageBreak + Please add a driver option}\@ehc + \def\pxgtmb@driver{s}% fallback + \fi + \fi\fi + \ifnum\pxgtmb@errlevel>\z@ + \PackageWarningNoLine{\pxgtmb@pkgname}{% + Inconsistent driver option detected!\MessageBreak + Package `graphics' or `color' already\MessageBreak + loaded with different driver option}\@ehc + \fi + \fi + \else + \def\pxgtmb@driver{x} + \fi + % required for putting \special to every page + \ifx\pfmtname\@undefined + \RequirePackage{atbegshi} + \else + \IfFileExists{pxatbegshi.sty} + {\RequirePackage{pxatbegshi}} + {\RequirePackage{atbegshi}} + \fi + % do it + \if x\pxgtmb@driver + %% for XeTeX (similar to dvipdfmx, except for paper size) + \def\pxgtmb@PDF@begin{}\def\pxgtmb@PDF@end{} + \edef\pxgtmb@PDF@CTM{{pdf:put @thispage << \pxgtmb@PDF@CTM >>}} + % force paper size + \pdfpagewidth\stockwidth \pdfpageheight\stockheight + % emit pdf boxes + \AtBeginShipout{\setbox\AtBeginShipoutBox=\vbox{% + \baselineskip\z@skip\lineskip\z@skip\lineskiplimit\z@ + \expandafter\special\pxgtmb@PDF@CTM % here! + \copy\AtBeginShipoutBox}} + \else + \if s\pxgtmb@driver + %% for dvips + \def\pxgtmb@PDF@begin{[ }\def\pxgtmb@PDF@end{/PAGE pdfmark } + \edef\pxgtmb@PDF@CTM{{ps:SDict begin \pxgtmb@PDF@CTM end}} + \else\if m\pxgtmb@driver + %% for dvipdfmx + \def\pxgtmb@PDF@begin{}\def\pxgtmb@PDF@end{} + \edef\pxgtmb@PDF@CTM{{pdf:put @thispage << \pxgtmb@PDF@CTM >>}} + \else + %% for others (in case graphics option wrong) + \PackageError{\pxgtmb@pkgname}{Sorry, driver unsupported}\@ehc + \def\pxgtmb@PDF@CTM{{}}% dummy + \fi\fi + \AtBeginShipout{\setbox\AtBeginShipoutBox=\vbox{% + \baselineskip\z@skip\lineskip\z@skip\lineskiplimit\z@ + % force paper size + \special{papersize=\the\stockwidth,\the\stockheight}% + % emit pdf boxes + \expandafter\special\pxgtmb@PDF@CTM % here! + \copy\AtBeginShipoutBox}} + \fi +\else + %% for pdfTeX + \def\pxgtmb@driver{p} + \def\pxgtmb@PDF@begin{}\def\pxgtmb@PDF@end{} + \edef\pxgtmb@PDF@CTM{{\pxgtmb@PDF@CTM}} + % force paper size + \pdfpagewidth\stockwidth \pdfpageheight\stockheight + % emit pdf boxes + \expandafter\pdfpageattr\pxgtmb@PDF@CTM +\fi +\else + %% for LuaTeX + \def\pxgtmb@driver{l} + \def\pxgtmb@PDF@begin{}\def\pxgtmb@PDF@end{} + \edef\pxgtmb@PDF@CTM{pageattr{\pxgtmb@PDF@CTM}} + % force paper size + \pagewidth\stockwidth \pageheight\stockheight + % emit pdf boxes + \expandafter\pdfvariable\pxgtmb@PDF@CTM +\fi +\fi + +%% user interface +\newcommand{\settombowbanner}[1]{% + \iftombowdate\else + \PackageWarning{\pxgtmb@pkgname}{% + Package option `tombowbanner' is not effective.\MessageBreak + The banner may be discarded}% + \fi + \@bannertoken{#1}\maketombowbox} +\newcommand{\settombowbannerfont}[1]{% + \font\@bannerfont=#1\relax \maketombowbox} +\newcommand{\settombowwidth}[1]{% + \setlength{\@tombowwidth}{#1}\maketombowbox} +\newcommand{\settombowbleed}[1]{% + \def\@tombowbleed{#1}\maketombowbox} +\newcommand{\settombowcolor}[1]{% + \def\@tombowcolor{#1}} + +%% patch internal for pdfpages to work with tombow +%% (tested on pdfpages 2017/10/31 v0.5l) +\def\pxgtmb@patch@pdfpages{% + \RequirePackage{etoolbox} + \patchcmd{\AM@output}{% + \setlength{\@tempdima}{\AM@xmargin}% + \edef\AM@xmargin{\the\@tempdima}% + \setlength{\@tempdima}{\AM@ymargin}% + \edef\AM@ymargin{\the\@tempdima}% + }{% + \setlength{\@tempdima}{\AM@xmargin\iftombow+1in\fi}% + \edef\AM@xmargin{\the\@tempdima}% + \setlength{\@tempdima}{\AM@ymargin\iftombow-1in\fi}% + \edef\AM@ymargin{\the\@tempdima}% + } + {\PackageInfo{\pxgtmb@pkgname}{Patch for pdfpages applied}} + {\PackageWarningNoLine{\pxgtmb@pkgname}{Patch for pdfpages failed}}% + } +\AtBeginDocument{\@ifpackageloaded{pdfpages}{\pxgtmb@patch@pdfpages}{}} \endinput diff --git a/Master/texmf-dist/tex/latex/gentombow/pxgentombow.sty b/Master/texmf-dist/tex/latex/gentombow/pxgentombow.sty index 7112737aa2d..ab28b38bb19 100644 --- a/Master/texmf-dist/tex/latex/gentombow/pxgentombow.sty +++ b/Master/texmf-dist/tex/latex/gentombow/pxgentombow.sty @@ -8,328 +8,9 @@ \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{pxgentombow} - [2018/03/16 v0.9e Generate crop mark 'tombow'] -\def\pxgtmb@pkgname{pxgentombow} - -%% error status (shared with gentombow.sty) -\ifx\pxgtmb@errlevel\@undefined - \chardef\pxgtmb@errlevel=\z@ -\fi - -%% supported engines -\ifx\pfmtversion\@undefined - \@ifpackageloaded{luatexja}{}{\chardef\pxgtmb@errlevel=\@ne} -\fi -\ifnum\pxgtmb@errlevel>\z@ - \ifx\pxgtmb@emu@pkgname\@undefined % gentombow.sty not loaded - \PackageError{\pxgtmb@pkgname}{% - Only pLaTeX, upLaTeX and LuaTeX-ja are supported!\MessageBreak - Please use `gentombow' package instead}\@ehc - \expandafter\expandafter\expandafter\endinput\expandafter - \fi -\else - \@namedef{ver@gentombow.sty}{}% fake -\fi - -%% import from jsclasses -\hour\time \divide\hour by 60\relax -\@tempcnta\hour \multiply\@tempcnta 60\relax -\minute\time \advance\minute-\@tempcnta - -\ifnum\mag=\@m\else - % if BXjscls is detected and \mag != 1000, - % the layout will be definitely broken - \ifx\bxjs@param@mag\@undefined\else - \PackageError{\pxgtmb@pkgname}{% - It seems you are using Japanese `BXjscls'\MessageBreak - (bxjsarticle, bxjsbook, bxjsreport, etc.) or\MessageBreak - some derived class. Try adding `nomag' or\MessageBreak - `nomag*' to the class option list}\@ehc - \fi -\fi - -%% this package will use tombo feature in pLaTeX kernel -% if tombow-related option is not included in class option list, -% show info and enable it now -\iftombow\else - % if jsclasses is detected and \mag != 1000, it's too late - % -- When a size option other than `10pt' is specified, - % jsclasses uses \mag and calculates \oddsidemargin and \topmargin - % differently, depending on tombow status. - % In order to force `jsclasses' to calculate correctly, - % `tombow' or `tombo' is required as a class option. - % ... or, you may add `nomag' or `nomag*' instead. - \ifnum\mag=\@m\else \ifx\inv@mag\@undefined\else - \PackageError{\pxgtmb@pkgname}{% - It seems you are using Japanese `jsclasses'\MessageBreak - (jsarticle, jsbook, jsreport, etc.) or some\MessageBreak - derived class. Please add `tombow' or `tombo'\MessageBreak - to the class option list}\@ehc - \fi \fi - % BXjscls is already checked above, no check here - \PackageInfo\pxgtmb@pkgname{tombow feature enabled by \pxgtmb@pkgname} -\fi -\tombowtrue %\tombowdatetrue %% enabled by tombowbanner option -\setlength{\@tombowwidth}{.1\p@}% - -%% import from jsclasses -\@bannertoken{% - \jobname\space(\number\year-\two@digits\month-\two@digits\day - \space\two@digits\hour:\two@digits\minute)} - -%% prepare dimension -\ifx\stockheight\@undefined \newdimen\stockheight \fi -\ifx\stockwidth\@undefined \newdimen\stockwidth \fi - -%% prepare flag -\newif\ifpxgtmb@switch \pxgtmb@switchfalse -\newif\ifpxgtmb@landscape \pxgtmb@landscapefalse - -%% passed from class options -%% should be declared first inside this package (least priority) -\DeclareOption{tombow}{\tombowdatetrue} -\DeclareOption{tombo}{\tombowdatefalse} -\DeclareOption{mentuke}{\tombowdatefalse \setlength{\@tombowwidth}{\z@}} - -%% package options part 1 -\DeclareOption{tombowbanner}{\tombowdatetrue} -\DeclareOption{notombowbanner}{\tombowdatefalse} -\DeclareOption{tombowdate}{% obsolete since v0.9c (2018/01/11) - \PackageWarning{\pxgtmb@pkgname}{% - Option `tombowdate' is renamed;\MessageBreak - use `tombowbanner' instead}% - \tombowdatetrue} -\DeclareOption{notombowdate}{% obsolete since v0.9c (2018/01/11) - \PackageWarning{\pxgtmb@pkgname}{% - Option `notombowdate' is renamed;\MessageBreak - use `notombowbanner' instead}% - \tombowdatefalse} - -%% register a list of candidate papersize -% * \pxgtmb@addpapersize[]{}{}{} -% used for declaration of papersize. -% when no option is specified (that is, \ifpxgtmb@switch = \iffalse), -% also used for automatic stocksize determination. -% * if = \@empty, the next is assumed. -% * if = n, stocksize is set to papersize + 2in. -\def\pxgtmb@addpapersize{\@ifnextchar[{\pxgtmb@addp@persize}{\pxgtmb@addp@persize[\@empty]}} -\def\pxgtmb@addp@persize[#1]#2#3#4{% - % get current papersize and search through known standard in ascending order - \ifx\pxgtmb@guessedtombow\@empty - \ifx\pxgtmb@guessedpaper\@empty - % shorter edge -> \@tempdima, longer edge -> \@tempdimb - \ifdim\paperwidth>\paperheight\relax - \pxgtmb@landscapetrue - \@tempdima\paperheight \@tempdimb\paperwidth - \else - \pxgtmb@landscapefalse - \@tempdima\paperwidth \@tempdimb\paperheight - \fi - % \@ovri and \@ovro are used temporarily (safe enough) - \@ovri=#3\relax - \@ovro=#4\relax - % if \mag != 1000 and \inv@mag is defined, assume jsclasses-style \mag employment - \ifnum\mag=\@m\else \ifx\inv@mag\@undefined\else - \@ovri=\inv@mag\@ovri\relax - \@ovro=\inv@mag\@ovro\relax - \fi \fi - % compare - \ifdim\@tempdima=\@ovri\relax \ifdim\@tempdimb=\@ovro\relax - \def\pxgtmb@guessedpaper{#2}% - \ifx#1\@empty\else - \def\pxgtmb@guessedtombow{#1}% - \if n\pxgtmb@guessedtombow\else - \ExecuteOptions{tombow-#1}% package defaults to tombowdatetrue - \pxgtmb@switchfalse - \fi - \fi - \fi \fi - \else - \def\pxgtmb@guessedtombow{#2}% save for console message - \pxgtmb@setstock{#3}{#4}% set stockwidth/height - \fi\fi - \DeclareOption{tombow-#2}{% - \pxgtmb@switchtrue - \tombowdatetrue - \pxgtmb@setstock{#3}{#4}% - }% - \DeclareOption{tombo-#2}{% - \pxgtmb@switchtrue - \tombowdatefalse - \pxgtmb@setstock{#3}{#4}% - }% - \DeclareOption{mentuke-#2}{% - \pxgtmb@switchtrue - \tombowdatefalse - \setlength{\@tombowwidth}{\z@}% - \pxgtmb@setstock{#3}{#4}% - }% -} -\def\pxgtmb@setstock#1#2{% - \ifpxgtmb@landscape - \setlength\stockwidth{#2}% - \setlength\stockheight{#1}% - \else - \setlength\stockwidth{#1}% - \setlength\stockheight{#2}% - \fi - % if \mag != 1000 and \inv@mag is defined, assume jsclasses-style \mag employment - \ifnum\mag=\@m\else \ifx\inv@mag\@undefined\else - \stockwidth=\inv@mag\stockwidth\relax - \stockheight=\inv@mag\stockheight\relax - \fi \fi -}% -\@onlypreamble\pxgtmb@addpapersize -\@onlypreamble\pxgtmb@addp@persize -\@onlypreamble\pxgtmb@setstock - -%% initialize before search -\def\pxgtmb@guessedpaper{} -\def\pxgtmb@guessedtombow{} -\@onlypreamble\pxgtmb@guessedpaper -\@onlypreamble\pxgtmb@guessedtombow - -%% package options part 2 -% ISO A series <=> JIS B series in the ascending order -\pxgtmb@addpapersize{a10}{26mm}{37mm} -\pxgtmb@addpapersize{b10}{32mm}{45mm} -\pxgtmb@addpapersize{a9}{37mm}{52mm} -\pxgtmb@addpapersize{b9}{45mm}{64mm} -\pxgtmb@addpapersize{a8}{52mm}{74mm} -\pxgtmb@addpapersize{b8}{64mm}{91mm} -\pxgtmb@addpapersize{a7}{74mm}{105mm} -\pxgtmb@addpapersize{b7}{91mm}{128mm} -\pxgtmb@addpapersize{a6}{105mm}{148mm} -\pxgtmb@addpapersize{b6}{128mm}{182mm} -\pxgtmb@addpapersize{a5}{148mm}{210mm} -\pxgtmb@addpapersize{b5}{182mm}{257mm} -\pxgtmb@addpapersize{a4}{210mm}{297mm} -\pxgtmb@addpapersize{b4}{257mm}{364mm} -\pxgtmb@addpapersize{a3}{297mm}{420mm} -\pxgtmb@addpapersize{b3}{364mm}{515mm} -\pxgtmb@addpapersize{a2}{420mm}{594mm} -\pxgtmb@addpapersize{b2}{515mm}{728mm} -\pxgtmb@addpapersize{a1}{594mm}{841mm} -\pxgtmb@addpapersize{b1}{728mm}{1030mm} -\pxgtmb@addpapersize[n]{a0}{841mm}{1189mm} -\pxgtmb@addpapersize[n]{b0}{1030mm}{1456mm} - -%% package options part 3 -% ISO C series -\pxgtmb@addpapersize[a9]{c10}{28mm}{40mm} -\pxgtmb@addpapersize[a8]{c9}{40mm}{57mm} -\pxgtmb@addpapersize[a7]{c8}{57mm}{81mm} -\pxgtmb@addpapersize[a6]{c7}{81mm}{114mm} -\pxgtmb@addpapersize[a5]{c6}{114mm}{162mm} -\pxgtmb@addpapersize[a4]{c5}{162mm}{229mm} -\pxgtmb@addpapersize[a3]{c4}{229mm}{354mm} -\pxgtmb@addpapersize[a2]{c3}{324mm}{458mm} -\pxgtmb@addpapersize[a1]{c2}{458mm}{648mm} -\pxgtmb@addpapersize[a0]{c1}{648mm}{917mm} -\pxgtmb@addpapersize[n]{c0}{917mm}{1297mm} -% misc -\pxgtmb@addpapersize[b4]{a4j}{210mm}{297mm} -\pxgtmb@addpapersize[b5]{a5j}{148mm}{210mm} -\pxgtmb@addpapersize[a3]{b4j}{257mm}{364mm} -\pxgtmb@addpapersize[a4]{b5j}{182mm}{257mm} -\pxgtmb@addpapersize[b4]{a4var}{210mm}{283mm} -\pxgtmb@addpapersize[a4]{b5var}{182mm}{230mm} -\pxgtmb@addpapersize[a3]{letter}{8.5in}{11in} -\pxgtmb@addpapersize[a3]{legal}{8.5in}{14in} -\pxgtmb@addpapersize[a4]{executive}{7.25in}{10.5in} - -%% default options -\ExecuteOptions{tombowbanner}% package defaults to tombowdatetrue -\ProcessOptions - -%% display search result -% if any of explicit size option is specified, \ifpxgtmb@switch = \iftrue. -% otherwise, automatic size detection should be successful. -\ifpxgtmb@switch\else - % check status - \@tempcnta=\z@\relax - \ifx\pxgtmb@guessedpaper\@empty - \advance\@tempcnta\@ne\relax - \fi - \ifx\pxgtmb@guessedtombow\@empty - \advance\@tempcnta\tw@\relax - \else\if n\pxgtmb@guessedtombow - \advance\@tempcnta\tw@\relax - \fi\fi - % message - \ifodd\@tempcnta - %\PackageWarningNoLine\pxgtmb@pkgname{% - % No size option specified, and automatic papersize\MessageBreak - % detection also failed} - \else - \typeout{***** Package \pxgtmb@pkgname\space detected \pxgtmb@guessedpaper paper. *****} - \fi - \ifnum\@tempcnta>\@ne\relax - \PackageWarningNoLine\pxgtmb@pkgname{% - Output size cannot be determined. Please add size\MessageBreak - option (e.g. `tombow-a4') to specify output size.\MessageBreak - Falling back to +1in ..} - \stockwidth\paperwidth \advance\stockwidth 2in - \stockheight\paperheight \advance\stockheight 2in - \else - \typeout{***** Now the output size is automatically set to \pxgtmb@guessedtombow. *****} - \fi -\fi - -%% warnings -\ifdim\stockwidth<\paperwidth - \PackageWarningNoLine\pxgtmb@pkgname{% - \string\stockwidth\space is smaller than \string\paperwidth!\MessageBreak - Is this really what you want?} -\fi -\ifdim\stockheight<\paperheight - \PackageWarningNoLine\pxgtmb@pkgname{% - \string\stockheight\space is smaller than \string\paperheight!\MessageBreak - Is this really what you want?} -\fi - -%% make tombow box according to tombowdate & \@tombowwidth status -\maketombowbox - -%% shift amount -\hoffset .5\stockwidth -\advance\hoffset -.5\paperwidth -\advance\hoffset-1truein\relax -\voffset .5\stockheight -\advance\voffset -.5\paperheight -\advance\voffset-1truein\relax - -%% user interface -\newcommand{\settombowbanner}[1]{% - \iftombowdate\else - \PackageWarning{\pxgtmb@pkgname}{% - Package option `tombowbanner' is not effective.\MessageBreak - The banner may be discarded}% - \fi - \@bannertoken{#1}\maketombowbox} -\newcommand{\settombowbannerfont}[1]{% - \font\@bannerfont=#1\relax \maketombowbox} -\newcommand{\settombowwidth}[1]{% - \setlength{\@tombowwidth}{#1}\maketombowbox} - -%% patch internal for pdfpages to work with tombow -%% (tested on pdfpages 2017/10/31 v0.5l) -\def\pxgtmb@patch@pdfpages{% - \RequirePackage{etoolbox} - \patchcmd{\AM@output}{% - \setlength{\@tempdima}{\AM@xmargin}% - \edef\AM@xmargin{\the\@tempdima}% - \setlength{\@tempdima}{\AM@ymargin}% - \edef\AM@ymargin{\the\@tempdima}% - }{% - \setlength{\@tempdima}{\AM@xmargin\iftombow+1in\fi}% - \edef\AM@xmargin{\the\@tempdima}% - \setlength{\@tempdima}{\AM@ymargin\iftombow-1in\fi}% - \edef\AM@ymargin{\the\@tempdima}% - } - {\PackageInfo{\pxgtmb@pkgname}{Patch for pdfpages applied}} - {\PackageWarningNoLine{\pxgtmb@pkgname}{Patch for pdfpages failed}}% - } -\AtBeginDocument{\@ifpackageloaded{pdfpages}{\pxgtmb@patch@pdfpages}{}} - + [2018/05/17 v0.9g Generate crop mark 'tombow'] +\PackageWarningNoLine{pxgentombow}{% + Package `pxgentombow' is now superseded by\MessageBreak + `gentombow', use `gentombow' instead} +\RequirePackageWithOptions{gentombow}% load it \endinput -- cgit v1.2.3