summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/hvfloat/latex/hvfloat.sty
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/hvfloat/latex/hvfloat.sty')
-rw-r--r--macros/latex/contrib/hvfloat/latex/hvfloat.sty268
1 files changed, 205 insertions, 63 deletions
diff --git a/macros/latex/contrib/hvfloat/latex/hvfloat.sty b/macros/latex/contrib/hvfloat/latex/hvfloat.sty
index c1d78c0db7..394fc869ed 100644
--- a/macros/latex/contrib/hvfloat/latex/hvfloat.sty
+++ b/macros/latex/contrib/hvfloat/latex/hvfloat.sty
@@ -1,4 +1,4 @@
-%% $Id: hvfloat.sty 653 2022-11-20 21:54:52Z herbert $
+%% $Id: hvfloat.sty 676 2023-01-28 19:47:00Z herbert $
%%
%%
%% IMPORTANT NOTICE:
@@ -6,7 +6,7 @@
%% This is file `hvfloat.sty',
%%
%% Herbert Voss <hvoss@tug.org>
-%% Copyright (C) 2003-22
+%% Copyright (C) 2003-23
%%
%% This program can be redistributed and/or modified under the terms
%% of the LaTeX Project Public License Distributed from CTAN archives
@@ -16,8 +16,8 @@
%% `hvfloat' offers rotating of captions and objects for floats
%%
\NeedsTeXFormat{LaTeX2e}
-\def\fileversion{2.44}
-\def\filedate{2022/11/21}
+\def\fileversion{2.45}
+\def\filedate{2023/01/28}
\ProvidesPackage{hvfloat}[\filedate\space v\fileversion\space special floating objects (hv)]
\let\hvFloatFileVersion\fileversion
%
@@ -25,6 +25,7 @@
\newif\ifhv@hyperref \hv@hyperreffalse
\newif\ifhv@nostfloats \hv@nostfloatsfalse
\newif\ifhv@tugboat \hv@tugboatfalse
+\newif\ifhv@forceLeft \hv@forceLeftfalse
\DeclareOption{fbox}{\hv@fboxtrue\setlength\fboxsep{1pt}}
\DeclareOption{hyperref}{\hv@hyperreftrue}
@@ -67,6 +68,7 @@
% \global\@namedef{\number\@currbox @float}{\thispagestyle{#1}}\relax
%}
+\providecommand\hvfloat@typeout[1]{\ifhv@Debug\typeout{>>>> #1}\fi}
\providecommand*\LenToUnit[1]{\strip@pt\dimexpr#1*\p@/\unitlength}
\newlength\hvObjectWidth
@@ -180,6 +182,7 @@
\define@boolkey{hvSet}[hv@]{inMargin}[true]{}% use of the hvOBox contents
\define@boolkey{hvSet}[hv@]{onlyText}[true]{}% Write the caption only as text
\define@boolkey{hvSet}[hv@]{wide}[true]{}% Write the caption only as text
+\define@boolkey{hvSet}[hv@]{forceLeft}[true]{}% use only one \afterpage instead of \afterpage{\afterpage{..
\define@boolkey{hvSet}[hv@]{twoColumnCaption}[true]\global\@nameuse{hv@twoColumnCaption#1}{}% Write the caption only as text
\define@boolkey{hvSet}[hv@]{sameHeight}[true]{\@nameuse{hv@sameHeight#1}}% Write the caption only as text
\define@boolkey{hvSet}[hv@]{Debug}[true]{}% give more infos in the terminal
@@ -203,11 +206,36 @@
\newlength\hv@floatCapSep
\newlength\hvSet@bindCorr
-\define@key{hvSet}{fullpage}[true]{\global\@nameuse{hv@fullpage#1}}%
-\define@key{hvSet}{FULLPAGE}[true]{\global\@nameuse{hv@FULLPAGE#1}}
-\define@key{hvSet}{doubleFULLPAGE}[true]{\global\@nameuse{hv@doubleFULLPAGE#1}\hv@doublePagefalse\hv@doublePAGEfalse}
-\define@key{hvSet}{doublePAGE}[true]{\global\@nameuse{hv@doublePAGE#1}\hv@doublePagefalse\hv@doubleFULLPAGEfalse}
-\define@key{hvSet}{doublePage}[true]{\global\@nameuse{hv@doublePage#1}\hv@doublePAGEfalse\hv@doubleFULLPAGEfalse}
+\define@key{hvSet}{fullpage}[true]{%
+ \global\@nameuse{hv@fullpage#1}%
+ \hv@doublePagefalse\hv@doublePAGEfalse\hv@doubleFULLPAGEfalse
+ \hv@FULLPAGEfalse
+ \hvfloat@typeout{>>>>Option fullpage}%
+}
+\define@key{hvSet}{FULLPAGE}[true]{%
+ \global\@nameuse{hv@FULLPAGE#1}%
+ \hv@doublePagefalse\hv@doublePAGEfalse\hv@doubleFULLPAGEfalse
+ \hv@fullpagefalse
+ \hvfloat@typeout{>>>>Option FULLPAGE}%
+}
+\define@key{hvSet}{doubleFULLPAGE}[true]{%
+ \global\@nameuse{hv@doubleFULLPAGE#1}%
+ \hv@doublePagefalse\hv@doublePAGEfalse
+ \hv@fullpagefalse\hv@FULLPAGEfalse
+ \hvfloat@typeout{>>>>Option doubleFULLPAGE->True / doublePAGE->False}%
+}
+\define@key{hvSet}{doublePAGE}[true]{%
+ \global\@nameuse{hv@doublePAGE#1}%
+ \hv@doublePagefalse\hv@doubleFULLPAGEfalse
+ \hv@fullpagefalse\hv@FULLPAGEfalse
+ \hvfloat@typeout{>>>>Option doublePAGE->True / doubleFULLPAGE->False}%
+}
+\define@key{hvSet}{doublePage}[true]{%
+ \global\@nameuse{hv@doublePage#1}%
+ \hv@doublePAGEfalse\hv@doubleFULLPAGEfalse
+ \hv@fullpagefalse\hv@FULLPAGEfalse
+ \hvfloat@typeout{>>>>Option doublepage->True / doubleFULLPAGE->False}%
+}
\define@key{hvSet}{bindCorr}[0pt]{%
\def\hv@temp{#1}%
\ifx\hv@temp\hv@Inner
@@ -251,7 +279,7 @@
\hv@set{%
floatPos=, rotAngle=0, capWidth=n, capAngle=0, objectAngle=0,
capPos=bottom, capVPos=center, objectPos=center, capHPos=center,
- floatCapSep=5pt, useOBox=false,
+ floatCapSep=5pt, useOBox=false, forceLeft=false,
onlyText=false, wide=false, fullpage=false, FULLPAGE=false,
doubleFULLPAGE=false, doublePage=false, doublePAGE=false,
multiFloat=false,subFloat=false,inMargin=false,
@@ -267,13 +295,12 @@
\let\hvFloatSetDefaults\setDefaults
\hvFloatSetDefaults% onyl for first loading of the package
-\providecommand\hv@typeout[1]{\ifhv@Debug\typeout{>>>> #1}\fi}
\providecommand\@tugclass{\@empty}
\ifx\@tugclass\@empty
\else
\hv@tugboattrue % special page handling
- \hv@typeout{>>> we are using a TUGboat class}%
+ \hvfloat@typeout{>>> we are using a TUGboat class}%
\fi
\newcommand\reset@special@float{%
@@ -575,26 +602,33 @@
\global\hv@floatCapSep=\hvSet@floatCapSep%
%
\ifhv@fullpage
+ \hvfloat@typeout{>>>> do@@hvFloat: fullpage true}%
\def\hvSet@CapWidth{n}% relative value
\do@@@@hvFloat% fullpage with caption on other page
\else
\ifhv@FULLPAGE
+ \hvfloat@typeout{>>>> do@@hvFloat: FULLPAGE true}%
\def\hvSet@CapWidth{n}% relative value
\do@@@@hvFloat% fullpage with caption on other page
\else
\ifhv@doubleFULLPAGE
+ \hvfloat@typeout{>>>> do@@hvFloat: doubleFULLPAGE true}%
\setlength\hvCapWidth{\textheight}%
\expandafter\do@hvFloat@doubleFULLPAGE\@@temp% fullpage with caption rotated or under on an odd page
\else
\ifhv@doublePAGE
+ \hvfloat@typeout{>>>> do@@hvFloat: doublePAGE true}%
\expandafter\do@hvFloat@doublePAGE\@@temp% fullpage with caption rotated or under on an odd page
\else
\ifhv@doublePage
+ \hvfloat@typeout{>>>> do@@hvFloat: doublePage true}%
\expandafter\do@hvFloat@doublePage\@@temp% fullpage with caption rotated or under on an odd page
\else
\ifhv@inMargin
+ \hvfloat@typeout{>>>> do@@hvFloat: inMargin true}%
\do@@@hvFloatInMargin
\else
+ \hvfloat@typeout{>>>> do@@hvFloat: no special caption}%
\do@@@hvFloat
\fi
\fi
@@ -1156,8 +1190,6 @@
}% end marginnote
\endgroup}% end of \marginnote and \@@@hvFloatInMargin
-
-
%
\newenvironment{hvFloatEnv}[1][\textwidth]
{\minipage{#1}}
@@ -1173,6 +1205,7 @@
\ExplSyntaxOff
\def\do@@@@hvFloat{% special float page: caption <-> fullpage images
+ \hvfloat@typeout{>>>do@@@@hvFloat: special float page}%
\ifx\hvSet@capPos\hv@After \global\hv@@capPos=1
\else
\ifx\hvSet@capPos\hv@Even \global\hv@@capPos=2
@@ -1195,60 +1228,88 @@
\fi
\fi
\fi
+ \hvfloat@typeout{>>>do@@@@hvFloat: hv@capPos is \the\hv@@capPos}%
\checkoddpage
+ \hvfloat@typeout{>>>do@@@@hvFloat: set floattype}%
\set@caption@object{\hv@floatType}% set caption and object into a box
\ifcase\hv@@capPos% caption before object 0-> _always_ left
+ \hvfloat@typeout{>>>do@@@@hvFloat: setBottomCaption and setPageObject (0)}%
\setBottomCaption\setPageObject
\or% caption after object 1-> _always_ right
+ \hvfloat@typeout{>>>do@@@@hvFloat: setPageObject and setBottomCaption (1)}%
\setPageObject\setBottomCaption
\or% caption on even page 2-> left page
\ifoddpage
+ \hvfloat@typeout{>>>do@@@@hvFloat: afterpage-> oddpage/setBottomCaption and setPageObject (2)}%
\afterpage{\setBottomCaption\setPageObject}%
\else% we are on an even page
+ \hvfloat@typeout{>>>do@@@@hvFloat: evenpage/setBottomCaption and setPageObject (2)}%
\setBottomCaption\setPageObject
\fi
\or% caption on odd page 3->right page
\if@twoside
+ \hvfloat@typeout{>>>do@@@@hvFloat: twoside and caption on oddpage (3)}%
\if@twocolumn
+ \hvfloat@typeout{>>>do@@@@hvFloat: twoside/twocolumn and caption on oddpage (3)}%
\ifoddpage
+ \hvfloat@typeout{>>>do@@@@hvFloat: twoside/twocolumn/oddpage and caption on oddpage (3)}%
\if@firstcolumn% on right side
+ \hvfloat@typeout{>>>do@@@@hvFloat: twoside/twocolumn/oddpage/firstcolumn and caption on oddpage (3)}%
\setBottomCaption\setPageObject
\else
+ \hvfloat@typeout{>>>do@@@@hvFloat: afterpage->twoside/twocolumn/oddpage/secondcolumn and caption on oddpage (3)}%
\afterpage{\setPageObject\setBottomCaption}% start next column
\fi
\else% left (even) page
+ \hvfloat@typeout{>>>do@@@@hvFloat: twoside/twocolumn/oddpage and caption on evenpage (3)}%
\if@firstcolumn
+ \hvfloat@typeout{>>>do@@@@hvFloat: afterpage->twoside/twocolumn/evenpage/firstcolumn and caption on oddpage (3)}%
\afterpage{\setPageObject\setBottomCaption}% start next column
\else
+ \hvfloat@typeout{>>>do@@@@hvFloat: twoside/twocolumn/evenage/secondcolumn and caption on oddpage (3)}%
\setPageObject\setBottomCaption
\fi
\fi
\else% onecolumn
+ \hvfloat@typeout{>>>do@@@@hvFloat: twoside/onecolumn and caption on oddpage (3)}%
\ifoddpage
+ \hvfloat@typeout{>>>do@@@@hvFloat: twoside/onecolumn/oddpage and caption on oddpage (3)}%
\setPageObject\setBottomCaption
\else% even page
+ \hvfloat@typeout{>>>do@@@@hvFloat: afterpage->twoside/onecolumn/evenpage and caption on oddpage (3)}%
\afterpage{\setPageObject\setBottomCaption}%
\fi
\fi
\else% oneside
+ \hvfloat@typeout{>>>do@@@@hvFloat: oneside and caption on oddpage (3)}%
\if@twocolumn
+ \hvfloat@typeout{>>>do@@@@hvFloat: oneside/twocolumn and caption on oddpage (3)}%
\ifoddpage
+ \hvfloat@typeout{>>>do@@@@hvFloat: oneside/twocolumn/oddpage and caption on oddpage (3)}%
\if@firstcolumn% on right side
+ \hvfloat@typeout{>>>do@@@@hvFloat: oneside/twocolumn/oddpage/firstcolumn and caption on oddpage (3)}%
\setBottomCaption\setPageObject
\else
+ \hvfloat@typeout{>>>do@@@@hvFloat: oneside/twocolumn/oddpage/secondcolumn and caption on oddpage (3)}%
\setPageObject\setBottomCaption
\fi
\else
+ \hvfloat@typeout{>>>do@@@@hvFloat: oneside/twocolumn/evenpage and caption on oddpage (3)}%
\if@firstcolumn% on left side
+ \hvfloat@typeout{>>>do@@@@hvFloat: afterpage->oneside/twocolumn/evenpage/firstcolumn and caption on oddpage (3)}%
\afterpage{\setPageObject\setBottomCaption}%
\else
+ \hvfloat@typeout{>>>do@@@@hvFloat: oneside/twocolumn/evenpage/secondcolumn and caption on oddpage (3)}%
\setPageObject\setBottomCaption
\fi
\fi
\else % onecolumn
+ \hvfloat@typeout{>>>do@@@@hvFloat: oneside/onecolumn and caption on oddpage (3)}%
\ifoddpage
+ \hvfloat@typeout{>>>do@@@@hvFloat: oneside/onecolumn/oddpage and caption on oddpage (3)}%
\setBottomCaption\setPageObject
\else
+ \hvfloat@typeout{>>>do@@@@hvFloat: afterpage->oneside/onecolumn/evenpage and caption on oddpage (3)}%
\afterpage{\setBottomCaption\setPageObject}%
\fi
\fi
@@ -1256,35 +1317,50 @@
\or% caption on the inner column 4->inner
% \set@caption@object
\if@twocolumn
+ \hvfloat@typeout{>>>do@@@@hvFloat: twocolumn and caption on inner column (4)}%
\ifoddpage
+ \hvfloat@typeout{>>>do@@@@hvFloat: twoside/oddpage and caption on inner column (4)}%
\if@firstcolumn% on right side
+ \hvfloat@typeout{>>>do@@@@hvFloat: twoside/oddpage/firstcolumn and caption on inner column (4)}%
\setBottomCaption\setPageObject
\else % right column on right side
+ \hvfloat@typeout{>>>do@@@@hvFloat: twoside/oddpage/secondcolumn and caption on inner column (4)}%
\setPageObject\setBottomCaption% start next firstcolumn next page
\fi
\else
+ \hvfloat@typeout{>>>do@@@@hvFloat: twoside/evenpage and caption on inner column (4)}%
\if@firstcolumn% on left side
+ \hvfloat@typeout{>>>do@@@@hvFloat: afterpage^2 -> twoside/evenpage/firstcolumn and caption on inner column (4)}%
\afterpage{\afterpage{\setBottomCaption\setPageObject}}% start next page/first column
\else% left page/column
+ \hvfloat@typeout{>>>do@@@@hvFloat: twoside/evenpage/secondcolumn and caption on inner column (4)}%
\setBottomCaption\setPageObject% start on same page/column
\fi
\fi
\else% onecolumn
+ \hvfloat@typeout{>>>do@@@@hvFloat: onecolumn and caption on inner column (4)}%
\setBottomCaption\setPageObject
\fi
\or% caption on the outer column 5->outer
% \set@caption@object
\if@twocolumn
+ \hvfloat@typeout{>>>do@@@@hvFloat: twocolumn and caption on outer column (5)}%
\ifoddpage
+ \hvfloat@typeout{>>>do@@@@hvFloat: twocolumn/oddpage and caption on outer column (5)}%
\if@firstcolumn
+ \hvfloat@typeout{>>>do@@@@hvFloat: afterpage^2 -> firstcolumn/oddpage/twocolumn and caption on outer column (5)}%
\afterpage{\afterpage{\setBottomCaption\setPageObject}}%
\else
+ \hvfloat@typeout{>>>do@@@@hvFloat: afterpage -> twocolumn/oddpage/secondcolumn and caption on outer column (5)}%
\afterpage{\setBottomCaption\setPageObject}%
\fi
\else% even page (left)
+ \hvfloat@typeout{>>>do@@@@hvFloat: twocolumn/evenpage and caption on outer column (5)}%
\if@firstcolumn
+ \hvfloat@typeout{>>>do@@@@hvFloat: twocolumn/evenpage/firstcolumn and caption on outer column (5)}%
\setBottomCaption\setPageObject
\else
+ \hvfloat@typeout{>>>do@@@@hvFloat: twocolumn/evenpage/secondolumn and caption on outer column (5)}%
%%% !!!! to-do: !!!!
\fi
\fi
@@ -1293,22 +1369,30 @@
\fi
\or% caption after object on same page 6->right for twocolumn
\if@twocolumn
+ \hvfloat@typeout{>>>do@@@@hvFloat: twocolumn and caption after object (6)}%
\if@firstcolumn
+ \hvfloat@typeout{>>>do@@@@hvFloat: afterpage -> twocolumn/firstcolumn and caption after object (6)}%
\afterpage{\setPageObject\setBottomCaption}%
\else
+ \hvfloat@typeout{>>>do@@@@hvFloat: twocolumn/secondcolumn and caption after object (6)}%
\setPageObject\setBottomCaption
\fi
\else% always caption _after_ object for onecolumn
+ \hvfloat@typeout{>>>do@@@@hvFloat: onecolumn and caption after object (6)}%
\setPageObject\setBottomCaption
\fi
\or% caption before object on same page 7->left for twocolumn
\if@twocolumn
+ \hvfloat@typeout{>>>do@@@@hvFloat: twocolumn and caption before object (7)}%
\if@firstcolumn
+ \hvfloat@typeout{>>>do@@@@hvFloat: twocolumn/firstcolumn and caption before object (7)}%
\setBottomCaption\setPageObject
\else
+ \hvfloat@typeout{>>>do@@@@hvFloat: afterpage -> twocolumn/secondcolumn and caption before object (7)}%
\afterpage{\setBottomCaption\setPageObject}%
\fi
\else% onecolumn -> same as before
+ \hvfloat@typeout{>>>do@@@@hvFloat: onecolumn and caption before object (7)}%
\setBottomCaption\setPageObject
\fi
\fi
@@ -1322,7 +1406,8 @@
%
\def\do@hvFloat@doublePage#1{% image on left and right page with caption on the right page
% #1-> 0/1 caption under/right
- \hv@typeout{>>>doublePage: start with definitions of \hv@floatObject}%
+ \hvfloat@typeout{----------------------------- do@hvFloat@doublePage#1 --------------------------}%
+ \hvfloat@typeout{>>>do@hvFloat@doublePage: begin with definitions of \hv@floatObject}%
\global\hv@leftPageObjectWidth=\the\dimexpr\paperwidth-1in-\evensidemargin-\hvSet@bindCorrection\relax
\global\hv@tempWidthA=\the\dimexpr1in+\oddsidemargin-\hvSet@bindCorrection\relax
\xdef\hv@caption@format@temp{\hv@caption@format}% it gets lost otherwise for next afterpage
@@ -1339,35 +1424,37 @@
\endminipage}%
\savebox\hvObjectBox{\ifhv@useOBox\usebox{\hvOBox}\else\hv@floatObject\fi}%
\ifnum#1=0\relax % no rotation, caption below
- \hv@typeout{Texthöhe: \the\textheight}%
- \hv@typeout{Objekthöhe: \the\ht\hvObjectBox}%
- \hv@typeout{Captionhöhe: \the\ht\hvCaptionBox}%
+ \hvfloat@typeout{Texthöhe: \the\textheight}%
+ \hvfloat@typeout{Objekthöhe: \the\ht\hvObjectBox}%
+ \hvfloat@typeout{Captionhöhe: \the\ht\hvCaptionBox}%
\@tempdima=\dimexpr\ht\hvObjectBox+\ht\hvCaptionBox+\abovecaptionskip+\belowcaptionskip +\textfloatsep\relax%+\floatsep\relax
- \hv@typeout{Summe: \the\@tempdima}%
+ \hvfloat@typeout{Summe: \the\@tempdima}%
\ifdim\@tempdima > \dimexpr\textheight-\hv@minTextlines\relax
- \hv@typeout{hvfloat: switched to floattype p}%
+ \hvfloat@typeout{hvfloat: switched to floattype p}%
\hv@switchTypetrue
\fi
\fi
- \hv@typeout{do@hvFloat@doublePage:hv@tempWidthA=\the\hv@tempWidthA}%
+ \hvfloat@typeout{do@hvFloat@doublePage:hv@tempWidthA=\the\hv@tempWidthA}%
\ifhv@forceOutput
\do@hvFloat@doublePAGECaptionRight{#1}% no cheque
\else
\checkoddpage
\ifoddpage
+ \hvfloat@typeout{do@hvFloat@doublePage:oddpage}%
\if@twocolumn
+ \hvfloat@typeout{do@hvFloat@doublePage: oddpage/twocolumn}%
\if@firstcolumn
- \hv@typeout{do@hvFloat@doublePage:oddpage->twocolumn->firstcolumn}%
+ \hvfloat@typeout{do@hvFloat@doublePage:oddpage->twocolumn->firstcolumn}%
\ifhv@switchType
- \hv@typeout{hvfloat: switched to floattype p}%
+ \hvfloat@typeout{hvfloat: switched to floattype p}%
\afterpage{\do@hvFloat@doublePAGECaptionRight{#1}}%
\else
- \hv@typeout{calling do@hvFloat@doublePageCaptionRight}%
+ \hvfloat@typeout{calling do@hvFloat@doublePageCaptionRight}%
%\afterpage{
\afterpage{\do@hvFloat@doublePageCaptionRight{#1}}%}%
\fi
\else
- \hv@typeout{do@hvFloat@doublePage:oddpage->twocolumn->secondcolumn}%
+ \hvfloat@typeout{do@hvFloat@doublePage:oddpage->twocolumn->secondcolumn}%
\ifhv@tugboat
\do@hvFloat@doublePageCaptionRight{#1}%
\else
@@ -1378,14 +1465,22 @@
\fi
\fi
\fi
- \else
+ \else% onecolumn
+ \hvfloat@typeout{do@hvFloat@doublePage: oddpage/onecolumn}%
\ifhv@switchType
+ \hvfloat@typeout{do@hvFloat@doublePage: oddpage/onecolumn/switchType}%
\do@hvFloat@doublePAGECaptionRight{#1}%
\else
- \afterpage{\do@hvFloat@doublePageCaptionRight{#1}}%
+ \hvfloat@typeout{do@hvFloat@doublePage: call do@hvFloat@doublePageCaptionRight #1}%
+ \ifhv@forceLeft
+ \do@hvFloat@doublePageCaptionRight{#1}% no \afterpage
+ \else
+ \afterpage{\do@hvFloat@doublePageCaptionRight{#1}}%
+ \fi
\fi
\fi
\else% we have an even page
+ \hvfloat@typeout{do@hvFloat@doublePage:evenpage -> (\thepage)}%
\if@twocolumn
\if@firstcolumn
\ifhv@switchType
@@ -1401,33 +1496,42 @@
\fi
\fi
\else% onecolumn
+ \hvfloat@typeout{do@hvFloat@doublePage:evenpage/onecolumn -> (\thepage)}%
\ifhv@switchType
+ \hvfloat@typeout{do@hvFloat@doublePage:evenpage/onecolumn/switchType -> (\thepage)}%
\afterpage{\do@hvFloat@doublePAGECaptionRight{#1}}%
\else
- \afterpage{\afterpage{\do@hvFloat@doublePageCaptionRight{#1}}}%
+ \hvfloat@typeout{do@hvFloat@doublePage:evenpage/onecolumn/noSwitchType -> (\thepage)}%
+ \ifhv@forceLeft
+ \hvfloat@typeout{do@hvFloat@doublePage:evenpage/onecolumn/noSwitchType/forceLeft -> (\thepage)}%
+ \afterpage{\do@hvFloat@doublePageCaptionRight{#1}}%
+ \else
+ \afterpage{\afterpage{\do@hvFloat@doublePageCaptionRight{#1}}}%
+ \fi
\fi
\fi
\fi
- \let\c@fptop\hv@fptop
+ \let\@fptop\hv@fptop
\fi
\endgroup% started at main macro \hvFloat
+ \hvfloat@typeout{----------------------------- do@hvFloat@doublePage#1 ... Ende ----------------------}%
}
%
\def\do@hvFloat@doublePageCaptionRight#1{% image on left and right page with caption on the right page ----------------------------------
- \hv@typeout{do@hvFloat@doublePageCaptionRight->start}%
+ \hvfloat@typeout{do@hvFloat@doublePageCaptionRight->start}%
\do@hvFloat@doublePageCaptionRightObjectLeft{0pt}%
\afterpage{\do@hvFloat@doublePageCaptionRightObjectRight{#1}}%
}
%
\def\do@hvFloat@doublePageCaptionRightObjectLeft#1{% left part of the object
- \begin{\hv@floatType*}[!t]
- \hv@typeout{>>>doublePage: start with left side of the object \hv@floatObject}%
+ \begin{\hv@floatType}[!t]
+ \hvfloat@typeout{>>>doublePage: begin with left side of the object \hv@floatObject}%
\hv@set@noverticalSpace
\hfuzz=\maxdimen
\let\c@hv@tempCNTfigA\c@figure
\let\c@hv@tempCNTtabA\c@table
\expandafter\hvFloatSet\expandafter{\hv@save@setting}%
- \hv@typeout{Float position parameter is for left page: !t}%
+ \hvfloat@typeout{Float position parameter is for left page: !t}%
\global\savebox{\hvObjectBox}{\ifhv@useOBox\usebox{\hvOBox}\else\hv@floatObject\fi}%
\clipbox*{0 -\depth{} \hv@leftPageObjectWidth{} \height}{\usebox\hvObjectBox}%
\ifx\hv@label\@empty
@@ -1440,16 +1544,18 @@
\label{\hv@label}%
\fi
\ifhv@global@sameHeight
- \hv@typeout{text should be of same height of both pages}%
+ \hvfloat@typeout{text should be of same height of both pages}%
\par\noindent\phantom{\parbox{\textwidth}{\caption*{\hv@longCap}}}%
% \vspace{-2pt}%
\fi
\hv@reset@noverticalSpace
- \end{\hv@floatType*}%
+ \hvfloat@typeout{>>>doublePage: end with left side of the object \hv@floatObject}%
+ \end{\hv@floatType}%
}
+
\def\do@hvFloat@doublePageCaptionRightObjectRight#1{% right part of the object
\begin{\hv@floatType*}[!t]
- \hv@typeout{>>>doublePage: start with right side of the object \hv@floatObject}%
+ \hvfloat@typeout{>>>doublePage: begin with right side of the object \hv@floatObject}%
\hv@set@noverticalSpace
\hfuzz=\maxdimen
\expandafter\hvFloatSet\expandafter{\hv@save@setting}%
@@ -1459,8 +1565,8 @@
\hv@leftPageObjectWidth=\the\dimexpr\paperwidth-1in-\evensidemargin-\hvSet@bindCorrection\relax% FÜR FTK
\savebox\hv@rightBox{\clipbox*{\hv@leftPageObjectWidth{} -\depth{} \width{} \height{}}{\usebox\hvObjectBox}}%
\hv@tempWidthB=\dimexpr\textwidth-\wd\hv@rightBox-\hvSet@bindCorrection+1in+\oddsidemargin-\hv@floatCapSep\relax
- \hv@typeout{Height of right box: \the\ht\hv@rightBox}%
- \hv@typeout{Depth of right box : \the\dp\hv@rightBox}%
+ \hvfloat@typeout{Height of right box: \the\ht\hv@rightBox}%
+ \hvfloat@typeout{Depth of right box : \the\dp\hv@rightBox}%
\ifdim\dp\hv@rightBox > \z@
\raisebox{\depth}{\usebox\hv@rightBox}%
\else
@@ -1482,7 +1588,7 @@
\c@figure=\numexpr\c@hv@tempCNTfigB-1\relax
\c@table=\numexpr\c@hv@tempCNTtabB-1\relax
\ifnum#1>\z@ % caption on the right
- \hv@typeout{doublePage: capAngle=\hvSet@capAngle}%
+ \hvfloat@typeout{doublePage: capAngle=\hvSet@capAngle}%
\ifnum\hvSet@capAngle > \z@
\hspace{\hv@floatCapSep}%
\rlap{\rotatebox{\hvSet@capAngle}{\parbox[b]{\the\dimexpr\ht\hvObjectBox+\dp\hvObjectBox}{%
@@ -1519,6 +1625,7 @@
\fi
\vspace{0pt}%
\hv@reset@noverticalSpace
+ \hvfloat@typeout{>>>doublePage: end with right side of the object \hv@floatObject}%
\end{\hv@floatType*}
}
%
@@ -1537,20 +1644,20 @@
\expandafter\global\expandafter\savebox\expandafter\hv@boxRightPage\expandafter{\clipbox*{\hv@leftPageObjectWidth{} -\depth{} \width{} \height}{\usebox\hvObjectBox}}%
\checkoddpage
\ifoddpage
- \hv@typeout{do@hvFloat@doublePAGE: oddpage}%
+ \hvfloat@typeout{do@hvFloat@doublePAGE: oddpage}%
\if@twocolumn
\if@firstcolumn
- \hv@typeout{do@hvFloat@doublePAGE: ifoddpage->twocolumn->firstcolumn}%
+ \hvfloat@typeout{do@hvFloat@doublePAGE: ifoddpage->twocolumn->firstcolumn}%
\afterpage{\do@hvFloat@doublePAGECaptionRight{#1}}%
\else
- \hv@typeout{do@hvFloat@doublePAGE: ifoddpage->twocolumn->secondcolumn}%
+ \hvfloat@typeout{do@hvFloat@doublePAGE: ifoddpage->twocolumn->secondcolumn}%
\do@hvFloat@doublePAGECaptionRight{#1}%
\fi
\else
\do@hvFloat@doublePAGECaptionRight{#1}%
\fi
\else
- \hv@typeout{do@hvFloat@doublePAGE: evenpage}%
+ \hvfloat@typeout{do@hvFloat@doublePAGE: evenpage}%
\if@twocolumn
\if@firstcolumn
\afterpage{\afterpage{\afterpage{\do@hvFloat@doublePAGECaptionRight{#1}}}}%
@@ -1566,7 +1673,7 @@
%
\def\do@hvFloat@doublePAGECaptionRight#1{% image on left and right page with caption on the right ----------------------------------
% #1-> 0/1 caption under/right
- \hv@typeout{do@hvFloat@doublePAGECaptionRight->start}%
+ \hvfloat@typeout{do@hvFloat@doublePAGECaptionRight->start}%
\afterpage{%
\hfuzz=\maxdimen
\expandafter\hvFloatSet\expandafter{\hv@save@setting}%
@@ -1626,6 +1733,7 @@
%
\def\do@hvFloat@doubleFULLPAGE#1{% image on left and right page with caption before/below/right/after
% #1-> 0/1 caption under/right
+ \hvfloat@typeout{>>> do@hvFloat@doubleFULLPAGE: #1}%
\expandafter\hvFloatSet\expandafter{\hv@save@setting}%
\ifx\hvSet@capPos\hv@After \global\hv@@capPos=1
\else
@@ -1642,47 +1750,55 @@
% \savebox\hv@rightBox{\clipbox*{\the\hv@leftPageObjectWidth{} \depth{} \width{} \height}{\usebox\hvObjectBox}}%
% \expandafter\captionsetup\expandafter{\hv@caption@format}%
\ifoddpage
- \hv@typeout{do@hvFloat@doubleFULLPAGE: ifoddpage=true}%
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: oddpage}%
\ifcase\hv@@capPos % =0 Caption before
- \hv@typeout{do@hvFloat@doubleFULLPAGE: caption before}%
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: oddpage/caption before (0)}%
\if@twocolumn
- \hv@typeout{do@hvFloat@doubleFULLPAGE: twocolumn=true}%
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: oddpage/caption before/twocolumn}%
\if@firstcolumn
- \hv@typeout{do@hvFloat@doubleFULLPAGE: firstcolumn=true}%
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: oddpage/caption before/twocolumn/firstcolumn}%
\ifhv@twoColumnCaption
- \hv@typeout{do@hvFloat@doubleFULLPAGE: twoColumnCaption=true}%
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: afterpage -> oddpage/caption before/twocolumn/firstcolumn/twoColumnCaption}%
\set@Normal@Bottom@Caption*
\afterpage{\do@hvFloat@doubleFULLPAGE@CaptionBefore}%
\else
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: afterpage -> oddpage/caption before/twocolumn/firstcolumn/oneColCaption}%
\afterpage{\set@Normal@Bottom@Caption\do@hvFloat@doubleFULLPAGE@CaptionBefore}%
\fi
- \else% \if@firstcolumn
+ \else
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: oddpage/caption before/twocolumn/secondcolumn}%
\set@Normal@Bottom@Caption
\do@hvFloat@doubleFULLPAGE@CaptionBefore
\fi
- \else% \if@twocolumn
+ \else
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: oddpage/caption before/onecolumn}%
\set@Normal@Bottom@Caption
\do@hvFloat@doubleFULLPAGE@CaptionBefore
\fi
\or % =1 Caption after
- \hv@typeout{do@hvFloat@doubleFULLPAGE: caption after}%
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: oddpage/caption after (1)}%
\ifhv@twoColumnCaption
- \hv@typeout{do@hvFloat@doubleFULLPAGE: twoColumnCaption=true}%
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: oddpage/caption after/twoColCaption (1)}%
\if@firstcolumn
- \hv@typeout{do@hvFloat@doubleFULLPAGE: firstcolumn=true}%
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: oddpage/caption after/firstcolumn (1)}%
\afterpage{\do@hvFloat@doubleFULLPAGE@CaptionAfterTwoCol}%
\else
- \hv@typeout{do@hvFloat@doubleFULLPAGE: firstcolumn=false}%
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: oddpage/caption after/secondcolumn (1)}%
\do@hvFloat@doubleFULLPAGE@CaptionAfterTwoCol
\fi
\else
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: oddpage/caption after/oneColCaption (1)}%
\if@twocolumn
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: oddpage/caption after/twoColCaption/twocolumn (1)}%
\if@firstcolumn
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: afterpage -> oddpage/caption after/twoColCaption/twocolumn/firstcolumn (1)}%
\afterpage{\do@hvFloat@doubleFULLPAGE@CaptionAfter}%
\else
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: oddpage/caption after/twoColCaption/twocolumn/secondcolumn (1)}%
\do@hvFloat@doubleFULLPAGE@CaptionAfter
\fi
\else
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: oddpage/caption after/twoColCaption/onecolumn (1)}%
\do@hvFloat@doubleFULLPAGE@CaptionAfter
\fi
\fi
@@ -1698,36 +1814,53 @@
\fi
\fi% \ifcase
\else% we have an even page
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: evenpage (1 -- \thepage)}%
\ifcase\hv@@capPos% Before
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: evenpage/caption before (0 -- \thepage)}%
\if@twocolumn
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: evenpage/caption before/twocolumn (0 -- \thepage)}%
\if@firstcolumn
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: evenpage/caption before/twocolumn/firstcolumn (0 -- \thepage)}%
\ifhv@twoColumnCaption
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: afterpage^2->evenpage/caption before/twocolumn/firstcolumn/twocolCap (0 -- \thepage)}%
\afterpage{\afterpage\set@Normal@Bottom@Caption*\afterpage{\do@hvFloat@doubleFULLPAGE@CaptionBefore{#1}}}%
\else
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: afterpage^2 -> evenpage/caption before/twocolumn/firstcolumn/oneColCap (0 -- \thepage)}%
\afterpage{\afterpage{\afterpage{\set@Normal@Bottom@Caption\do@hvFloat@doubleFULLPAGE@CaptionBefore{#1}}}}%
\fi
\else
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: afterpage^2->evenpage/caption before/twocolumn/secondcolumn (0 -- \thepage)}%
\afterpage{\afterpage{\set@Normal@Bottom@Caption\do@hvFloat@doubleFULLPAGE@CaptionBefore{#1}}}%
\fi
- \else% \if@twocolumn
+ \else
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: afterpage -> evenpage/caption before/onecolumn (0 -- \thepage)}%
\afterpage{\set@Normal@Bottom@Caption\do@hvFloat@doubleFULLPAGE@CaptionBefore}%
\fi
\or % capPos after
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: evenpage/caption after (1 -- \thepage)}%
\if@twocolumn
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: evenpage/caption after/twocolumn (1 -- \thepage)}%
\if@firstcolumn
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: evenpage/caption after/twocolumn/firstcolumn (1 -- \thepage)}%
\ifhv@twoColumnCaption
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: afterpage -> evenpage/caption after/twocolumn/firstcolumn/twoColCaption (1 -- \thepage)}%
\afterpage{\afterpage\afterpage{\do@hvFloat@doubleFULLPAGE@CaptionAfterTwoCol{#1}}}%
\else
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: afterpage -> evenpage/caption after/twocolumn/firstcolumn/oneColCaption (1 -- \thepage)}%
\afterpage{\afterpage\afterpage{\do@hvFloat@doubleFULLPAGE@CaptionAfter{#1}}}%
\fi
\else
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: evenpage/caption after/twocolumn/secondcolumn (1 -- \thepage)}%
\ifhv@twoColumnCaption
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: afterpage1 2 -> evenpage/caption after/twocolumn/secondcolumn/twoColCaption (1 -- \thepage)}%
\afterpage{\afterpage{\do@hvFloat@doubleFULLPAGE@CaptionAfterTwoCol{#1}}}%
\else
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: afterpage1 2 -> evenpage/caption after/twocolumn/secondcolumn/oneColCaption (1 -- \thepage)}%
\afterpage{\afterpage{\do@hvFloat@doubleFULLPAGE@CaptionAfter{#1}}}%
\fi
\fi
- \else% \if@twocolumn
+ \else
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE: afterpage -> evenpage/caption after/onecolumn (1 -- \thepage)}%
\afterpage{\do@hvFloat@doubleFULLPAGE@CaptionAfter}%
\fi
\else % \ifcase Any other caption
@@ -1861,9 +1994,9 @@
}
\def\do@hvFloat@doubleFULLPAGE@CaptionAfterTwoCol{%
- \hv@typeout{do@hvFloat@doubleFULLPAGE@CaptionAfterTwoCol: start} %
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE@CaptionAfterTwoCol: start} %
\afterpage{%
- \hv@typeout{do@hvFloat@doubleFULLPAGE@CaptionAfterTwoCol: afterpage start} %
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE@CaptionAfterTwoCol: afterpage start} %
\global\savebox{\hvObjectBox}{\ifhv@useOBox\usebox{\hvOBox}\else\hv@floatObject\fi}%
\vspace*{\the\dimexpr-1in-\voffset-\topmargin-\headheight-\headsep-\baselineskip-\parskip+1.5\lineskip}% no interlineskip
\hspace*{\the\dimexpr-\evensidemargin-\parindent-1in}%
@@ -1876,7 +2009,7 @@
\ifx\hv@label\@empty\else\label{\hv@label}\fi
\clipbox*{0 0 \the\hv@leftPageObjectWidth{} \height}{\usebox\hvObjectBox}%
\newpage\if@twocolumn\null\newpage\fi
- \hv@typeout{do@hvFloat@doubleFULLPAGE@CaptionAfterTwoCol: insert newpage} %
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE@CaptionAfterTwoCol: insert newpage} %
\global\savebox{\hvObjectBox}{\ifhv@useOBox\usebox{\hvOBox}\else\hv@floatObject\fi}%
\thispagestyle{empty}%
\vspace*{\the\dimexpr-1in-\voffset-\topmargin-\headheight-\headsep-\baselineskip-\parskip+1.5\lineskip}% -0.5\paperheight+0.5\ht\hvObjectBox
@@ -1906,7 +2039,7 @@
\ifx\hv@label\@empty\else\label{\hv@label-cap}\fi
\end{\hv@floatType*}%
}%
- \hv@typeout{do@hvFloat@doubleFULLPAGE@CaptionAfterTwoCol: afterpage done} %
+ \hvfloat@typeout{do@hvFloat@doubleFULLPAGE@CaptionAfterTwoCol: afterpage done} %
}
\def\do@hvFloat@doubleFULLPAGE@CaptionOther#1{%
@@ -2013,6 +2146,8 @@
}
\def\setPageObject{%
+ \hvfloat@typeout{>>>> setPageObject/start environment ...}%
+ \afterpage{\checkoddpage}%
\ifhv@star
\begin{\hv@floatType*}[p]%
\else
@@ -2021,25 +2156,32 @@
\hv@tempcnt=\@floatpenalty% suppress "float too big" message
\hfuzz=\maxdimen
\expandafter\hvFloatSet\expandafter{\hv@save@setting}%
- \ifhv@FULLPAGE
+ \ifhv@FULLPAGE
+ \hvfloat@typeout{>>>> setPageObject/FULLPAGE}%
\@floatpenalty=\z@% no message that float too large
\vspace*{\the\dimexpr-1in-\voffset-\topmargin-\headheight-\headsep}%-0.5\baselineskip%
- \checkoddpage
\if@twoside
+ \hvfloat@typeout{>>>> setPageObject/FULLPAGE/twoside}%
\ifoddpage
+ \hvfloat@typeout{>>>> setPageObject/FULLPAGE/twoside/oddpage (\thepage)}%
\hspace*{\the\dimexpr-\oddsidemargin-\parindent-1in}%
\else
+ \hvfloat@typeout{>>>> setPageObject/FULLPAGE/twoside/evenpage (\thepage)}%
\hspace*{\the\dimexpr-\evensidemargin-\parindent-1in}%
\fi
\else
+ \hvfloat@typeout{>>>> setPageObject/FULLPAGE/oneside}%
\hspace*{\the\dimexpr-\oddsidemargin-\parindent-1in}%
\fi
+ \hvfloat@typeout{>>>> setPageObject/FULLPAGE/set pagestyle empty}%
\AtBeginShipoutNext{\thispagestyle{empty}}% to prevent heading/footer
% \afterpage{\AddToHookNext{shipout/after}{\thispagestyle{empty}}}%
\usebox\hvObjectBox
\else
+ \hvfloat@typeout{>>>> setPageObject/NO FULLPAGE}%
\usebox\hvObjectBox
\fi
+ \hvfloat@typeout{>>>> setPageObject/stop environment}%
\ifhv@star
\end{\hv@floatType*}%
\else