包括一张两页大小的图片吗?

包括一张两页大小的图片吗?

这是关于之前提出的问题如何在两页上添加图片

我认为这是一段很棒的代码,但它似乎对我不起作用。我已将\twopagepicture上述解决方案中的代码复制并粘贴到测试文件中,并附上一张大图片(.jpg格式)以供使用。

测试文件为:

\documentclass[twosided]{book}

%...twosidepicture code copy/pasted from above by M. Scharrer>

\begin{document}

\chapter{testing code}

This is a test for the code.

\twosidedpicture{t}{p}{image.jpg}{Caption test}

\end{document}

这是通过 MikTeX 2.8 的 pdfLaTeX 进行的处理的。

LaTeX 弹出两个错误,均相同:

! Illegal unit of measure (pt inserted).

              \width

1.105 \end{document}

该文件的输出为 3 页。第一页显示虚拟章节标题。第二页正确显示了双页图像的奇数部分,其下方有标题。但是,第三页再次显示了 LHS 图像,但裁剪不正确:图像从左侧开始(因此裁剪了 RHS),并且图像的顶部与 LHS 页面上的图像不齐平。

不确定究竟是什么原因导致了这种情况,但经过搜索发现,唯一存在调用的地方\width是在\twopagepicture代码本身内。

任何帮助将不胜感激。

答案1

这是由 当前版本中的错误引起的adjustbox。在设置宏trim之前会评估值\width。我在包中修复了这个问题,下一个发布的版本将可以很好地处理给定的代码。

正如 cmhughes 指出的那样,您实际上可以在此处使用自定义宽度\mywidth,因为它还用于确定要调整的内容。因此,不要:

\adjustbox{trim=0 0 {.5\width} 0,clip}{\includegraphics[width=2\mywidth]{#3}}
%...
\adjustbox{trim={.5\width} 0 0 0,clip}{\includegraphics[width=2\mywidth]{#3}}

你可以写:

\adjustbox{trim=0 0 {\mywidth} 0,clip}{\includegraphics[width=2\mywidth]{#3}}
%...
\adjustbox{trim={\mywidth} 0 0 0,clip}{\includegraphics[width=2\mywidth]{#3}}

它也可以适用于当前有缺陷的版本。

我使用了\adjustbox(这在某种程度上基于graphicx代码)宏,\includegraphics因为我们需要先调整大小,然后进行剪辑。不幸的是,\includegraphics没有提供\width相对于原始宽度进行剪辑的宏。

然而,自从我编写了原始代码以来,我添加了一些新功能,因此当使用选项加载包adjustbox时,您也可以按照以下形式编写它:adjustboxexport

\includegraphics[width=2\mywidth,Clip=0 0 {.5\width} 0]{#3}}%
%...
\includegraphics[width=2\mywidth,Clip={.5\width} 0 0 0]{#3}}%

之所以有效,是因为 的Clip处理方式与 不同clip,trim=...,或者:

\includegraphics[width=2\mywidth,Clip=0 0 {\mywidth} 0]{#3}}%
%...
\includegraphics[width=2\mywidth,Clip={\mywidth} 0 0 0]{#3}}%

相关内容