当我使用以下内容嵌入图像时:
\begin{figure}[htb]
\centering
\includegraphics{my_image}
\caption{blaaa}
\label{fig:blaaa}
\end{figure}
而如果my_image
是 JPG 文件,图像无法以正确的格式显示。它显示得比原图更大,my_image.jpg
因此质量很差。即使我这样做
\includegraphics[width=300px,height=100px]{my_image}
对于大小恰好为 300px*100px 的图片my_image.jpg
,它会以更大的尺寸显示并被拉伸 :( 我没有更改\includegraphics
设置的标题声明。我希望带有纯文本的图像\includegraphics{my_image}
以其真实尺寸显示。
答案1
当您截取屏幕截图或将 Matlab 中的图形导出为栅格化图像时,通常生成的图像文件不会在其元数据中包含任何分辨率信息(或“像素密度”,通常以“每英寸点数”或“DPI”为单位)。当您使用 将此类图像包含在 LaTeX 文档中时\includegraphics
,将假定其分辨率为 72 DPI。例如,这意味着大小为 1440x900 像素的屏幕截图在您的 PDF 或 DVI 中的宽度为 1440 像素/72 像素/英寸 = 20 英寸 = 51 厘米,因此它很可能对您的文档来说太大。水平宽度为 15 英寸(= 38 厘米)的计算机显示器在屏幕尺寸为 1440x900 像素时,其分辨率为 1440 像素/15 英寸 = 96 dpi。如果您希望屏幕截图在计算机屏幕上和打印文档中具有相同的尺寸(在本例中宽度为 38 厘米),则需要找到一种方法让 LaTeX 知道图像的分辨率是 96 DPI。有多种方法可以做到这一点:
可选择以下方式includegraphics
:
如果您使用 编译文档pdflatex
,则可以通过 加载图像来指定图像的分辨率\includegraphics [resolution=<resolution in DPI>] {<filename>}
。这仅在图像中不包含分辨率信息时才有效。
通过使用 GIMP 设置图像元数据:
转到Image
->并在下拉菜单中选择Scale Image...
后调整 X 和 Y 分辨率。然后保存您的图像。pixels/in
通过使用 IrfanView 设置图像元数据:
在 IrfanView 4.30 中,您可以单击Image - Information
(或按I)来显示图像的元数据。第五行称为Resolution
,应包含两个字段,您可以在其中设置水平和垂直分辨率(以每英寸点数为单位)。通过按下按钮Change
,将设置新的分辨率。图像的“物理”尺寸(以厘米和英寸为单位)显示在第八行中,称为 ,该尺寸是通过将像素大小与分辨率相乘而获得的Print Size (from DPI)
。然后,您可以通过调用将图像包含在 LaTeX 文档中,而\includegraphics {<filename>}
无需任何额外选项。
通过使用 ImageMagick 设置图像元数据:
在 Linux 系统上,ImageMagick 程序通常已经存在或可以轻松安装。然后,您可以通过convert <original file name> -density <resolution> -units PixelsPerInch <new file name>
在 shell 中调用来设置分辨率信息。然后,您可以通过调用将图像包含在 LaTeX 文档中,而\includegraphics {<filename>}
无需任何额外选项。