diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/jlreq/jlreq-trimmarks.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/jlreq/jlreq-trimmarks.sty | 88 |
1 files changed, 67 insertions, 21 deletions
diff --git a/Master/texmf-dist/tex/latex/jlreq/jlreq-trimmarks.sty b/Master/texmf-dist/tex/latex/jlreq/jlreq-trimmarks.sty index d6242c6c56d..e5d13f08ff7 100644 --- a/Master/texmf-dist/tex/latex/jlreq/jlreq-trimmarks.sty +++ b/Master/texmf-dist/tex/latex/jlreq/jlreq-trimmarks.sty @@ -1,5 +1,5 @@ \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{jlreq-trimmarks}[2018/08/08 jlreq-trimmarks] +\ProvidesPackage{jlreq-trimmarks}[2018/09/01 jlreq-trimmarks] \RequirePackage{xkeyval,etoolbox} \RequirePackage{jlreq-helpers} @@ -123,12 +123,17 @@ \newif\ifjlreq@trimmarks@show \jlreq@trimmarks@showtrue \newif\ifjlreq@trimmarks@show@artbox \jlreq@trimmarks@show@artboxfalse \tombowdatetrue +% flag: `show` is specified or not +\newif\ifjlreq@trimmarks@option@show \jlreq@trimmarks@option@showfalse + \DeclareOptionX{show}{% + \jlreq@trimmarks@showtrue \jlreq@ifempty{#1}{ \jlreq@trimmarks@showtrue\tombowdatetrue\jlreq@trimmarks@digitaltrue }{ \jlreq@trimmarks@showfalse\tombowdatefalse\jlreq@trimmarks@digitalfalse \@for\jlreq@trimmarks@tempa:=#1\do{% + \expandafter\jlreq@helper@trim\expandafter{\jlreq@trimmarks@tempa}{\jlreq@trimmarks@tempa} \jlreq@switch{\jlreq@trimmarks@tempa}{ {trimmarks}{\jlreq@trimmarks@showtrue} {banner}{\tombowdatetrue} @@ -139,6 +144,10 @@ } } } +\def\jlreq@trimmarks@bleed{3mm} +\DeclareOptionX{bleed_margin}{\def\jlreq@trimmarks@bleed{#1}} + + \newif\ifjlreq@trimmarks@landscape \jlreq@trimmarks@landscapefalse \jlreq@trimmarks@DeclareOption{landscape}{\jlreq@trimmarks@landscapetrue} \jlreq@trimmarks@afterpkg@addtodeleteif{\ifjlreq@trimmarks@landscape} @@ -149,27 +158,37 @@ \let\@removeelement=\jlreq@temporary@original@@removeelement \let\jlreq@temporary@original@@removeelement=\@undefined -\def\jlreq@trimmarks@setpapersize#1{% +\ifjlreq@trimmarks@option@show\else + \ifx o\jlreq@trimmarks@driver + \jlreq@trimmarks@digitalfalse + \jlreq@trimmarks@showtrue + \jlreq@trimmarks@show@artboxfalse + \fi +\fi + +\def\jlreq@trimmarks@setpapersize#1{ \jlreq@ifcontains{#1}{+}{ - \def\@tempa##1+##2\jlreq@endmark{% - \jlreq@ifempty{##1}{ + \def\@tempa##1+##2\jlreq@endmark{ + \jlreq@helper@trim{##1}{\jlreq@trimmarks@tempa} + \jlreq@helper@trim{##2}{\jlreq@trimmarks@tempb} + \ifx\jlreq@trimmarks@tempa\@empty \let\jlreq@tempa=\paperwidth \let\jlreq@tempb=\paperheight - }{ - \jlreq@trimmarks@analyzepapersize{##1} + \else + \expandafter\jlreq@trimmarks@analyzepapersize\expandafter{\jlreq@trimmarks@tempa} \let\jlreq@tempa=\jlreq@resulta \let\jlreq@tempb=\jlreq@resultb - \ifjlreq@trimmarks@landscape\jlreq@swap{\jlreq@tempa}{\jlreq@tempb}\fi - } - \jlreq@trimmarks@analyzepapersize{##2} - \ifjlreq@trimmarks@landscape\jlreq@swap{\jlreq@resulta}{\jlreq@resultb}\fi + \ifjlreq@trimmarks@landscape\jlreq@helper@swap{\jlreq@tempa}{\jlreq@tempb}\fi + \fi + \expandafter\jlreq@trimmarks@analyzepapersize\expandafter{\jlreq@trimmarks@tempb} + \ifjlreq@trimmarks@landscape\jlreq@helper@swap{\jlreq@resulta}{\jlreq@resultb}\fi \edef\jlreq@trimmarks@paperwidth{\the\dimexpr\jlreq@tempa + \jlreq@resulta\relax} \edef\jlreq@trimmarks@paperheight{\the\dimexpr\jlreq@tempb + \jlreq@resultb\relax} } \@tempa#1\jlreq@endmark }{ \jlreq@trimmarks@analyzepapersize{#1} - \ifjlreq@trimmarks@landscape\jlreq@swap{\jlreq@resulta}{\jlreq@resultb}\fi + \ifjlreq@trimmarks@landscape\jlreq@helper@swap{\jlreq@resulta}{\jlreq@resultb}\fi \edef\jlreq@trimmarks@paperwidth{\jlreq@resulta} \edef\jlreq@trimmarks@paperheight{\jlreq@resultb} } @@ -186,7 +205,6 @@ \newcommand{\jlreqtrimmarkssetup}[1]{% \jlreq@parsekeyval{% {banner}{\@bannertoken{##1}\maketombowbox} - {bleed_margin}{\def\jlreq@trimmarks@bleed{##1}\maketombowbox} {trimmarks_width}{\setlength{\@tombowwidth}{##1}\maketombowbox} {color}{ \jlreq@ifempty{##1}{ @@ -231,7 +249,6 @@ \jobname\space(\number\year-\two@digits\month-\two@digits\day \space\two@digits\hour:\two@digits\minute)% }, - bleed_margin=3mm, color={} } @@ -257,18 +274,41 @@ \setlength{\pdfpageheight}{\dimexpr\jlreq@trimmarks@paperheight\relax} \fi -\hoffset=\dimexpr(\jlreq@trimmarks@paperwidth - \paperwidth)/2 - 1in\relax -\voffset=\dimexpr(\jlreq@trimmarks@paperheight - \paperheight)/2 - 1in\relax +\hoffset=\dimexpr(\jlreq@trimmarks@paperwidth - \paperwidth)/2 - \ifx l\jlreq@engine 1in\else 1truein\fi\relax +\voffset=\dimexpr(\jlreq@trimmarks@paperheight - \paperheight)/2 - \ifx l\jlreq@engine 1in\else 1truein\fi\relax +\ifx l\jlreq@engine\else + \@ifundefined{@tombowreset@@paper}{ + \AtBeginDocument{% + \addtolength{\oddsidemargin}{\dimexpr 1truein - 1in\relax}% + \addtolength{\evensidemargin}{\dimexpr 1truein - 1in\relax}% + \addtolength{\topmargin}{\dimexpr 1truein - 1in\relax}% + } + }{ + \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 + % 1in -> 1truein + \advance\@@topmargin 1truein\relax \advance\@themargin 1truein\relax + \fi + } + } +\fi \ifx l\jlreq@trimmarks@driver\else - \edef\@tempa{\noexpand\AtBeginDvi{\noexpand\special{papersize=\the\dimexpr\jlreq@trimmarks@paperwidth\relax,\the\dimexpr\jlreq@trimmarks@paperheight\relax}}} + \jlreq@helper@divide{\the\mag pt}{1000pt} + \edef\@tempa{\noexpand\AtBeginDvi{\noexpand\special{papersize=\the\dimexpr\strip@pt\jlreq@resultdimen\dimexpr\jlreq@trimmarks@paperwidth\relax\relax, \the\dimexpr\strip@pt\jlreq@resultdimen\dimexpr\jlreq@trimmarks@paperheight\relax\relax}}} \@tempa \fi -\@ifundefined{stockwidth}{\newdimen\stockwidth}{} -\@ifundefined{stockheight}{\newdimen\stockheight}{} +\@ifundefined{stockheight}{\newlength{\stockheight}}{} +\@ifundefined{stockwidth}{\newlength{\stockwidth}}{} \setlength{\stockwidth}{\dimexpr\jlreq@trimmarks@paperwidth\relax} \setlength{\stockheight}{\dimexpr\jlreq@trimmarks@paperheight\relax} + \def\maketombowbox{% \setbox\@TL\hbox to\z@{\yoko\hss \vrule width\dimexpr 10mm + \jlreq@trimmarks@bleed\relax height\@tombowwidth depth\z@ @@ -313,7 +353,7 @@ \vrule height.5\@tombowwidth depth.5\@tombowwidth width10mm\hss}% } \def\@outputtombow{% - % 6mm: from plcore + % 6mm = \@tombowbleed: from plcore \@@paperwidth=\dimexpr\@@paperwidth - 6mm + 2\dimexpr\jlreq@trimmarks@bleed\relax\relax \@@paperheight=\dimexpr\@@paperheight - 6mm + 2\dimexpr\jlreq@trimmarks@bleed\relax\relax \ifjlreq@trimmarks@show @@ -338,7 +378,13 @@ } \ifjlreq@trimmarks@digital - \def\jlreq@trimmarks@pttobp#1{\strip@pt\dimexpr0.9963\dimexpr#1\relax\relax} + \ifx l\jlreq@engine + \setlength\jlreq@resultdimen{1pt} + \else + \jlreq@helper@divide{\the\mag pt}{1000pt} + \fi + % 0.9963 = 1pt/1bp (almost) + \edef\jlreq@trimmarks@pttobp#1{\noexpand\strip@pt\noexpand\dimexpr\strip@pt\jlreq@resultdimen\noexpand\dimexpr0.9963\noexpand\dimexpr#1\unexpanded{\relax\relax\relax}} \edef\jlreq@trimmarks@trimboxsize{% [% \jlreq@trimmarks@pttobp{(\jlreq@trimmarks@paperwidth - \paperwidth)/2} @@ -374,7 +420,7 @@ \fi \ifx s\jlreq@trimmarks@driver \edef\@tempa{\noexpand\special{ps:SDict begin - [ /TrimBox \jlreq@trimmarks@trimboxsize /PAGE pdfmark + [ /TrimBox \jlreq@trimmarks@trimboxsize /PAGE pdfmark \ifjlreq@trimmarks@show@artbox [ /ArtBox \jlreq@trimmarks@trimboxsize /PAGE pdfmark \fi [ /BleedBox \jlreq@trimmarks@bleedboxsize /PAGE pdfmark end}}% |