这是关于之前提出的问题如何在两页上添加图片
我认为这是一段很棒的代码,但它似乎对我不起作用。我已将\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
时,您也可以按照以下形式编写它:adjustbox
export
\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}}%