texlive[74906] Master/texmf-dist: olsak-misc (10apr25)

commits+karl at tug.org commits+karl at tug.org
Thu Apr 10 22:08:21 CEST 2025


Revision: 74906
          https://tug.org/svn/texlive?view=revision&revision=74906
Author:   karl
Date:     2025-04-10 22:08:21 +0200 (Thu, 10 Apr 2025)
Log Message:
-----------
olsak-misc (10apr25)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/generic/olsak-misc/README
    trunk/Master/texmf-dist/tex/generic/olsak-misc/cropmarks.tex

Added Paths:
-----------
    trunk/Master/texmf-dist/doc/generic/olsak-misc/circu.tex

Modified: trunk/Master/texmf-dist/doc/generic/olsak-misc/README
===================================================================
--- trunk/Master/texmf-dist/doc/generic/olsak-misc/README	2025-04-10 20:07:04 UTC (rev 74905)
+++ trunk/Master/texmf-dist/doc/generic/olsak-misc/README	2025-04-10 20:08:21 UTC (rev 74906)
@@ -5,6 +5,7 @@
 
 README       ... this file
 booklet.tex  ... re-orders PDF pages and collects them for booklet printing 
+circu.tex    ... features from circuitikz.sty enabled for plain TeX
 cnv.tex      ... conversion of texts
 cnv-pu.tex   ... example of usage of cnv.tex --- pdf outlines in Unicode
 cnv-word.tex ... example of usage of cnv.tex --- word to word conversion
@@ -26,6 +27,7 @@
 <May 2019>         ... qrcode: bug fixed
 <Jun. 2022>        ... cropmarks.tex added
 <Aug. 2022>        ... middle cropmarks added
+<Apr. 2025>        ... circu.tex added
 
 License:
 -------

