\twopagepicture 包精炼

\twopagepicture 包精炼

我已经\twopagepicture成功使用该软件包(所有边距、外观等)与我在论文中寻找的宽图之一相符,但是,它只出现在章节末尾,而不是出现在应该介绍该图的文本之后。我是否应该添加特定命令来强制将图形移至下一个偶数/奇数页?我尝试过在\clearpage下一节之前添加,但仍然如此。

我正在开发一个memoir类似的类,我发现它对法语风格的回忆录很有用。以下是您可以在我的样式文件中找到的内容:

\usepackage{amsmath,amssymb}             % AMS Math %Format& definition of styles Myriam
\usepackage[french]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{multirow}
\usepackage{supertabular}
\usepackage{rotating}
\usepackage{graphicx}
\usepackage{adjustbox}
\usepackage{afterpage}
\usepackage{placeins}
\usepackage{xcolor}
\usepackage{diagbox}
\usepackage{slashbox}

% For the `memoir` class remove the following two packages.
% This class already provide the functionality of both
\usepackage{caption}
\usepackage[strict]{changepage}
%%%

\setcounter{totalnumber}{1}
\setcounter{topnumber}{1}
\setcounter{bottomnumber}{1}
\renewcommand{\topfraction}{.99}
\renewcommand{\bottomfraction}{.99}
\renewcommand{\textfraction}{.01}

