Изменение размера снимков экрана / снимков экрана для включения в Beamer

Извините, это может быть, а может и не быть вопросом программирования, но я пытаюсь изменить размер скриншотов с помощью Imagemagick и Gimp, чтобы включить их в презентацию Beamer, но получается даже более размытым, чем изменение размера выполнено 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**2, а f - имя файла. Когда я затем возвращаюсь в свою презентацию Beamer и добавляю измененную фигуру \includegraphics{resized_fig.png}, размер выглядит примерно правильным, но очень размытым. Я также пробовал изменить размер в GIMP (используя графический интерфейс), но тоже не повезло ... помогите? Спасибо...


person hatmatrix    schedule 31.03.2010    source источник
comment
Может быть, размытость изменится при небольших корректировках значения изменения размера?   -  person Charles Stewart    schedule 31.03.2010
comment
какой алгоритм изменения размера вы используете? а почему бы вам просто не масштабировать с помощью латекса? что в этом плохого?   -  person Mica    schedule 31.03.2010
comment
Да, при масштабировании с помощью LaTeX это получается размытым - согласно другому сообщению об этой проблеме на SO, для изменения размера было рекомендовано использовать другие программы. В imagemagick я использую алгоритм изменения размера по умолчанию ... И что касается изменения размытости с небольшими корректировками, это тоже, похоже, не сработало -   -  person hatmatrix    schedule 01.04.2010
comment
Если вы используете pdflatex, изображение вообще не масштабируется LaTeX, оно просто включается в PDF как есть. Если выглядит паршиво, может, попробовать другую программу просмотра? Adobe Reader, несмотря на все свои недостатки, неплохо справляется с масштабированием изображений.   -  person Thomas    schedule 01.04.2010
comment
О, я вижу - да, Adobe Reader определенно лучше, чем Preview ... но я думаю, все зависит от того, лучше ли их масштабирование, чем то, что я могу сделать априори ...   -  person hatmatrix    schedule 05.04.2010


Ответы (1)


Если вы хотите сохранить резкость пикселей, т.е. не масштабировать и не интерполировать пиксели, а представлять их в виде маленьких квадратов, я предлагаю такой подход:

  1. Преобразуйте изображение PNG в EPS / PDF с помощью sam2p.

  2. Включите преобразованный EPS или PDF в свой документ как обычно. Каждый пиксель будет представлять собой небольшую прямоугольную рамку, он будет выглядеть четким и резким и будет масштабироваться без интерполяции.

Например, предположим, что у нас есть небольшое растровое изображение, которое мы хотим показать:

10 × 10

Мы можем преобразовать его в векторный 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 с масштабированием без интерполяции

Недостатки:

  • PDF-версия изображения, вероятно, будет в несколько раз больше, чем исходная PNG-версия.
person sastanin    schedule 01.04.2010