我正在通过从大型图像数据库中包含一些随机图像来创建 pdf。此数据库中的图像分辨率差异很大,因此我无法更改分辨率。除此之外,由于布局限制,我无法使用类似问题的一些现有解决方案。
注意:您可以下载图片这里。
\documentclass{article}[10pt]
\usepackage[margin=0.5in]{geometry}
\usepackage{graphicx}
\usepackage{booktabs}
\usepackage{rotating}
\usepackage{tabularx}
\renewcommand\tabularxcolumn[1]{m{#1}}
\usepackage{xcolor}
\newcommand\pic[1]{
\includegraphics[width=1cm]{#1}
\hspace{0.25cm}
}
\newcommand\rdpic[3]%
{\begin{tabular}[]{@{}l@{}}
\footnotesize\color{blue} #1\\[-1ex]
\footnotesize\color{blue} #2\\
\pic{#3}
\end{tabular}%
}
\begin{document}
\noindent
\begin{tabularx}{\textwidth}%
{>{\begin{sideways}\color{red}}m{2ex}<{\end{sideways}}%
X%
}
\toprule
row 1
& \pic{1-13.jpg}
\\\midrule
row 2
& \rdpic{1}{-0.4602}{1-13.jpg}
\rdpic{2}{-0.4600}{140a900f-0781-4627-80eb-d8789de17812.jpg}
\rdpic{3}{-0.4600}{5d7bb2d2-041a-420c-a470-384aa15dbe83.jpg}
\rdpic{4}{-0.4599}{be21f5f1-ad2c-4389-8473-7b18c68e4eb9.jpg}
\rdpic{5}{-0.4599}{ae5d6366-7d30-4755-bcf1-34fae2be0054.jpg}
\rdpic{6}{-0.4598}{ed3ae766-9a7e-4f3b-8b57-c6c97b68a04a.jpg}
\rdpic{7}{-0.4598}{c2e177d3-38a6-48bb-91ca-ee88810fb2c7.jpg}
\rdpic{8}{-0.4598}{377a7efa-af04-4c21-8284-d0647949aa69.jpg}
\rdpic{9}{-0.4598}{9b521e94-55d8-4c68-8f22-fb7dd0ce8953.jpg}
\rdpic{10}{-0.4598}{96ce00e6-f672-4d49-8a90-dd5855eb093f.jpg}
\\\midrule
row 3
& \rdpic{1}{-0.4602}{1-13.jpg}
\rdpic{365113}{-0.1779}{10-13.jpg}
\rdpic{421389}{-0.1196}{2-13.jpg}
\rdpic{618943}{0.0728}{3-13.jpg}
\rdpic{801031}{0.1514}{4-13.jpg}
\rdpic{569609}{0.0503}{5-13.jpg}
\rdpic{655861}{0.0862}{6-13.jpg}
\rdpic{894375}{0.7555}{7-13.jpg}
\rdpic{136541}{-0.3524}{8-13.jpg}
\\\bottomrule
\end{tabularx}
\end{document}
答案1
实际上,这个例子一点也不简单,只需删除一些东西,检查错误是否仍然发生,就可以轻松地缩减为以下内容
\documentclass{article}
\usepackage{tabularx,graphicx}
\begin{document}
\noindent
\begin{tabularx}{\textwidth}{X}
\includegraphics{10-13.jpg}
\end{tabularx}
\end{document}
如果你查看日志或终端输出,你会看到
pdfTeX warning: pdflatex: arithmetic: number too big
<10-13.jpg, id=1, --32768.0pt x 0.0pt> <use 10-13.jpg>
! Dimension too large.
因此,在图形包算法放弃之前,! Dimension too large
pdftex 已经放弃读取图像的自然大小,并且已经超出其宽度,显示为负的 maxdimen。考虑到起始宽度,任何将图像缩放到任何大小的尝试都将以任意方式失败。
该文件似乎有些奇怪,如果我只是让 imagemagic convert 重写 jpg
mv 10-13.jpg x.jpg
convert x.jpg 10-13.jpg
然后 pdftex 可以毫无问题地读取它并显示:
<10-13.jpg, id=1, 718.685pt x 530.98375pt> <use 10-13.jpg> <use 10-13.jpg>
也就是说,它读取的初始宽度为 718.685pt