Added: trunk/Master/texmf-dist/doc/generic/olsak-misc/circu.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/olsak-misc/circu.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/generic/olsak-misc/circu.tex	2025-04-10 20:08:21 UTC (rev 74906)
@@ -0,0 +1,339 @@
+% circu.tex
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Petr Olsak <petr at olsak.net>                    March 2025
+
+% This macro file enables features from LaTeX package circuitikz.sty
+% in plain TeX or OpTeX. 
+% Usage:
+
+% \input circu   % or \load[circu] in OpTeX
+% \circusetup {comma separated LaTeX options}
+%
+% \circu
+% ... TikZ and circuitikz drawing commands ...
+% \endcircu
+
+% See the LaTeX documentation of circuitikz package for more information.
+% See also the end of this file for more examples.
+
+\ifx\circu\undefined    \else \endinput \fi
+\ifx\useoptex\undefined
+      \input tikz
+      \expandafter\def\expandafter\newdimen\expandafter{\newdimen}
+      \def\circuwarning#1{\immediate\write16{circu WARNING: #1}}
+   \else 
+      \load[tikz]
+      \def\circuwarning#1{\opwarning{circu: #1}}
+      \def\sevenrm{\setfontsize{mag.7}\rm} \def\fiverm{\setfontsize{mag.5}\rm}
+   \fi
+
+\usetikzlibrary{calc}
+\usetikzlibrary{arrows.meta, bending}
+\usetikzlibrary{fpu}
+
+\edef\circuleave{\catcode`\string @=\the\catcode`\@ }
+\catcode`\@=11
+
+\input pgfcirc.defines.tex
+\input pgfcircutils.tex
+\input pgfcircpath.tex
+\input pgfcircshapes.tex
+\input pgfcircmonopoles.tex
+\input pgfcircbipoles.tex
+\input pgfcirctripoles.tex
+\input pgfcircquadpoles.tex
+\input pgfcircmultipoles.tex
+\input pgfcirclabel.tex
+\input pgfcircvoltage.tex
+\input pgfcirccurrent.tex
+\input pgfcircflow.tex
+
+\def\circusetup#1{\circusetupA#1,\relax,\end}
+\def\circusetupA#1#2,{\ifx\relax#1\relax \expandafter\circusetupE
+   \else \circuX{#1#2}\expandafter\circusetupA\fi
+}
+\def\circusetupE#1\end{}
+
+\def\circuoption#1#2{\expandafter\gdef \csname circuopt:#1\endcsname{#2}}
+\def\circuX#1{\ifcsname circuopt:#1\endcsname \csname circuopt:#1\endcsname
+   \else \circuwarning{Unknown option: "#1"}\fi}
+
+\circuoption {europeanvoltage}   {\ctikzset{voltage=european}}
+\circuoption {straightvoltages}  {\ctikzset{voltage=straight}}
+\circuoption {americanvoltage}   {\ctikzset{voltage=american}}
+\circuoption {europeanvoltages}  {\ctikzset{voltage=european}}
+\circuoption {americanvoltages}  {\ctikzset{voltage=american}}
+\circuoption {oldvoltagedirection} 
+   {\pgf at circ@oldvoltagedirectiontrue
+    \pgf at circ@explicitvdirtrue 
+    \pgf at circ@fixbatteriesfalse}
+\circuoption {nooldvoltagedirection}
+   {\pgf at circ@oldvoltagedirectionfalse
+    \pgf at circ@explicitvdirtrue
+    \pgf at circ@fixbatteriesfalse}
+\circuoption {RPvoltages}
+   {\pgf at circ@oldvoltagedirectiontrue
+    \pgf at circ@explicitvdirtrue
+    \pgf at circ@fixbatteriestrue}
+\circuoption {EFvoltages}
+   {\pgf at circ@oldvoltagedirectionfalse
+    \pgf at circ@explicitvdirtrue
+    \pgf at circ@fixbatteriestrue}
+\circuoption {europeancurrent}   {\ctikzset{current=european}}
+\circuoption {americancurrent}   {\ctikzset{current=american}}
+\circuoption {europeancurrents}  {\ctikzset{current=european}}
+\circuoption {americancurrents}  {\ctikzset{current=american}}
+\circuoption {americanresistor}  {\ctikzset{resistor=american}}
+\circuoption {europeanresistor}  {\ctikzset{resistor=european}}
+\circuoption {americanresistors} {\ctikzset{resistor=american}}
+\circuoption {europeanresistors} {\ctikzset{resistor=european}}
+\circuoption {americaninductor}  {\ctikzset{inductor=american}}
+\circuoption {europeaninductor}  {\ctikzset{inductor=european}}
+\circuoption {cuteinductor}      {\ctikzset{inductor=cute}}
+\circuoption {americaninductors} {\ctikzset{inductor=american}}
+\circuoption {europeaninductors} {\ctikzset{inductor=european}}
+\circuoption {cuteinductors}     {\ctikzset{inductor=cute}}
+\circuoption {americanport}      {\ctikzset{logic ports=american}}
+\circuoption {europeanport}      {\ctikzset{logic ports=european}}
+\circuoption {americanports}     {\ctikzset{logic ports=american}}
+\circuoption {europeanports}     {\ctikzset{logic ports=european}}
+\circuoption {americangfsurgearrester} 
+   {\ctikzset{gas filled surge arrester choice=american}}
+\circuoption {europeangfsurgearrester}
+   {\ctikzset{gas filled surge arrester choice=european}}
+\circuoption {fulldiodes}        {\ctikzset{diode=full}}
+\circuoption {emptydiodes}       {\ctikzset{diode=empty}}
+\circuoption {strokediodes}      {\ctikzset{diode=stroke}}
+\circuoption {fulldiode}         {\ctikzset{diode=full}}
+\circuoption {emptydiode}        {\ctikzset{diode=empty}}
+\circuoption {strokediode}       {\ctikzset{diode=stroke}}
+\circuoption {arrowmos}          {\pgf at circuit@mos at arrowstrue}
+\circuoption {noarrowmos}        {\pgf at circuit@mos at arrowsfalse}
+\circuoption {fetbodydiode}      {\pgf at circuit@fet at bodydiodetrue}
+\circuoption {nofetbodydiode}    {\pgf at circuit@fet at bodydiodefalse}
+\circuoption {fetsolderdot}      {\pgf at circuit@fet at solderdottrue}
+\circuoption {nofetsolderdot}    {\pgf at circuit@fet at solderdotfalse}
+\circuoption {emptypmoscircle}   {\pgf at circuit@pmos at emptycircletrue}
+\circuoption {lazymos}   
+   {\ctikzset{tripoles/nmos/width=.5}
+    \ctikzset{tripoles/nmos/gate height=.35}
+    \ctikzset{tripoles/nmos/base height=.35}
+    \ctikzset{tripoles/nmos/height/.initial=1.2}
+    \ctikzset{tripoles/nmos/base width=.5}
+    \ctikzset{tripoles/nmos/gate width=.65}
+    \ctikzset{tripoles/pmos/width=.5}
+    \ctikzset{tripoles/pmos/gate height=.35}
+    \ctikzset{tripoles/pmos/base height=.35}
+    \ctikzset{tripoles/pmos/height/.initial=1.2}
+    \ctikzset{tripoles/pmos/base width=.5}
+    \ctikzset{tripoles/pmos/gate width=.65}
+    \pgf at circuit@pmos at emptycircletrue}
+\circuoption {legacytransistorstext}   {\pgf at circuit@transisors at fixlabelsfalse}
+\circuoption {nolegacytransistorstext} {\pgf at circuit@transisors at fixlabelstrue}
+\circuoption {centertransistorstext}   {\pgf at circuit@transisors at fixlabelstrue}
+\circuoption {straightlabels}          {\ctikzset{label/align = straight}}
+\circuoption {rotatelabels}            {\ctikzset{label/align = rotate}}
+\circuoption {smartlabels}             {\ctikzset{label/align = smart}}
+\circuoption {betterproportions}
+   {\ctikzset{monopoles/ground/width/.initial=.15}
+    \ctikzset{bipoles/resistor/height/.initial=.23}
+    \ctikzset{bipoles/resistor/width/.initial=.6}
+    \ctikzset{bipoles/capacitor/height/.initial=.4}
+    \ctikzset{bipoles/capacitor/width/.initial=.1}
+    \ctikzset{bipoles/potentiometer/height/.initial=.6}
+    \ctikzset{bipoles/potentiometer/height 2/.initial=.23}
+    \ctikzset{bipoles/potentiometer/width/.initial=.6}
+    \ctikzset{bipoles/photoresistor/height/.initial=.6}
+    \ctikzset{bipoles/photoresistor/height 2/.initial=.23}
+    \ctikzset{bipoles/photoresistor/width/.initial=.6}
+    \ctikzset{bipoles/thermistor/main/.initial=.7}
+    \ctikzset{bipoles/thermistor/height/.initial=.328}%.23/.7
+    \ctikzset{bipoles/thermistor/width/.initial=.6}
+    \ctikzset{bipoles/thermistorntc/width/.initial=.6}
+    \ctikzset{bipoles/thermistorntc/main/.initial=.7}
+    \ctikzset{bipoles/thermistorntc/height/.initial=.328}%.23/.7
+    \ctikzset{bipoles/thermistorntc/height 2/.initial=.75}%.23/.7
+    \ctikzset{bipoles/thermistorptc/width/.initial=.6}
+    \ctikzset{bipoles/thermistorptc/main/.initial=.7}
+    \ctikzset{bipoles/thermistorptc/height/.initial=.328}%.23/.7
+    \ctikzset{bipoles/varistor/main/.initial=.7}
+    \ctikzset{bipoles/varistor/height/.initial=.328}%.23/.7
+    \ctikzset{bipoles/varistor/width/.initial=.6}
+    \ctikzset{bipoles/vresistor/height/.initial=.45}
+    \ctikzset{bipoles/vresistor/width/.initial=.6}
+    \ctikzset{bipoles/generic/height/.initial=.23}
+    \ctikzset{bipoles/generic/width/.initial=.6}
+    \ctikzset{bipoles/generic potentiometer/height/.initial=.6}
+    \ctikzset{bipoles/generic potentiometer/height 2/.initial=.23}
+    \ctikzset{bipoles/generic potentiometer/width/.initial=.6}
+    \ctikzset{bipoles/ageneric/height/.initial=.23}
+    \ctikzset{bipoles/ageneric/width/.initial=.6}
+    \ctikzset{bipoles/memristor/height/.initial=.23}
+    \ctikzset{bipoles/memristor/wave height/.initial=.375}
+    \ctikzset{bipoles/memristor/width/.initial=.60}
+    \ctikzset{bipoles/tgeneric/height/.initial=.525}
+    \ctikzset{bipoles/tgeneric/width/.initial=.6}
+    \ctikzset{bipoles/tfullgeneric/height/.initial=.525}
+    \ctikzset{bipoles/tfullgeneric/width/.initial=.60}
+    \ctikzset{bipoles/fullgeneric/height/.initial=.23}
+    \ctikzset{bipoles/fullgeneric/width/.initial=.6}
+    \ctikzset{bipoles/diode/height/.initial=.3}
+    \ctikzset{bipoles/diode/width/.initial=.25}
+    \ctikzset{bipoles/bidirectionaldiode/height/.initial=.66}
+    \ctikzset{bipoles/bidirectionaldiode/width/.initial=.6}
+    \ctikzset{bipoles/bidirectionaldiode/diode width left/.initial=.3}
+    \ctikzset{bipoles/bidirectionaldiode/diode width right/.initial=.3}
+    \ctikzset{tripoles/thyristor/height/.initial=.66}
+    \ctikzset{tripoles/thyristor/height 2/.initial=.3}
+    \ctikzset{tripoles/thyristor/width/.initial=.6}
+    \ctikzset{tripoles/thyristor/diode height/.initial=.3}
+    \ctikzset{tripoles/thyristor/diode width left/.initial=.4}
+    \ctikzset{tripoles/thyristor/diode width right/.initial=.3}
+    \ctikzset{tripoles/triac/height/.initial=.66}
+    \ctikzset{tripoles/triac/width/.initial=.6}
+    \ctikzset{tripoles/triac/diode width left/.initial=.3}
+    \ctikzset{tripoles/triac/diode width right/.initial=.3}}
+\circuoption {european}
+   {\circusetup{europeanvoltage,europeancurrent,europeanresistor,
+                europeaninductor,europeangfsurgearrester,europeanport}}
+\circuoption {american}
+   {\circusetup{americanvoltage,americancurrent,americanresistor,
+                americaninductor,americangfsurgearrester,americanport}}
+
+\circuoption {siunitx}           {\pgf at circ@siunitxtrue \the\siunitxdefs}
+\circuoption {nosiunitx}         {\pgf at circ@siunitxfalse}
+\circuoption {compatibility}     {\pgf at circuit@compattrue}
+
+% The \SI macro is executed when a user sets siunitx option and uses value<unit> syntax.
+% We don't want to load complicated siunitx.sty LaTeX package,
+% only few units are provided in simply way, you can declare others similarly.
+
+\newtoks\siunitxdefs  \siunitxdefs={
+   \def\SI#1#2{#1\,\hbox{#2}}
+   \def\ampere{A}
+   \def\ohm{$\Omega$}
+   \def\volt{V}
+   \def\farrad{F}
+   \def\pico{p}
+   \def\micro{$\ifx\mupmu\undefined \mu\else \mupmu\fi$}
+   \def\mili{m}
+   \def\kilo{k}
+}
+
+% We don't need xstring.sty macros for searching angles in the parameter:
+
+\def\pgf at circ@handleSI#1{\circuangles #1\end<>\end\relax{#1}}
+\def\circuangles #1<#2>#3\end#4\relax#5{%
+   \ifx\end#4\end \pgf at circ@siunitx at resfalse
+   \else \pgf at circ@siunitx at restrue
+      \def\pgf at circ@handleSI at unit{#2}%
+      \def\pgf at circ@handleSI at val{#1}%
+   \fi
+}
+
+\circuleave % @ has its original catcode
+
+% default options:
+\circusetup {nofetbodydiode, nofetsolderdot, europeancurrents, europeanvoltages, 
+             americanports, americanresistors, cuteinductors,
+             europeangfsurgearrester, nosiunitx, noarrowmos, smartlabels}
+
+\let\circuitikz=\tikzpicture
+\let\endcircuitikz=\endtikzpicture
+\let\circu=\tikzpicture
+\let\endcircu=\endtikzpicture
+
+\endinput
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Examples:
+
+\input circu
+\circusetup{siunitx}
+
+\circu
+   \draw (0,0) to[R=2<\ohm>, i=?, v=84<\volt>] (2,0) --
+   (2,2) to[V<=84<\volt>] (0,2)
+   -- (0,0);
+\endcircu
+
+\bigskip
+
+\circusetup{siunitx, american}
+
+\circu
+   \draw (0,0) to[R=2<\ohm>, i=?, v=84<\volt>] (2,0) --
+   (2,2) to[V<=84<\volt>] (0,2)
+   -- (0,0);
+\endcircu
+
+\bigskip
+
+\circu [american]
+   \draw (0,0) to[isource, l=$I_0$] (0,3)
+   to[short, -*, i=$I_0$] (2,3)
+   to[R=$R_1$, i=$i_1$] (2,0) -- (0,0);
+   \draw (2,3) -- (4,3)
+   to[R=$R_2$, i=$i_2$]
+   (4,0) to[short, -*] (2,0);
+\endcircu
+
+\bigskip
+
+\circu [american, voltage shift=0.5]
+\draw (0,0)
+   to[isource, l=$I_0$, v=$V_0$] (0,3)
+   to[short, -*, f=$I_0$] (2,3)
+   to[R=$R_1$, f>_=$i_1$] (2,0) -- (0,0);
+   \draw (2,3) -- (4,3)
+   to[R=$R_2$, f>_=$i_2$]
+   (4,0) to[short, -*] (2,0);
+   \draw[red, thick] (0.6,2.1) rectangle (4.2,3.8)
+   node[pos=0.5, above]{KCL};
+\endcircu
+
+\bigskip
+
+\ctikzset{amplifiers/fill=cyan!20, component text=left}
+\circu [scale=0.8, transform shape]
+   \draw (0,0) node[above]{$v_i$} to[short, o-] ++(1,0)
+   node[op amp, noinv input up, anchor=+](OA){\tt OA1}
+   (OA.-) -- ++(0,-1) coordinate(FB)
+   to[R=$R_1$] ++(0,-2) node[ground]{}
+   (FB) to[R=$R_2$, *-] (FB -| OA.out) -- (OA.out)
+   to [short, *-o] ++(1,0) node[above]{$v_o$};
+\endcircu
+
+\bigskip
+
+\tikzset{sr-ff/.style={flipflop, flipflop def={
+t1=S, t2=CP, t3=R, t4={\ctikztextnot{Q}},
+t6=Q, nd=1}},
+}
+\def\myblock#1{% Add #1- to the node and coord names
+   node[sr-ff](#1-FF){} (#1-FF.bup) node[above]{SR-FF}
+   (#1-FF.pin 1) -- ++(-1,0) node[and port, anchor=out](#1-AND1){}
+   (#1-FF.pin 3) -- (#1-FF.pin 3 -| #1-AND1.out)
+   node[and port, anchor=out](#1-AND2){}
+   (#1-AND1.in 1) to[short, -*] ++(-1,0) coordinate(#1-in)
+   to[inline not] (#1-in |- #1-AND2.in 2) -- (#1-AND2.in 2)
+}
+\circu
+   \draw (0,0)  \myblock{A};
+   \draw (0,-4) \myblock{B};
+   \draw (A-in) -- ++(-0.5, 0) node[below]{$a_0$};
+   \draw (B-in) -- ++(-0.5, 0) node[below]{$a_1$};
+   \draw (A-AND1.in 2) to[short, -*] (A-AND2.in 1)
+      to[short, -*] (B-AND1.in 2) to[short, -*] (B-AND2.in 1)
+      -- ++(0, -2) coordinate(down) node[below]{ENABLE};
+   \draw (A-FF.pin 2) to[short, -*] (B-FF.pin 2)
+      -- (B-FF.pin 2 |- down) node[below]{CP};
+   \draw (B-FF.down) to[short, -*] ++(0,-0.3) coordinate(dd);
+   \draw (A-FF.down) -- ++(0,-.5) -- ++(1.5,0) |- (dd)
+      -- (dd |- down) node[below]{RESET};
+\endcircu
+
+
+\bye
+


Property changes on: trunk/Master/texmf-dist/doc/generic/olsak-misc/circu.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/generic/olsak-misc/cropmarks.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/olsak-misc/cropmarks.tex	2025-04-10 20:07:04 UTC (rev 74905)
+++ trunk/Master/texmf-dist/tex/generic/olsak-misc/cropmarks.tex	2025-04-10 20:08:21 UTC (rev 74906)
@@ -11,6 +11,7 @@
 \newdimen\overlap
 \newcount\tmpnum
 \newcount\hmiddle  \newcount\vmiddle
+\newdimen\sheetw   \newdimen\sheeth
 
 %% Defaults:
 
@@ -92,6 +93,13 @@
    \pdfpageheight=\dimexpr\ht0+\dp0-2\overlap+2\vmargin \relax
    \hoffset=\hmargin \advance\hoffset by-\pdfhorigin
    \voffset=\vmargin \advance\voffset by-\pdfvorigin
+   \ifdim\sheetw=0pt \else 
+      \ifdim\sheetw<\pdfpagewidth  \warn{Sheet size is too small, ignored}\else
+      \ifdim\sheeth<\pdfpageheight \warn{Sheet size is too small, ignored}\else
+         \advance\hoffset by.5\dimexpr \sheetw-\pdfpagewidth \relax
+         \advance\voffset by.5\dimexpr \sheeth-\pdfpageheight\relax
+         \pdfpagewidth=\sheetw \pdfpageheight=\sheeth 
+   \fi\fi\fi 
    %
    \pageno=1
    \shipout\cropmarks{\box0}
@@ -104,7 +112,31 @@
    \end
 }
 \let\\=\undefined % for better elimination of bad command line syntax
+\def\warn#1{\wterm{WARNING: #1.}}
 
+\def\sheetsize {\futurelet\next\sheetsizeA}
+\def\sheetsizeA {\ifx\next(\expandafter\sheetsizeB \else \expandafter\sheetsizeC \fi} 
+\def\sheetsizeB (#1,#2)#3 {\sheetw=#1#3\relax \sheeth=#2#3\relax}
+\def\sheetsizeC #1 {\ifcsname sheet:#1\endcsname \csname sheet:#1\endcsname 
+                    \else \warn{Unknown sheet type "#1", ignored}\fi}
+\def\sheetdecl #1 (#2,#3)#4 {%
+   \expandafter\def \csname sheet:#1\endcsname  {\sheetsizeB (#2,#3)#4 }% portrait
+   \expandafter\def \csname sheet:#1l\endcsname {\sheetsizeB (#3,#2)#4 }% landscape
+} 
+\sheetdecl a0  (841,1189)mm
+\sheetdecl a1  (594,841)mm
+\sheetdecl a2  (420,594)mm
+\sheetdecl a3  (297,420)mm
+\sheetdecl a4  (210,297)mm
+\sheetdecl a5  (148,210)mm
+\sheetdecl b0  (1000,1414)mm
+\sheetdecl b1  (707,1000)mm
+\sheetdecl b2  (500,707)mm
+\sheetdecl b3  (353,500)mm
+\sheetdecl b4  (250,353)mm
+\sheetdecl b5  (176,250)mm
+\sheetdecl letter (8.5,11)in
+
 \frenchspacing
 \def\othe #1{\ifnum#1<10 0\fi\the#1}
 \def\today {\the\year-\othe\month-\othe\day}   % you can re-define this format
@@ -174,6 +206,21 @@
 
 You can use optex instead pdftex, of course.
 
+If you are printing at duplex printer then the pages at front
+and back sides must be ovelapping. It means that you must know the real
+sheet size used in the printer and the printed material is centered in it.
+If this case is true then you can declare \sheetsize (width,height)unit for
+example \sheetsize (800,600)mm or you can use predeclared types by
+\sheetsize sheet-type, where sheet-type is one of a0, a1, a2, a3, a4, a5,  
+a0l, a1l, a2l, a3l, a4l, a5l, b0, b1, b2, b3, b4, b5, b0l, b1l, b2l, b3l,
+b4l, b5l, letter, letterl. When \sheetsize is declaed then PDF output
+dimensions are set to these values and the input pages including crop marks
+are put to the middle of sheet. The declared sheet must have greater or
+equal sizes to input page size enlarged by margins for crop marks, otherwise
+the \sheetsize declaration is ignored. Default: \sheetsize isn't declared,
+i.e. the PDF output dimensions are exacty calculated from input dimensions
+enlarged by margins for crop marks.  
+
 If you want to put more pages to one sheet then you have to do this job
 first and then you can add cropmarks for whole sheets. Use another software
 (or your TeX macro or use OpTeX trick 0088) for creating sheets and create a



More information about the tex-live-commits mailing list.