\makeatletter
\newcommand*{\twopagepicture}[4]{%
    \checkoddpage
    \ifoddpage
        \expandafter\@firstofone
    \else
        \expandafter\afterpage
    \fi
    {\afterpage{%
    \if #1t%
        \if #2p%
            \thispagestyle{empty}%
            \afterpage{\thispagestyle{empty}}%
        \fi
    \fi
    \begin{figure}[#1]
        \if #2p%
            \if #1t%
                \vspace*{-\dimexpr1in+\voffset+\topmargin+\headheight+\headsep\relax}%
            \fi
        \fi
        \if #1b%
            \caption{#4}%
        \fi
        \makebox[\textwidth][l]{%
        \if #2p\relax
            \let\mywidth\paperwidth
            \hskip-\dimexpr1in+\hoffset+\evensidemargin\relax
        \else
            \let\mywidth\linewidth
        \fi
        \adjustbox{trim=0 0 {\mywidth} 0,clip}{\includegraphics[width=2\mywidth]{#3}}}%
        \if #1b\else
            \caption{#4}%
        \fi
        \if #2p%
            \if #1b%
                \vspace*{-\dimexpr\paperheight-\textheight-1in-\voffset-\topmargin-\headheight-\headsep\relax}%
            \fi
        \fi
    \end{figure}%
    \begin{figure}[#1]
        \if #2p%
            \if #1t%
                \vspace*{-\dimexpr1in+\voffset+\topmargin+\headheight+\headsep\relax}%
            \fi
        \fi
        \makebox[\textwidth][l]{%
        \if #2p%
            \let\mywidth\paperwidth
            \hskip-\dimexpr1in+\hoffset+\oddsidemargin\relax
        \else
            \let\mywidth\linewidth
        \fi
        \adjustbox{trim={\mywidth} 0 0 0,clip}{\includegraphics[width=2\mywidth]{#3}}}%
        \if #2p%
            \if #1b%
                \vspace*{-\dimexpr\paperheight-\textheight-1in-\voffset-\topmargin-\headheight-\headsep\relax}%
            \fi
        \fi
    \end{figure}%
    }}%
}
\makeatother
\usepackage{natbib}
\usepackage{array}
\usepackage{booktabs,tabularx}
\usepackage{longtable}
\usepackage{ltxtable}
\usepackage{xcolor}\usepackage{multicol}
\usepackage{verbatim}
\usepackage[normalem]{ulem}
\usepackage{color}
\definecolor{forestgreen}{rgb}{0.13,0.54,0.13}
\usepackage[left=1.5in,right=1.3in,top=1.1in,bottom=1.1in,includefoot,includehead,headheight=13.6pt]{geometry}
\renewcommand{\baselinestretch}{1.05}





% Table of contents for each chapter

\usepackage[nottoc, notlof, notlot]{tocbibind}
\usepackage[french]{minitoc}
\setcounter{minitocdepth}{3}
\mtcindent=15pt
% Use \minitoc where to put a table of contents

\usepackage{aecompl}

% Glossary / list of abbreviations

\usepackage[intoc]{nomencl}
\renewcommand{\nomname}{Liste des Abréviations}

\makenomenclature

% My pdf code

\usepackage{ifpdf}

\ifpdf
  \usepackage[pdftex]{graphicx}
  \DeclareGraphicsExtensions{.jpg}
  \usepackage[a4paper,pagebackref,hyperindex=true]{hyperref}
\else
  \usepackage{graphicx}
  \DeclareGraphicsExtensions{.ps,.eps}
  \usepackage[a4paper,dvipdfm,pagebackref,hyperindex=true]{hyperref}
\fi

\graphicspath{{.}{images/}}

%nicer backref links
\renewcommand*{\backref}[1]{}
\renewcommand*{\backrefalt}[4]{%
\ifcase #1 %
(Non cité.)%
\or
(Cité en page~#2.)%
\else
(Cité en pages~#2.)%
\fi}
\renewcommand*{\backrefsep}{, }
\renewcommand*{\backreftwosep}{ et~}
\renewcommand*{\backreflastsep}{ et~}

% Links in pdf
\usepackage{color}
\definecolor{linkcol}{rgb}{0,0,0.4} 
\definecolor{citecol}{rgb}{0.5,0,0} 

% Change this to change the informations included in the pdf file

\hypersetup
{
bookmarksopen=true,
pdftitle="EFFETS DE LA FLEXIBILITÉ ET LA STANDARDISATION DES SYSTÈMES D'INFORMATION SUR L'INNOVATION DE SERVICE DANS LES OPÉRATIONS BANCAIRES SOUS -TRAITÉES",
pdfauthor="Myriam RAYMOND", %auteur du document
pdfsubject="Flexibilité et standardisation des SI dans les BPOs", %sujet du document
%pdftoolbar=false, %barre d'outils non visible
pdfmenubar=true, %barre de menu visible
pdfhighlight=/O, %effet d'un clic sur un lien hypertexte
colorlinks=true, %couleurs sur les liens hypertextes
pdfpagemode=None, %aucun mode de page
pdfpagelayout=SinglePage, %ouverture en simple page
pdffitwindow=true, %pages ouvertes entierement dans toute la fenetre
linkcolor=linkcol, %couleur des liens hypertextes internes
citecolor=citecol, %couleur des liens pour les citations
urlcolor=linkcol %couleur des liens pour les url
}

% definitions.
% -------------------

\setcounter{secnumdepth}{4}
\setcounter{tocdepth}{2}

% Some useful commands and shortcut for maths:  partial derivative and stuff

\newcommand{\pd}[2]{\frac{\partial #1}{\partial #2}}
\def\abs{\operatorname{abs}}
\def\argmax{\operatornamewithlimits{arg\,max}}
\def\argmin{\operatornamewithlimits{arg\,min}}
\def\diag{\operatorname{Diag}}
\newcommand{\eqRef}[1]{(\ref{#1})}

\usepackage{rotating}                    % Sideways of figures & tables
%\usepackage{bibunits}
%\usepackage[sectionbib]{chapterbib}          % Cross-reference package (Natural BiB)
%\usepackage{natbib}                  % Put References at the end of each chapter
                                         % Do not put 'sectionbib' option here.
                                         % Sectionbib option in 'natbib' will do.
\usepackage{fancyhdr}                    % Fancy Header and Footer

% \usepackage{txfonts}                     % Public Times New Roman text & math font

%%% Fancy Header %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Fancy Header Style Options

\pagestyle{fancy}                       % Sets fancy header and footer
\fancyfoot{}                            % Delete current footer settings

%\renewcommand{\chaptermark}[1]{         % Lower Case Chapter marker style
%  \markboth{\chaptername\\
hechapter.\ #1}}{}} %

%\renewcommand{\sectionmark}[1]{         % Lower case Section marker style
%  \markright{\thesection.\ #1}}         %

\fancyhead[LE,RO]{\bfseries\thepage}    % Page number (boldface) in left on even
% pages and right on odd pages
\fancyhead[RE]{\bfseries\nouppercase{\leftmark}}      % Chapter in the right on even pages
\fancyhead[LO]{\bfseries\nouppercase{\rightmark}}     % Section in the left on odd pages

\let\headruleORIG\headrule
\renewcommand{\headrule}{\color{black} \headruleORIG}
\renewcommand{\headrulewidth}{1.0pt}
\usepackage{colortbl}
\arrayrulecolor{black}

\fancypagestyle{plain}{
  \fancyhead{}
  \fancyfoot{}
  \renewcommand{\headrulewidth}{0pt}
}

\usepackage{MyAlgorithm}
\usepackage[noend]{MyAlgorithmic}

%%% Clear Header %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Clear Header Style on the Last Empty Odd pages
\makeatletter

\def\cleardoublepage{\clearpage\if@twoside \ifodd\c@page\else%
  \hbox{}%
  \thispagestyle{empty}%              % Empty header styles
  \newpage%
  \if@twocolumn\hbox{}\newpage\fi\fi\fi}

\makeatother

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
% Prints your review date and 'Draft Version' (From Josullvn, CS, CMU)
\newcommand{\reviewtimetoday}[2]{\special{!userdict begin
    /bop-hook{gsave 20 710 translate 45 rotate 0.8 setgray
      /Times-Roman findfont 12 scalefont setfont 0 0   moveto (#1) show
      0 -12 moveto (#2) show grestore}def end}}
% You can turn on or off this option.
% \reviewtimetoday{\today}{Draft Version}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 

\newenvironment{maxime}[1]
{
\vspace*{0cm}
\hfill
\begin{minipage}{0.5\textwidth}%
%\rule[0.5ex]{\textwidth}{0.1mm}\\%
\hrulefill $\:$ {\bf #1}\\
%\vspace*{-0.25cm}
\it 
}%
{%

\hrulefill
\vspace*{0.5cm}%
\end{minipage}
}

\let\minitocORIG\minitoc
\renewcommand{\minitoc}{\minitocORIG \vspace{1.5em}}



\newenvironment{bulletList}%
{ \begin{list}%
    {$\bullet$}%
    {\setlength{\labelwidth}{25pt}%
     \setlength{\leftmargin}{30pt}%
     \setlength{\listparindent}{20pt}%
     \setlength{\itemsep}{\parsep}}}%
{ \end{list} }

\newtheorem{definition}{Définition}
\renewcommand{\epsilon}{\varepsilon}

% centered page environment

\newenvironment{vcenterpage}
{\newpage\vspace*{\fill}\thispagestyle{empty}\renewcommand{\headrulewidth}{0pt}}
{\vspace*{\fill}}

我的章节如下:

    \chapter{Cas Pilote:}
    \label{chap:Pilote}
    \minitoc
    \twopagepicture{b}{p}{Chapitre8/ATMprocessmap.jpg}{Shéma du processus de dévidage des enveloppes deposées par les clients dans les guichets automatiques.}\label{fig:ATMprocess}
    \section % another section
\end

您能否帮我告诉我为什么过程图会移动到章节末尾,而不是在环境之后就位\twopagepicture?我仍然面临图片左侧部分和右侧部分(相当于标题的空间)之间的转换。我完全依赖您找出哪些软件包和/或命令存在冲突并导致这两个问题。


好的。我似乎对这张超大图像更清楚了。但也许我没有得到所需的结果,因为我没有正确遵循建议。以下是我需要澄清的一些步骤:a) 当您说“这些类型的图最好手动插入”时。您的意思是直接插入章节?那么 \twopagepicture 命令行在哪里?b) 您建议“尝试通过复制并重命名来修改 \twopagepicture”。我应该将文件复制到哪里?我该如何重命名它?c) 命令:

\cleartoevenpage \includegraphics[height=0.95\textheight]{petra} \newpage

应该出现在我正在写的章节中吗?我该如何将这些命令与 \twopagepicture 命令结合使用?0.95 是否表示我的图片缩放比例为“OK”?或者我应该尝试其他比例直到达到所需的结果?

最后,我在我的章节中使用了以下命令:

 \cleartoevenpage
    \twopagepicture{b}{p}{Chapitre8/ATMprocessmap.jpg}{Schéma du processus de dévidage des enveloppes de paiement déposées dans les guichets automatiques}
    \label{fig:ATMprocess}
    \pagebreak 
    \cleardoublepage

在 \includegraphics 之前尝试 \cleartoevenpage,在其后尝试 \newpage,都没有得到所需的结果。请注意,我需要省略所有纸张边距,并且我的浮动仍然会移动到章节末尾,在所需部分留下空白页。我该如何处理跨越两页的标题?

答案1

原因与图像过大有关。由于 LaTeX 无法将其放在页面上,因此它会浮动到末尾。这些类型的图形最好插入它们manually。您需要为此定义不同的环境。尝试\twopagepicture通过复制并重命名来修改它,然后注释掉begin{figure}\end{figure}

\newcommand*{\twopagepicture}[4]{% copy twopagepicture an comment out
    .....
 %   \begin{figure}[#1]
    ....                
 %    \end{figure}%
 %   \begin{figure}[#1]
    .....     
 %   \end{figure}%
   ......
}

这可以确保图像准确显示在放置的位置。

首先,为了正确放置两页,需要一种方法来清除到偶数页,通常我会按如下方式编写代码:

\usepackage[strict]{changepage}
\makeatletter
\newcommand{\cleartoevenpage}{%
  \clearpage%
  \ifoddpage\c@page\hbox{}\clearpage\fi}

需要考虑的第二个问题是,图像宽度始终大于尺寸\textwidth,因此任何缩放都必须在 上进行\textheight。这很重要,否则您将得到一个新页面。

在此处输入图片描述

偶数页图像只是正常放置,但\cleartoevenpage在放置之前发出一个,然后发出一个\newpage after,从而产生上面显示的图像。

\cleartoevenpage
\includegraphics[height=0.95\textheight]{petra}
\newpage

奇数页图像将需要向左移动\textwidth

 \hspace*{-\textwidth}\includegraphics[height=0.95\textheight]{petra}\hspace{1em}

在此处输入图片描述

parbox可以使用或 来放置标题minipage。在本例中,我使用了parbox。如果您的标题包含多于一段文字,则可以使用 minipage。根据您拥有的文字量,如果将其稍微向上或向下移动,效果可能会更好。这可以使用命令vspace或规则来完成(我更喜欢后者,因为我可以获得视觉线索,并且只在最终副本中将宽度归零)。

  \parbox[b]{0.25\textwidth}{\lipsum*[1-2]\par\rule{1pt}{50pt}}

您可以在下面最后一张图片中看到该规则。

在此处输入图片描述

完整 MWE

\documentclass{book}
\usepackage[left=0pt,right=0pt,top=0.5in,bottom=0.5in]{geometry}
\usepackage{graphicx,lipsum,caption,crop}
\usepackage[strict]{changepage}
\makeatletter
\newcommand{\cleartoevenpage}{%
  \clearpage%
  \ifoddpage\c@page\hbox{}\clearpage\fi}
\begin{document}
First page

\cleartoevenpage
\includegraphics[height=0.95\textheight]{petra}
\newpage
\hspace*{-\textwidth}\includegraphics[height=0.95\textheight]{petra}\hspace{1em}
\parbox[b]{0.25\textwidth}{\lipsum*[1-2]\par\rule{1pt}{50pt}}
\end{document}

希望这可以帮助。

相关内容