summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/jlreq/jlreq-trimmarks.sty
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-09-01 22:16:58 +0000
committerKarl Berry <karl@freefriends.org>2018-09-01 22:16:58 +0000
commit7296fc79309858e6bcb41b7e4e28dfa73e3dd773 (patch)
treea14049ee3ff57d81b1e5e3cff8c6d1820ca25db8 /Master/texmf-dist/tex/latex/jlreq/jlreq-trimmarks.sty
parent6680343d25dad119fdee522e6395982d66d24153 (diff)
jlreq (1sep18)
git-svn-id: svn://tug.org/texlive/trunk@48535 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/jlreq/jlreq-trimmarks.sty')
-rw-r--r--Master/texmf-dist/tex/latex/jlreq/jlreq-trimmarks.sty88
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}}%