From a007511ba29dbac62d6f6173a5bb58b66b43ee48 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 6 Oct 2019 20:07:16 +0000 Subject: bxpapersize (6oct19) git-svn-id: svn://tug.org/texlive/trunk@52304 c570f23f-e606-0410-a88d-b1316a301751 --- .../tex/latex/bxpapersize/bxpapersize.sty | 111 ++++----------------- 1 file changed, 18 insertions(+), 93 deletions(-) (limited to 'Master/texmf-dist/tex/latex/bxpapersize') diff --git a/Master/texmf-dist/tex/latex/bxpapersize/bxpapersize.sty b/Master/texmf-dist/tex/latex/bxpapersize/bxpapersize.sty index 1370314a8a2..4fe8782cfc6 100644 --- a/Master/texmf-dist/tex/latex/bxpapersize/bxpapersize.sty +++ b/Master/texmf-dist/tex/latex/bxpapersize/bxpapersize.sty @@ -1,7 +1,7 @@ %% %% This is file 'bxpapersize.sty'. %% -%% Copyright (c) 2017 Takayuki YATO (aka. "ZR") +%% Copyright (c) 2019 Takayuki YATO (aka. "ZR") %% GitHub: https://github.com/zr-tex8r %% Twitter: @zr_tex8r %% @@ -10,7 +10,7 @@ %% package declaration \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{bxpapersize}[2017/10/08 v0.3b] +\ProvidesPackage{bxpapersize}[2019/10/05 v0.4] %% preparation \def\bxpr@pkgname{bxpapersize} @@ -48,12 +48,13 @@ %% load packages \RequirePackage{xkeyval}[2008/08/10]% v2.6 \RequirePackage{atbegshi} -\RequirePackage{ifpdf,ifxetex,ifluatex,ifvtex} +\RequirePackage{ifpdf,ifxetex,ifluatex,ifvtex,ifptex} %% variables \newdimen\bxpr@dima \let\bxpr@width\relax \let\bxpr@height\relax +\newif\ifbxpr@pxatbegshi %% constants \chardef\bxpr@mode@@dvimode=0 @@ -62,11 +63,6 @@ %% unique tokens \def\bxpr@end{\bxpr@end@} -%% \bxpr@ptexng -\chardef\bxpr@ptexng=0 -\edef\bxpr@tmpa{\string\ngbanner}\edef\bxpr@tmpb{\meaning\ngbanner} -\ifx\bxpr@tmpa\bxpr@tmpb \chardef\bxpr@ptexng=1 \fi - %% \bxpr@pagewidth / \bxpr@pageheight %% \bxpr@horigin / \bxpr@vorigin \ifluatex % LuaTeX @@ -89,7 +85,7 @@ \else\ifvtex % VTeX \let\bxpr@pagewidth\mediawidth \let\bxpr@pageheight\mediaheight -\else\ifnum0\the\bxpr@ptexng\ifpdf1\fi>0 % pdfTeX in PDF mode +\else\ifnum0\ifptexng1\fi\ifpdf1\fi>0 % pdfTeX in PDF mode \let\bxpr@pagewidth\pdfpagewidth \let\bxpr@pageheight\pdfpageheight \let\bxpr@horigin\pdfhorigin @@ -170,11 +166,6 @@ \def\bxpr@set@priority#1{% invalidate \bxpr@err@nlprm{priority}}} -%% 'adjustmag' -\define@boolkey+[bxpr]{prm}{adjustmag}[true]% - {}% - {\bxpr@err@ivval{adjustmag}{#1}} - %% 'truedimen' \define@boolkey+[bxpr]{prm}{truedimen}[true]% {\bxpr@needs@reset@sizetrue}% @@ -287,6 +278,18 @@ \noexpand\bxpapersizesetup{\bxpr@kvopt}% }\bxpr@tmpa +% if priority is not middle... +\ifnum\bxpr@priority=\bxpr@priority@@default\else + \ifcase\bxpr@mode % dvi + \ifptex + \RequirePackage{pxatbegshi}[] + \fi + \or % pdf + \PackageWarningNoLine\bxpr@pkgname + {The priority setting will be ignored in PDF mdoe} + \fi +\fi + %--------------------------------------- page hook %% \bxpr@begindoc@first@hook @@ -399,12 +402,7 @@ \edef\bxpr@special@chunk{\special{papersize=\bxpr@tmpb}}}% \else %pdf \def\bxpr@set@page@size#1#2{% - \let\bxpr@tmpb\@empty - \ifbxpr@prm@adjustmag - \bxpr@let@real@mag@to\bxpr@tmpb - \fi - \bxpr@pagewidth=#1\relax \bxpr@pagewidth=\bxpr@tmpb\bxpr@pagewidth - \bxpr@pageheight=#2\relax \bxpr@pageheight=\bxpr@tmpb\bxpr@pageheight + \bxpr@pagewidth=#1\relax \bxpr@pageheight=#2\relax \bxDebug{papersize=\the\bxpr@pagewidth,\the\bxpr@pageheight}}% \fi @@ -469,79 +467,6 @@ \advance\bxpr@dima\dp\AtBeginShipoutBox \edef\bxpr@height{\the\bxpr@dima}} -%--------------------------------------- cope with tate-direction - -% In (u)pTeX engine, boxes and lists have the direction attribute, -% and yoko boxes cannot be unboxed in tate lists (and vice versa). -% This restriction can cause the atbegshi package to fail, and thus -% the 'priority=low' setting results in an error when used together -% with document classes of tate direction. - -% if '\tate' is invalid then quit now -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname tate\endcsname\relax -\expandafter\endinput\fi\relax - -% if priority is middle then quit -\ifnum\bxpr@priority=\bxpr@priority@@default -\expandafter\endinput\fi\relax - -% check in advance -\ifx\AtBegShi@Output\@undefined - \PackageWarningNoLine\bxpr@pkgname - {The patch to atbegshi failed, so\MessageBreak - the package might not work well} -\expandafter\endinput\fi\relax - -%% \ifbxpr@ddir -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname ifddir\endcsname\relax - \bxpr@csletcs{ifbxpr@ddir}{iffalse} -\else - \bxpr@csletcs{ifbxpr@ddir}{ifddir} -\fi - -%% \bxpr@patch -% Patches the internal macro \AtBegShi@Output of atbegshi package, -% so that the macro is prepended by a `\yoko` primitive and appended -% by a direction primitive to switch back to the original. -\@onlypreamble\bxpr@patch -\def\bxpr@patch{% - \expandafter\bxpr@patch@a\AtBegShi@Output\bxpr@end} -\@onlypreamble\bxpr@patch@a -\def\bxpr@patch@a{% - \futurelet\bxpr@tok\bxpr@patch@b} -\@onlypreamble\bxpr@patch@b -\def\bxpr@patch@b{% - \ifx\bxpr@tok\egroup \expandafter\@firstoftwo - \else \expandafter\@secondoftwo - \fi{\bxpr@patch@c}{\bxpr@patch@d{}}} -\@onlypreamble\bxpr@patch@c -\def\bxpr@patch@c#1#2{% - \bxpr@patch@d{#1#2}} -\@onlypreamble\bxpr@patch@d -\def\bxpr@patch@d#1#2\bxpr@end{% - \def\AtBegShi@Output{#1\bxpr@ABS@prehook#2\bxpr@ABS@posthook}} -% do patch -\bxpr@patch - -%% \bxpr@restore@dir -\let\bxpr@restore@dir\relax - -%% \bxpr@ABS@prehook -\def\bxpr@ABS@prehook{% - \iftdir \yoko \let\bxpr@restore@dir\tate - \else\ifbxpr@ddir \yoko \let\bxpr@restore@dir\dtou - \else \let\bxpr@restore@dir\relax - \fi\fi - \ifx\bxpr@restore@dir\relax\else - \bxDebug{Temporarily switching \meaning\bxpr@restore@dir - \space to \string\yoko}% - \fi} -%% \bxpr@ABS@posthook -\def\bxpr@ABS@posthook{% - \bxpr@restore@dir} - %--------------------------------------- all done \endinput %% EOF -- cgit v1.2.3