From 78436297914964d5e7511d25089ab862ea4bc6a3 Mon Sep 17 00:00:00 2001 From: lostclus Date: Sun, 17 Jan 2010 17:04:40 +0000 Subject: [PATCH] Merged eskdfreesize.sty from Uladzimir Pylinsky branch into trunk. git-svn-id: http://svn.eskdx.org.ua/trunk@153 2a151163-057f-4505-9b5b-893921111998 --- NEWS.in | 6 ++ manifest.txt | 1 + manual/eskdx.tex.in | 115 +++++++++++++++++++++++++++- source/eskdfreesize.sty.in | 177 ++++++++++++++++++++++++++++++++++++++++++++ source/eskdrussian.def.in | 2 + source/eskdstamp.sty.in | 24 +++++- source/eskdukrainian.def.in | 2 + test/freesizesheets.tex | 105 ++++++++++++++++++++++++++ 8 files changed, 426 insertions(+), 6 deletions(-) create mode 100644 source/eskdfreesize.sty.in create mode 100644 test/freesizesheets.tex diff --git a/NEWS.in b/NEWS.in index c43f30a..bc21ee3 100644 --- a/NEWS.in +++ b/NEWS.in @@ -1,3 +1,9 @@ +2010/XX/XX v0.98 +---------------- + + * òÅÁÌÉÚÏ×ÁÎÁ ×ÏÚÍÏÖÎÏÓÔØ ×ÓÔÁ×ËÉ ÌÉÓÔÁ ÎÅÓÔÁÎÄÁÒÔÎÏÇÏ ÒÁÚÍÅÒÁ + × ÄÏËÕÍÅÎÔ (eskdfreesize.sty) + 2006/12/17 v0.97 ---------------- diff --git a/manifest.txt b/manifest.txt index 1c4bbfe..7e5b536 100644 --- a/manifest.txt +++ b/manifest.txt @@ -8,6 +8,7 @@ source/eskddstu.sty.in source/eskdexplan.sty.in source/eskdfont.sty.in source/eskdfootnote.sty.in +source/eskdfreesize.sty.in source/eskdgraph.cls.in source/eskdhash.sty.in source/eskdindent.sty.in diff --git a/manual/eskdx.tex.in b/manual/eskdx.tex.in index d071273..a9c71d5 100644 --- a/manual/eskdx.tex.in +++ b/manual/eskdx.tex.in @@ -676,7 +676,8 @@ m4_END_OPTTBL \label{s:pagestyles} ëÁÖÄÁÑ ÓÔÒÁÎÉÃÁ ÏÆÏÒÍÌÑÅÔÓÑ × ÓÏÏÔ×ÅÔÓÔ×ÉÉ Ó ÏÐÒÅÄÅÌÅÎÎÙÍ ÓÔÉÌÅÍ ÓÔÒÁÎÉÃÙ. óÕÝÅÓÔ×ÕÀÔ ÔÁËÉÅ ÐÒÅÄÏÐÒÅÄÅÌÅÎÎÙÅ ÓÔÉÌÉ ÓÔÒÁÎÉÃ: -\val{empty}, \val{title}, \val{formI}, \val{formII}, \val{formIIab}. +\val{empty}, \val{title}, \val{formI}, \val{formII}, \val{formIIab}, +\val{freesize}. óÔÉÌØ \val{empty} "--- ÜÔÏ ÐÕÓÔÏÊ ÓÔÉÌØ, × ÎÅÍ ÎÅÔ ÎÉ ÒÁÍËÉ, ÎÉ ÏÓÎÏ×ÎÏÊ ÎÁÄÐÉÓÉ, ÎÉ ÄÏÐÏÌÎÉÔÅÌØÎÙÈ ÇÒÁÆ. óÔÉÌØ \val{title} ÐÒÅÄÎÁÚÎÁÞÅÎ ÄÌÑ ÔÉÔÕÌØÎÏÇÏ ÌÉÓÔÁ, × ÎÅÍ ÅÓÔØ ÒÁÍËÁ É ÄÏÐÏÌÎÉÔÅÌØÎÙÅ @@ -684,7 +685,9 @@ m4_END_OPTTBL É ÆÏÒÍÅ~2 ÐÏ \gost{2.104} ÓÏÏÔ×ÅÔÓÔ×ÅÎÎÏ, ÉÍÅÀÔ ÒÁÍËÕ, ÏÓÎÏ×ÎÕÀ ÎÁÄÐÉÓØ É ÄÏÐÏÌÎÉÔÅÌØÎÙÅ ÇÒÁÆÙ. óÔÉÌØ \val{formIIab} ÓÏÏÔ×ÅÔÓÔ×ÕÅÔ ÆÏÒÍÅ 2 ÎÁ ÞÅÔÎÏÊ ÓÔÒÁÎÉÃÅ ÐÒÉ Ä×ÕÓÔÏÒÏÎÎÅÊ ÐÅÞÁÔÉ, É ÆÏÒÍÅ 2Á × -ÏÓÔÁÌØÎÙÈ ÓÌÕÞÁÑÈ. +ÏÓÔÁÌØÎÙÈ ÓÌÕÞÁÑÈ. óÔÉÌØ \val{freesize} ÉÓÐÏÌØÚÕÅÔÓÑ ÄÌÑ ÌÉÓÔÏ× +ÐÒÏÉÚ×ÏÌØÎÏÇÏ ÒÁÚÍÅÒÁ, ÐÏÄÒÏÂÎÏÅ ÏÐÉÓÁÎÉÅ ÐÒÉ×ÅÄÅÎÏ × +ÒÁÚÄÅÌÅ~\ref{s:freesize} íÅÎÑÔØ ÓÔÉÌØ ÓÔÒÁÎÉÃÙ ÍÏÖÎÏ ÉÓÐÏÌØÚÕÑ ËÏÍÁÎÄÙ \begin{defs} @@ -902,6 +905,111 @@ m4_END_OPTTBL ðÁËÅÔ \pkg{eskdplain} ÕÓÔÁÎÁ×ÌÉ×ÁÅÔ ÓÔÉÌØ \val{empty} × ËÁÞÅÓÔ×Å ÓÔÉÌÑ ÔÉÔÕÌØÎÏÇÏ ÌÉÓÔÁ É ÓÔÉÌØ \val{plain} ÄÌÑ ×ÓÅÈ ÏÓÔÁÌØÎÙÈ ÓÔÒÁÎÉÃ. +\subsection{äÏÂÁ×ÌÅÎÉÅ ÌÉÓÔÁ ÎÅÓÔÁÎÄÁÒÔÎÏÇÏ ÒÁÚÍÅÒÁ × ÄÏËÕÍÅÎÔ} +\label{s:freesize} + +\subsubsection{ïÂÝÁÑ ÉÎÆÏÒÍÁÃÉÑ} + +\textbf{ðÏ ÓÏÓÔÏÑÎÉÀ ÎÁ 2010-01-12 ÄÁÎÎÁÑ ×ÏÚÍÏÖÎÏÓÔØ Ñ×ÌÑÅÔÓÑ +ÜËÓÐÅÒÉÍÅÎÔÁÌØÎÏÊ É ÎÕÖÄÁÅÔÓÑ × ÔÅÓÔÉÒÏ×ÁÎÉÉ É ÄÏ×ÏÄËÅ. æÏÒÍÁÔ ËÏÍÁÎÄ +× ÂÕÄÕÝÅÍ ÍÏÖÅÔ ÂÙÔØ ÉÚÍÅÎÅÎ.} + +éÎÏÇÄÁ ÂÙ×ÁÅÔ ÎÅÏÂÈÏÄÉÍÏ ×ÓÔÁ×ÉÔØ × ÄÏËÕÍÅÎÔ ÆÏÒÍÁÔÁ á4 ÎÅÓËÏÌØËÏ +ÌÉÓÔÏ× ÆÏÒÍÁÔÁ á3 × ÁÌØÂÏÍÎÏÊ ÏÒÉÅÎÔÁÃÉÉ. ó ÐÏÍÏÝØÀ ÐÁËÅÔÁ +\pkg{eskdfreesize} ÍÏÖÎÏ ×ÓÔÁ×ÉÔØ ÌÉÓÔ ÌÀÂÏÇÏ ÒÁÚÍÅÒÁ × ÌÀÂÏÊ +ÏÒÉÅÎÔÁÃÉÉ. + +÷ ÐÁËÅÔÅ ÏÐÒÅÄÅÌÅÎÁ ÓÌÅÄÕÀÝÁÑ ËÏÍÁÎÄÁ: +\begin{defs} + \cmddef{ESKDfreeSize\{\cmdarg{ÛÉÒÉÎÁ}\}% + \{\cmdarg{×ÙÓÏÔÁ}\}\{\cmdarg{ÓÏÄÅÒÖÉÍÏÅ}\}}{} +\end{defs} + +ðÅÒ×ÙÅ~2 ÁÒÇÕÍÅÎÔÁ~--- ÒÁÚÍÅÒÙ ÌÉÓÔÁ × ÅÄÉÎÉÃÁÈ, ÐÏÎÑÔÎÙÈ \LaTeX. +ôÒÅÔÉÊ ÁÒÇÕÍÅÎÔ~--- ÓÏÄÅÒÖÉÍÏÅ, ËÏÔÏÒÏÅ ÎÅÏÂÈÏÄÉÍÏ ÒÁÚÍÅÓÔÉÔØ ÎÁ +ÄÁÎÎÏÍ ÌÉÓÔÅ. ÷ ËÁÞÅÓÔ×Å ÓÏÄÅÒÖÉÍÏÇÏ ÍÏÇÕ ×ÙÓÔÕÐÁÔØ ÒÉÓÕÎËÉ, ÔÁÂÌÉÃÙ, +ÔÅËÓÔ É Ô.Ä. + +äÁÎÎÁÑ ËÏÍÁÎÄÁ ÐÒÉ ×ÙÚÏ×Å Á×ÔÏÍÁÔÉÞÅÓËÉ ÎÁÞÉÎÁÅÔ ÎÏ×ÙÊ ÌÉÓÔ. åÓÌÉ ×ÓÅ +ÓÏÄÅÒÖÉÍÏÅ ÎÅ ÐÏÍÅÓÔÉÔÓÑ ÎÁ ÏÄÉÎ ÌÉÓÔ~--- ÂÕÄÅÔ ÎÁÞÁÔ ÓÌÅÄÕÀÝÉÊ ÌÉÓÔ +ÔÁËÏÇÏ ÖÅ ÎÅÓÔÁÎÄÁÒÔÎÏÇÏ ÒÁÚÍÅÒÁ ÄÏ ÔÅÈ ÐÏÒ, ÐÏËÁ ×ÓÅ ÓÏÄÅÒÖÉÍÏÅ ÎÅ +ÂÕÄÅÔ ÒÁÚÍÅÝÅÎÏ. + +îÅÓÔÁÎÄÁÒÔÎÙÅ ÌÉÓÔÙ ÏÆÏÒÍÌÑÀÔÓÑ × ÓÐÅÃÉÁÌØÎÏÍ ÓÔÉÌÅ \val{freesize} +(ÐÏÄÒÏÂÎÅÅ Ï ÕÐÒÁ×ÌÅÎÉÉ ÓÔÉÌÑÍÉ ÓÍ. ÒÁÚÄÅÌ~\ref{s:pagestyles}) äÁÎÎÙÊ +ÓÔÉÌØ ÓÁÍ ÐÏÄÂÉÒÁÅÔ ÒÁÚÍÅÒ ÒÁÍËÉ É ÐÏÌÏÖÅÎÉÅ ÜÌÅÍÅÎÔÏ× ÏÓÎÏ×ÎÏÊ +ÎÁÄÐÉÓÉ × ÚÁ×ÉÓÉÍÏÓÔÉ ÏÔ ÒÁÚÍÅÒÏ× ÌÉÓÔÁ. óÔÉÌØ \val{freesize} ÃÅÌÉËÏÍ +<<ÕÎÁÓÌÅÄÏ×ÁÎ>> ÏÔ ÓÔÉÌÑ \val{formIIab} ÚÁ ÉÓËÌÀÞÅÎÉÅÍ ÇÒÁÆÙ 32 ÐÏ +ÐÒÉÞÉÎÅ ÔÏÇÏ, ÞÔÏ ÆÏÒÍÁÔ ÌÉÓÔÁ ÚÁÒÁÎÅÅ ÎÅ ÉÚ×ÅÓÔÅÎ. ðÏ ÕÍÏÌÞÁÎÉÀ ÇÒÁÆÁ +32 × ÄÁÎÎÏÍ ÓÔÉÌÅ ÓÏÄÅÒÖÉÔ ÔÏÌØËÏ ÓÌÏ×Ï \cmdarg{<<æÏÒÍÁÔ>>} Ó +ÐÏÓÌÅÄÕÀÝÉÍ ÐÒÏÂÅÌÏÍ. üÔÕ ÇÒÁÆÕ ÍÏÖÎÏ ÏÔËÌÀÞÉÔØ ×Ï ×ÓÅÍ ÄÏËÕÍÅÎÔÅ +(ÏÐÃÉÑ \opt{nocolumnxxxii}), ÍÏÖÎÏ ÕÄÁÌÉÔØ ÉÚ ÓÔÉÌÑ \val{freesize} Ó +ÐÏÍÏÝØÀ ËÏÍÁÎÄÙ: +\begin{defs} + \cmddef{ESKDremoveFromStyle\{\cmdarg{freesize}\}\{% + \cmdarg{columnxxxii}\}}{,} +\end{defs} + +ÎÁËÏÎÅÃ, ÍÏÖÎÏ ×ÒÕÞÎÕÀ ÐÅÒÅÏÐÒÅÄÅÌÉÔØ ÅÅ ÓÏÄÅÒÖÉÍÏÅ, ÎÁÐÒÉÍÅÒ: +\begin{defs} + \cmddef{renewcommand\textbackslash + ESKDtheColumnXXXIIfree\{\cmdarg{æÏÒÍÁÔ á3}\}}{} +\end{defs} + +ðÅÒÅÏÐÒÅÄÅÌÑÔØ ÅÅ ÎÅÏÂÈÏÄÉÍÏ ÐÅÒÅÄ ×ÙÚÏ×ÏÍ \cmd{ESKDfreeSize}. + +äÌÑ ÕÄÏÂÓÔ×Á, Á ÔÁË ÖÅ × ËÁÞÅÓÔ×Å ÐÒÉÍÅÒÏ× × ËÏÎÃÅ +\pkg{eskdfreesize.sty} ÂÙÌÉ ÏÐÒÅÄÅÌÅÎÙ ÓÌÅÄÕÀÝÉÅ ËÏÍÁÎÄÙ: +\begin{defs} + \cmddef{ESKDlandscapeAIII}{} + \cmddef{ESKDportraitAIII}{} + \cmddef{ESKDlandscapeAII}{} + \cmddef{ESKDportraitAII}{} + \cmddef{ESKDlandscapeAI}{} + \cmddef{ESKDportraitAI}{} + \cmddef{ESKDlandscapeAZERO}{} + \cmddef{ESKDportraitAZERO}{} + \cmddef{ESKDlandscapeBanner}{} +\end{defs} + +îÁÚÎÁÞÅÎÉÅ ËÏÍÁÎÄ ÐÏÎÑÔÎÏ ÉÚ ÉÈ ÎÁÚ×ÁÎÉÊ, ×ÓÅ ÏÎÉ ÐÒÉÎÉÍÁÀÔ ÏÄÉÎ +ÁÒÇÕÍÅÎÔ~--- ÓÏÄÅÒÖÉÍÏÅ. + +\subsubsection{äÏÐÏÌÎÉÔÅÌØÎÙÅ ×ÏÚÍÏÖÎÏÓÔÉ} + +äÌÑ ÕÄÏÂÓÔ×Á ÐÏÓÌÅÄÕÀÝÅÊ Á×ÔÏÍÁÔÉÞÅÓËÏÊ ÓÏÒÔÉÒÏ×ËÉ ÓÔÒÁÎÉà ÒÁÚÎÏÇÏ +ÆÏÒÍÁÔÁ ÐÏ ÒÁÚÎÙÍ ÆÁÊÌÁÍ (ÎÁÐÒÉÍÅÒ, Ó ÐÏÍÏÝØÀ ÕÔÉÌÉÔÙ \pkg{pdftk}) +ÆÁËÔ ×ÓÔÁ×ËÉ ÎÅÓÔÁÎÄÁÒÔÎÙÈ ÌÉÓÔÏ× ÆÉËÓÉÒÕÅÔÓÑ × \opt{jobname.log} × +ÓÌÅÄÕÀÝÅÍ ÆÏÒÍÁÔÅ: +\small + \begin{verbatim} + eskdfreesize: sheet(s) with size (W x H) inserted at page(s) [RANGE]\end{verbatim} +\normalsize +\begin{ESKDexplanation} +\item [ÇÄÅ ] W --- ÛÉÒÉÎÁ; +\item H --- ×ÙÓÏÔÁ; +\item RANGE --- ÄÉÁÐÁÚÏÎ ÎÏÍÅÒÏ× ÓÔÒÁÎÉÃ × ×ÉÄÅ \mbox{[$N_1$-$N_2$]}, + ÌÉÂÏ [$N_1$], ÅÓÌÉ ÓÔÒÁÎÉÃÁ ÔÏÌØËÏ ÏÄÎÁ. +\end{ESKDexplanation} + +îÁÐÒÉÍÅÒ, ÄÌÑ ÁÌØÂÏÍÎÏÇÏ ÌÉÓÔÁ á3, ÐÏÐÁ×ÛÅÇÏ ÎÁ 20-À ÓÔÒÁÎÉÃÕ, +ÚÁÐÉÓØ ÂÕÄÅÔ ÓÌÅÄÕÀÝÅÊ: +\small + \begin{verbatim} + eskdfreesize: sheet(s) with size (420mm x 297mm) inserted at page(s) [20]\end{verbatim} +\normalsize + +\subsubsection{ïÇÒÁÎÉÞÅÎÉÑ É ÎÅÄÏÓÔÁÔËÉ} + +÷ ÐÅÒ×ÕÀ ÏÞÅÒÅÄØ, ÏÇÒÁÎÉÞÅÎÉÑ ÐÏ ÒÁÚÍÅÒÕ. õ Adobe Acrobat ÏÇÒÁÎÉÞÅÎÉÅ +ÎÁ ÒÁÚÍÅÒ ÌÉÓÔÁ 200È200in, Õ pdflatex~--- 16383x16383pt. + +óÌÅÄÕÀÝÅÅ ÏÇÒÁÎÉÞÅÎÉÅ Ó×ÑÚÁÎÏ Ó ÉÓÐÏÌØÚÕÅÍÙÍ ÉÎÔÅÒÐÒÅÔÁÔÏÒÏÍ: +ÉÚÍÅÎÅÎÉÅ ÒÁÚÍÅÒÁ ×ÏÚÍÏÖÎÏ ÔÏÌØËÏ ÐÒÉ ÐÒÑÍÏÊ ËÏÍÐÉÌÑÃÉÉ × *.pdf c +ÐÏÍÏÝØÀ pdflatex. îÅ ÓÍÏÔÒÑ ÎÁ ÔÏ, ÞÔÏ latex ÔÏÖÅ ÓÍÏÖÅÔ ÏÂÒÁÂÏÔÁÔØ +ÔÁËÏÊ ÄÏËÕÍÅÎÔ, ×ÓÅ ÌÉÓÔÙ, ÒÁÚÍÅÒ ËÏÔÏÒÙÈ ÂÏÌØÛÅ ÚÁÄÁÎÎÏÇÏ × +\cmd{documentclass} ÂÕÄÕÔ ÏÂÒÅÚÁÎÙ. + \newpage \section{âÌÁÇÏÄÁÒÎÏÓÔÉ} \sloppy @@ -916,6 +1024,9 @@ m4_END_OPTTBL ïÔÄÅÌØÎÁÑ ÂÌÁÇÏÄÁÒÎÏÓÔØ áÌÅËÓÁÎÄÒÕ òÏÖÅÎËÏ ÚÁ ÅÇÏ ËÏÌÌÅËÃÉÀ ÐÁËÅÔÏ× \pkg{ncctools}, ÏÔËÕÄÁ Ñ ÐÏÚÁÉÍÓÔ×Ï×ÁÌ ÎÅËÏÔÏÒÙÅ ÐÒÉÎÃÉÐÙ. +óÐÁÓÉÂÏ ÷ÌÁÄÉÍÉÒÕ ðÙÌÉÎÓËÏÍÕ ÚÁ ÅÇÏ ×ËÌÁÄ (\pkg{eskdfreesize}, É +ÄÒÕÇÉÅ ÕÌÕÞÛÅÎÉÑ). + á ÔÁËÖÅ ÓÐÁÓÉÂÏ ëÉÅ×ÓËÏÍÕ ÔÅÈÎÉËÕÍÕ ÜÌÅËÔÒÏÎÎÙÈ ÐÒÉÂÏÒÏ×, ËÏÔÏÒÙÊ ÐÏÂÕÄÉÌ ÍÅÎÑ ÎÁ ÒÁÚÒÁÂÏÔËÕ ËÏÌÌÅËÃÉÉ \pkg{eskdx}. åÓÌÉ ÂÙ ÎÅ ËÕÒÓÏ×ÙÅ É ÄÉÐÌÏÍÎÁÑ, Ñ ÂÙ ÜÔÏÇÏ ÎÅ ÄÅÌÁÌ. diff --git a/source/eskdfreesize.sty.in b/source/eskdfreesize.sty.in new file mode 100644 index 0000000..de39e24 --- /dev/null +++ b/source/eskdfreesize.sty.in @@ -0,0 +1,177 @@ +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% This Current Maintainer of this work is Konstantin Korikov. +% +% This work consists of all files listed in manifest.txt. +% + +% ðÁËÅÔ ÐÒÅÄÏÓÔÁ×ÌÑÅÔ ×ÏÚÍÏÖÎÏÓÔØ ×ÓÔÁ×ËÉ ÌÉÓÔÁ +% ÐÏÞÔÉ ÌÀÂÏÇÏ ÒÁÚÍÅÒÁ (ÏÇÒÁÎÉÞÅÎÉÑ ÏÐÉÓÁÎÙ × ÒÕËÏ×ÏÄÓÔ×Å +% ÐÏÌØÚÏ×ÁÔÅÌÑ eskdx): + +m4_ESKDX_INIT +m4_FILE_INIT +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{eskdfreesize}[m4_dnl +m4_FILE_ID([[$Date:: $]]) Inserting Free Size Sheets] + +\RequirePackage{eskdstamp} + +% ÐÅÒÅËÌÀÞÅÎÉÅ ÒÁÚÍÅÒÁ ×ÏÚÍÏÖÎÏ ÔÏÌØËÏ × pdflatex. +% TÅÍ ÎÅ ÍÅÎÅÅ, latex ÔÏÖÅ ÓÍÏÖÅÔ ÓÏÂÒÁÔØ ÔÁËÏÊ ÄÏËÕÍÅÎÔ, +% ÎÏ ×ÓÅ ÂÏÌØÛÉÅ ÓÔÒÁÎÉÃÙ +% ÏÂÒÅÖÅÔ ÐÏ ÒÁÚÍÅÒÁÍ ÆÏÒÍÁÔÁ, ÕÓÔÁÎÏ×ÌÅÎÎÏÇÏ × documentclass +\RequirePackage{ifpdf} +\ifpdf{} +\else{\PackageWarningNoLine{eskdfreesize} + {It's better to compile this document with pdflatex.\MessageBreak + In DVI you will get only part of the inserted big sheet}} +\fi + + + +% × eskdstamp ÄÌÑ ÕÓËÏÒÅÎÉÑ ÏÔÒÉÓÏ×ËÉ ÒÁÍËÉ ÐÒÉÍÅÎÅÎ \savebox +% × ÎÁÛÅÍ ÓÌÕÞÁÅ ÜÔÏ ÎÅÕÄÏÂÎÏ, ÂÕÄÅÍ ÒÉÓÏ×ÁÔØ ÐÅÒÓÏÎÁÌØÎÏ +% ÎÁ ËÁÖÄÏÊ ÓÔÒÁÎÉÃÅ +\newcommand{\ESKDdrawFrameFree}{% + \put(\ESKDltu{\ESKDframeX},\ESKDltu{\ESKDframeY}){% + \setlength{\unitlength}{1mm}% + \begin{picture}(0,0)(0,0) + \linethickness{\ESKDlineThick} + \put(0,\ESKDltu{\ESKDframeH}){\line(1,0){\ESKDltu{\ESKDframeW}}} + \put(0,0){\line(1,0){\ESKDltu{\ESKDframeW}}} + \put(0,0){\line(0,1){\ESKDltu{\ESKDframeH}}} + \put(\ESKDltu{\ESKDframeW},0){\line(0,1){\ESKDltu{\ESKDframeH}}} + \end{picture}}} + +% ÓÏÄÅÒÖÉÍÏÅ ÎÅÓÔÁÎÄÁÒÔÎÏÊ ÇÒÁÆÙ 32 ÐÏ ÕÍÏÌÞÁÎÉÀ +\newcommand\ESKDtheColumnXXXIIfree{\@nameuse{ESKDemptyFormatName}} + +% ÏÐÒÅÄÅÌÉÍ ÎÁÛÕ ÓÏÂÓÔ×ÅÎÎÕÀ ÎÅÓÔÁÎÄÁÒÔÎÕÀ ÇÒÁÆÕ 32 +\newcommand{\ESKDdrawColumnXXXIIfree}{% + \setlength{\ESKD@tmpdima}{\ESKDframeX+\ESKDframeW-50mm}% + \setlength{\ESKD@tmpdimb}{\ESKDframeY-3.7mm}% + \put(\ESKDltu{\ESKD@tmpdima},\ESKDltu{\ESKD@tmpdimb}){% + \makebox[50mm][r]{\ESKDfontIII\ESKDtheColumnXXXIIfree}}} + + + +% ïÐÒÅÄÅÌÉÍ ÎÏ×ÙÊ ÓÔÉÌØ. ðÏÄÒÏÂÎÅÅ ÐÒÏ ÏÐÒÅÄÅÌÅÎÉÅ Ó×ÏÉÈ ÓÔÉÌÅÊ +% ÍÏÖÎÏ ÐÒÏÞÉÔÁÔØ × ÒÕËÏ×ÏÄÓÔ×Å ÐÏÌØÚÏ×ÁÔÅÌÑ eskdx, +% ÉÌÉ ÚÁÇÌÑÎÕÔØ × eskdstamp.sty, +% ËÕÓÏË ÏÔÔÕÄÁ ÂÙÌ ÉÓÐÏÌØÚÏ×ÁÎ ËÁË ÏÓÎÏ×Á ÄÌÑ ÓÔÉÌÑ freesize +\ESKDnewStyle{freesize}{8mm} +\ESKDputOnStyle{freesize}{frame}{\ESKDdrawFrameFree} +\ESKDputOnStyle{freesize}{stamp}{\ESKDdrawStampIIa} +\ifESKD@enable@columns@xix + \ESKDputOnStyle{freesize}{columnsxix}{\ESKDdrawColumnsXIX} +\fi +\ifESKD@enable@columns@xxiv + \ESKDputOnStyle{freesize}{columnsxxiv}{\ESKDdrawColumnsXXIV} +\fi +\ifESKD@enable@column@xxvi + \ESKDputOnStyle{freesize}{columnxxvi}{\ESKDdrawColumnXXVI} +\fi +\ifESKD@enable@columns@xxvii + \ESKDputOnStyle{freesize}{columnsxxvii}{\ESKDdrawColumnsXXVIIi} +\fi +\ifESKD@enable@column@xxxi + \ESKDputOnStyle{freesize}{columnxxxi}{\ESKDdrawColumnXXXI} +\fi +\ifESKD@enable@column@xxxii + % ÎÁÛÁ ÎÏ×ÁÑ ÇÒÁÆÁ 32 + \ESKDputOnStyle{freesize}{columnxxxii}{\ESKDdrawColumnXXXIIfree} +\fi +\ifESKD@enable@column@xxxiii + \ESKDputOnStyle{freesize}{columnxxxiii}{\ESKDdrawColumnXXXIII} +\fi +\ifESKD@enable@column@xxxiv + \ESKDputOnStyle{freesize}{columnxxxiv}{\ESKDdrawColumnXXXIV} +\fi +\ifESKD@zonelabels% + \ESKDputOnStyle{freesize}{zonelabels}{\ESKDdrawZoneLabelsI} +\fi + + +% ×ÓÐÏÍÏÇÁÔÅÌØÎÙÅ ÓÞÅÔÞÉËÉ ÄÌÑ ÚÁÐÉÓÅÊ × ÌÏÇ +\newcounter{ESKD@free@sizepagebegin} +\newcounter{ESKD@free@sizepageend} + +% ÔÅÐÅÒØ ÓÁÍÏÅ ÓÌÏÖÎÏÅ - ÓÁÍ ÐÅÒÅËÌÀÞÁÔÅÌØ +\newcommand{\ESKDfreeSize}[3]{% + \ESKDclearDoublePage% + \setcounter{ESKD@free@sizepagebegin}{\value{page}}% ÚÁÐÏÍÎÉÍ ÔÅËÕÝÕÀ ÓÔÒÁÎÉÃÕ + \pdfpagewidth=#1% + \pdfpageheight=#2% + \setlength{\ESKD@origin@y}{#2-1in}% + \setlength{\ESKDframeW}{\pdfpagewidth-\ESKD@margin@si-\ESKD@margin@so}% + \setlength{\ESKDframeH}{\pdfpageheight-\ESKD@margin@t-\ESKD@margin@b}% + \ESKDstyle{freesize}% + \expandafter{#3}% + % ÚÁÆÉËÓÉÒÕÅÍ ÆÁËÔ ×ÓÔÁ×ËÉ ÌÉÓÔÁ × \jobname.log + \ESKDclearDoublePage% + \renewcommand\ESKDtheColumnXXXIIfree{\@nameuse{ESKDemptyFormatName}}% ÓÂÒÏÓ ÇÒÁÆÙ 32 + \setcounter{ESKD@free@sizepageend}{\value{page}}% + \addtocounter{ESKD@free@sizepageend}{-1}% + \ifthenelse{\value{ESKD@free@sizepagebegin}<\value{ESKD@free@sizepageend}}% ÌÁÔÅÈ ÎÁÞÁÌ ÎÏ×ÕÀ ÓÔÒÁÎÉÃÕ + {\immediate\write0{eskdfreesize: sheet(s) with size (#1 x #2) inserted + at page(s) \noexpand[\arabic{ESKD@free@sizepagebegin}% + -\arabic{ESKD@free@sizepageend}\noexpand]}} + {\immediate\write0{eskdfreesize: sheet(s) with size (#1 x #2) inserted + at page(s) \noexpand[\arabic{ESKD@free@sizepageend}\noexpand]}} + % ÔÅÐÅÒØ ×ÅÒÎÅÍ ×Ó£ ËÁË ÂÙÌÏ ÄÏ ÎÁÓ + \setlength{\ESKD@origin@y}{\paperheight-1in}% + \pdfpageheight=\paperheight% + \pdfpagewidth=\paperwidth% + \setlength{\ESKDframeW}{\paperwidth-\ESKD@margin@si-\ESKD@margin@so}% + \setlength{\ESKDframeH}{\paperheight-\ESKD@margin@t-\ESKD@margin@b}% + \ESKDstyle{\ESKD@default@style@other}% + \newpage% +} + + +% ïÐÒÅÄÅÌÉÍ ÎÅÓËÏÌØËÏ ÇÏÔÏ×ÙÈ Ë ÕÐÏÔÒÅÂÌÅÎÉÀ ÆÏÒÍÁÔÏ× +\newcommand{\ESKDlandscapeAIII}[1]{% + \renewcommand\ESKDtheColumnXXXIIfree{\@nameuse{ESKDa3FormatName}}% + \ESKDfreeSize{420mm}{297mm}{#1}} + +\newcommand{\ESKDportraitAIII}[1]{% + \renewcommand\ESKDtheColumnXXXIIfree{\@nameuse{ESKDa3FormatName}}% + \ESKDfreeSize{297mm}{420mm}{#1}} + +\newcommand{\ESKDlandscapeAII}[1]{% + \renewcommand\ESKDtheColumnXXXIIfree{\@nameuse{ESKDa2FormatName}}% + \ESKDfreeSize{594mm}{420mm}{#1}} + +\newcommand{\ESKDportraitAII}[1]{% + \renewcommand\ESKDtheColumnXXXIIfree{\@nameuse{ESKDa2FormatName}}% + \ESKDfreeSize{420mm}{594mm}{#1}} + +\newcommand{\ESKDlandscapeAI}[1]{% + \renewcommand\ESKDtheColumnXXXIIfree{\@nameuse{ESKDa1FormatName}}% + \ESKDfreeSize{841mm}{594mm}{#1}} + +\newcommand{\ESKDportraitAI}[1]{% + \renewcommand\ESKDtheColumnXXXIIfree{\@nameuse{ESKDa1FormatName}}% + \ESKDfreeSize{594mm}{841mm}{#1}} + +\newcommand{\ESKDlandscapeAZERO}[1]{% + \renewcommand\ESKDtheColumnXXXIIfree{\@nameuse{ESKDa0FormatName}}% + \ESKDfreeSize{1189mm}{841mm}{#1}} + +\newcommand{\ESKDportraitAZERO}[1]{% + \renewcommand\ESKDtheColumnXXXIIfree{\@nameuse{ESKDa0FormatName}}% + \ESKDfreeSize{841mm}{1189mm}{#1}} + +\newcommand{\ESKDlandscapeBanner}[1]{% + % ðÑÔÉÍÅÔÒÏ×ÏÅ ÐÏÌÏÔÎÏ ÄÌÑ ÐÏÄÛÉ×ËÉ ÇÁÒÍÏÛËÏÊ × ÏÂÙÞÎÕÀ ÐÁÐËÕ á4. + % ðÒÏÓÔÏ ÄÌÑ ÄÅÍÏÎÓÔÒÁÃÉÉ + \ESKDfreeSize{5000mm}{297mm}{#1}} diff --git a/source/eskdrussian.def.in b/source/eskdrussian.def.in index 0555ce3..44ddb1f 100644 --- a/source/eskdrussian.def.in +++ b/source/eskdrussian.def.in @@ -80,6 +80,8 @@ m4_FILE_ID([[$Date:: $]]) Language File] \cyr\CYRF\cyro\cyrr\cyrm\cyra\cyrt\ \CYRA{}3} \@namedef{ESKDa4FormatName}{% \cyr\CYRF\cyro\cyrr\cyrm\cyra\cyrt\ \CYRA{}4} +\@namedef{ESKDemptyFormatName}{% + \cyr\CYRF\cyro\cyrr\cyrm\cyra\cyrt\ \ \ \ } \newcommand{\ESKDcolumnXXXIIIname}{% \cyr\CYRZ\cyro\cyrn\cyra} diff --git a/source/eskdstamp.sty.in b/source/eskdstamp.sty.in index 01a7bb0..98cef98 100644 --- a/source/eskdstamp.sty.in +++ b/source/eskdstamp.sty.in @@ -969,7 +969,7 @@ m4_dnl \ESKDputOnStyle{formIIab}{zonelabels}{\ESKDdrawZoneLabelsII} \fi -m4_dnl ÔÅËÕÝÅÅ ÒÁÓÓÔÏÑÎÉÅ ÏÔ ÔÅËÓÁ ÄÏ ÒÁÍËÉ +m4_dnl ÔÅËÕÝÅÅ ÒÁÓÓÔÏÑÎÉÅ ÏÔ ÔÅËÓÔÁ ÄÏ ÒÁÍËÉ \newlength{\ESKD@curpad@h} \newlength{\ESKD@curpad@v} \setlength{\ESKD@curpad@h}{\ESKD@padding@h} @@ -1021,20 +1021,36 @@ m4_dnl \EveryShipout{\ESKD@ShipoutPicture} \RequirePackage{chngpage} +\RequirePackage{ifpdf} m4_dnl ÕÓÔÁÎÁ×ÌÉ×ÁÅÔ ÓÔÉÌØ ÔÅËÕÝÅÊ É ÐÏÓÌÅÄÕÀÝÉÈ ÓÔÒÁÎÉà +% \ESKD@tmpdima --- width +% \ESKD@tmpdimb --- height \newcommand{\ESKDstyle}[1]{% \pagestyle{empty}% \def\ESKD@curstyle{#1}% -\changetext{\paperheight-\ESKD@margin@t-\ESKD@margin@b-2\ESKD@curpad@v% - \expandafter-\@nameuse{ESKD@style@sh@\ifESKD@ignstamp empty\else #1\fi}-\textheight}{}{}{}{}% +\ifpdf% + \setlength{\ESKD@tmpdimb}{\pdfpageheight}% + \setlength{\ESKD@tmpdima}{\pdfpagewidth}% +\else% + \setlength{\ESKD@tmpdima}{\paperwidth}% + \setlength{\ESKD@tmpdimb}{\paperheight}% +\fi% +\changetext{\ESKD@tmpdimb-\ESKD@margin@t-\ESKD@margin@b-2\ESKD@curpad@v% + \expandafter-\@nameuse{ESKD@style@sh@\ifESKD@ignstamp empty\else #1\fi}-\textheight}% + {\ESKD@tmpdima-\ESKD@margin@si-\ESKD@margin@so-2\ESKD@padding@h-\textwidth}{}{}{}% \let\ESKD@thisstyle\@empty} m4_dnl ÕÓÔÁÎÁ×ÌÉ×ÁÅÔ ÓÔÉÌØ ÔÅËÕÝÅÊ ÓÔÒÁÎÉÃÙ \newcommand{\ESKDthisStyle}[1]{% \thispagestyle{empty}% \def\ESKD@thisstyle{#1}% -\setlength{\vsize}{\paperheight-\ESKD@margin@t-\ESKD@margin@b-2\ESKD@curpad@v% +\ifpdf% + \setlength{\ESKD@tmpdimb}{\pdfpageheight}% +\else% + \setlength{\ESKD@tmpdimb}{\paperheight}% +\fi% +\setlength{\vsize}{\ESKD@tmpdimb-\ESKD@margin@t-\ESKD@margin@b-2\ESKD@curpad@v% \expandafter-\@nameuse{ESKD@style@sh@\ifESKD@ignstamp empty\else #1\fi}}% \setlength{\@colht}{\vsize}\setlength{\@colroom}{\vsize}} diff --git a/source/eskdukrainian.def.in b/source/eskdukrainian.def.in index ffa74be..946f7be 100644 --- a/source/eskdukrainian.def.in +++ b/source/eskdukrainian.def.in @@ -80,6 +80,8 @@ m4_FILE_ID([[$Date:: $]]) Language File] \cyr\CYRF\cyro\cyrr\cyrm\cyra\cyrt\ \CYRA{}3} \@namedef{ESKDa4FormatName}{% \cyr\CYRF\cyro\cyrr\cyrm\cyra\cyrt\ \CYRA{}4} +\@namedef{ESKDemptyFormatName}{% + \cyr\CYRF\cyro\cyrr\cyrm\cyra\cyrt\ \ \ \ } \newcommand{\ESKDcolumnXXXIIIname}{% \cyr\CYRZ\cyro\cyrn\cyra} diff --git a/test/freesizesheets.tex b/test/freesizesheets.tex new file mode 100644 index 0000000..75e8e23 --- /dev/null +++ b/test/freesizesheets.tex @@ -0,0 +1,105 @@ +\documentclass[ + 14pt, + russian, + koi8-r, + pointsubsection, + floatsingle, + ] +{eskdtext} + +\usepackage[T2A]{fontenc} +\usepackage{eskdfreesize} % ÔÅÓÔÉÒÕÅÍÙÊ ÐÁËÅÔ +\usepackage{longtable,array} +\usepackage{calc} + +\ESKDtitle{eskdtext} +\ESKDdocName{ðÒÏ×ÅÒËÁ ËÏÌÌÅËÃÉÉ. ðÒÏ×ÅÒËÁ ÓÍÅÎÙ ÒÁÚÍÅÒÁ ÂÕÍÁÇÉ ÎÁ ÌÅÔÕ} +\ESKDsignature{ïÂÏÚÎÁÞÅÎÉÅ ÄÏËÕÍÅÎÔÁ} +\ESKDauthor{á×ÔÏÒ~é.~ï.} +\ESKDtitleApprovedBy{äÏÌÖÎÏÓÔØ ÕÔ×ÅÒÖÄÁÀÝÅÇÏ}{æÁÍ. ÕÔ×ÅÒ.} + +% ÍÁËÒÏÓ, ËÏÔÏÒÙÊ ÂÕÄÅÔ ÚÁ ÎÁÓ ÐÉÓÁÔØ ÍÎÏÇÏ ÔÅËÓÔÁ +\newcounter{printalotfirst} +\newcounter{printalotsecond} +\newcommand{\printalot}[2]{ + \setcounter{printalotfirst}{0} + \setcounter{printalotsecond}{#1} + \whiledo{\value{printalotfirst}<\value{printalotsecond}} + {#2 \stepcounter{printalotfirst}} +} + +\newcommand{\printcnt}{180} % ÐÒÉÍÅÒÎÏ ÓÔÏÌØËÏ ÎÁÄÏ ÎÁ 0.7 ÓÔÒÁÎÉÃÙ á4 + +\begin{document} + \section*{á4 ÐÏÒÔÒÅÔÎÁÑ ÏÒÉÅÎÔÁÃÉÑ} + \printalot{\printcnt}{á4 ÐÏÒÔÒÅÔ}\par + \printalot{\printcnt}{á4 ÐÏÒÔÒÅÔ} + +% A3 +\ESKDportraitAIII{ + \section*{á3 ÐÏÒÔÒÅÔÎÁÑ ÏÒÉÅÎÔÁÃÉÑ} + \printalot{\printcnt*2}{á3 ÐÏÒÔÒÅÔ}\par + \printalot{\printcnt*2}{á3 ÐÏÒÔÒÅÔ} +} +\ESKDlandscapeAIII{ + \section*{á3 ÌÁÎÄÛÁÆÔÎÁÑ ÏÒÉÅÎÔÁÃÉÑ} + \printalot{\printcnt*2}{á3 ÌÁÎÄÛÁÆÔ}\par + \printalot{\printcnt*2}{á3 ÌÁÎÄÛÁÆÔ} +} + +% A2 +\ESKDportraitAII{ + \section*{á2 ÐÏÒÔÒÅÔÎÁÑ ÏÒÉÅÎÔÁÃÉÑ} + \printalot{\printcnt*4}{á2 ÐÏÒÔÒÅÔ}\par + \printalot{\printcnt*4}{á2 ÐÏÒÔÒÅÔ} +} +\ESKDlandscapeAII{ + \section*{á2 ÌÁÎÄÛÁÆÔÎÁÑ ÏÒÉÅÎÔÁÃÉÑ} + \printalot{\printcnt*4}{á2 ÌÁÎÄÛÁÆÔ}\par + \printalot{\printcnt*4}{á2 ÌÁÎÄÛÁÆÔ} +} + +% A1 +\ESKDportraitAI{ + \section*{á1 ÐÏÒÔÒÅÔÎÁÑ ÏÒÉÅÎÔÁÃÉÑ} + \printalot{\printcnt*8}{á1 ÐÏÒÔÒÅÔ}\par + \printalot{\printcnt*8}{á1 ÐÏÒÔÒÅÔ} +} +\ESKDlandscapeAI{ + \section*{á1 ÌÁÎÄÛÁÆÔÎÁÑ ÏÒÉÅÎÔÁÃÉÑ} + \printalot{\printcnt*8}{á1 ÌÁÎÄÛÁÆÔ}\par + \printalot{\printcnt*8}{á1 ÌÁÎÄÛÁÆÔ} +} + +% A0 +\ESKDportraitAZERO{ + \section*{á0 ÐÏÒÔÒÅÔÎÁÑ ÏÒÉÅÎÔÁÃÉÑ} + \printalot{\printcnt*16}{á0 ÐÏÒÔÒÅÔ}\par + \printalot{\printcnt*16}{á0 ÐÏÒÔÒÅÔ} +} +\ESKDlandscapeAZERO{ + \section*{á0 ÌÁÎÄÛÁÆÔÎÁÑ ÏÒÉÅÎÔÁÃÉÑ} + \printalot{\printcnt*16}{á0 ÌÁÎÄÛÁÆÔ}\par + \printalot{\printcnt*16}{á0 ÌÁÎÄÛÁÆÔ} +} + +% îÅÓÔÁÎÄÁÒÔÎÙÅ ÌÉÓÔÙ +\renewcommand\ESKDtheColumnXXXIIfree{æÏÒÍÁÔ <<ÛÁÒÆÉË>>} +\ESKDfreeSize{5000mm}{297mm}{ + \printalot{\printcnt*16}{æÏÒÍÁÔ <<ÛÁÒÆÉË>>}\par + \printalot{\printcnt*16}{æÏÒÍÁÔ <<ÛÁÒÆÉË>>} +} + +\renewcommand\ESKDtheColumnXXXIIfree{îÅ×\'ÅÄÏÍÙÊ ÆÏÒÍÁÔ} +\ESKDfreeSize{500mm}{500mm}{ + \printalot{\printcnt*4}{îÅ×\'ÅÄÏÍÙÊ ÆÏÒÍÁÔ}\par + \printalot{\printcnt*4}{îÅ×\'ÅÄÏÍÙÊ ÆÏÒÍÁÔ} +} + +% ÷ÏÚ×ÒÁÔ Ë á4 +\newpage +\section*{÷ÏÚ×ÒÁÔ Ë á4} + \printalot{\printcnt}{á4 ÐÏÒÔÒÅÔ}\par + \printalot{\printcnt}{á4 ÐÏÒÔÒÅÔ} + +\end{document} -- 2.11.4.GIT