调整屏幕截图/屏幕截图的大小以包含在Beamer中

时间:2010-03-31 09:36:29

标签: image-processing latex imagemagick beamer gimp

很抱歉,这可能是也可能不是直接编程问题,但我正在尝试使用Imagemagick和Gimp调整屏幕大小以包含在Beamer演示文稿中,但它甚至比resizing done by LaTeX更模糊。

例如,在Beamer中,我可能会有一个重新缩放图像\includegraphics[width=.5\textwidth]{fig.png}的命令。使用像

这样的东西
\begin{frame}
\message{width = \the\textwidth}
\message{height = \the\textheight}
\end{frame}

我已经获得了\textwidth\textheight个参数(345.69548,261.92444)。所以我有一个脚本(在Python中),它发送一个系统调用Imagemagick:

'convert %s -resize %.6f@ resized_%s' % (f,a,f)

其中a计算为\textwidth*\textheight*0.5**2f是文件名。然后,当我回到我的Beamer演示文稿并包含已调整大小的图形\includegraphics{resized_fig.png}时,大小看起来大致正确,但它非常模糊。我也试过在Gimp中调整大小(使用GUI),但没有运气......帮忙?感谢...

1 个答案:

答案 0 :(得分:4)

如果你想保留像素清晰度,即不要缩放和插值像素,而是将它们表示为小方块,我建议采用这种方法:

  1. 使用sam2p将PNG图像转换为EPS / PDF。

  2. 像往常一样在文档中包含已转换的EPS或PDF。每个像素都只是一个小矩形框,看起来很清晰锐利,无需插值即可缩放。

  3. 例如,我们假设我们要显示一个小的光栅图像:

    10×10 http://i41.tinypic.com/r10e82.png

    我们可以使用以下命令将其转换为矢量PDF:

    sam2p 10x10.png PDF: 10x10.pdf
    

    现在我们有一个矢量版本(每个像素都是一个矩形),我们可以将它包含在任何LaTeX文档中并自由缩放。所有像素都会缩放,但不会进行插值。

    例如,

    \documentclass[12pt]{article}
    \usepackage[papersize={4cm,4cm},margin=2pt]{geometry}
    \usepackage{graphicx}
    
    \begin{document}
    \includegraphics[width=0.8\linewidth]{10x10.pdf}
    \end{document}
    

    这将是这样的:

    10×10 scaled without interpolation http://i43.tinypic.com/24yq0io.png

    缺点:

    • 图片的PDF版本可能比其原始PNG版本大几倍。