Разделите большое изображение на изображения формата А4 - PullRequest
2 голосов
/ 19 января 2010

Я хотел бы разбить большой файл PNG на страницы формата А4, чтобы их можно было легко распечатать.

Я бы хотел использовать скрипт командной строки Linux для этого:

shell> разбить на страницы формата a4 some-big.png

Ответы [ 5 ]

2 голосов
/ 01 сентября 2011

Полагаю, у вас установлено ImageMagick & pdfposter .

A) конвертировать .png в .pdf (используя ImageMagick)

convert input0.png input1.pdf

B) Плитка вашего изображения с помощью pdfposter:

pdfposter -s4 input1.pdf out.pdf

эта команда увеличивает input0 ровно в 4 раза, печатает на стандартном A4 media, и пусть pdfposter определит количество требуемых страниц.

2 голосов
/ 19 января 2010

Попробуйте использовать кадрирование imagemagick до нужного размера.

Допустим, у вас есть изображение Ленны 480x480 :

alt text
(источник: wikimedia.org )

, и вы хотите обрезать его в 4 изображения 240x240:

alt text

Использование:

convert Lenna.png -crop 240x240+0+0  crop_lenna.png

Теперь вам нужно выяснить, сколько пикселей помещается на странице формата А4 в вашем принтере, а также размеры изображения, и это оченьпростой скрипт отсюда.

0 голосов
/ 21 января 2010

Памятник NetPBM выполнит разбиение на несколько страниц. Вам нужно будет установить параметры -width и -height в соответствии с DPI ваших желаемых изображений формата A4.

И вам также нужно сначала преобразовать входное изображение в формат netpbm с помощью pngtopam:

pngtopam big.png | pamdice -outstem tile -height h -width w

В результате у вас останется куча файлов с именем tile_x_y.ppm

Преобразовать каждый из них в PNG с помощью pnmtopng

0 голосов
/ 19 января 2010

Я не знаю ни одного готового инструмента командной строки, чтобы сделать это.Если вы не используете его все время, для определения правильной комбинации команд и опций ImageMagick может потребоваться больше времени, чем для написания быстрой программы.

Простой способ, если вы вообще знаете Python, это написатьпрограмма из нескольких строк с использованием PIL (Python Imaging Library).Чтобы прочитать изображение занимает одну строку.Извлечь куски некоторой ширины и высоты в указанном месте, чтобы сохранить как новые файлы изображений, также легко.Добавьте пару циклов для сканирования строк и столбцов фрагментов размера A4, и все готово.

Если вы не знаете Python, почти все языки программирования с быстрой записью имеют аналогичные возможности.,Библиотека GD приходит на ум;у него есть привязки для нескольких языков.

0 голосов
/ 19 января 2010

Вы можете использовать преобразование ImageMagick для масштабирования изображения; Возможно, в ImageMagick есть и другие инструменты для обрезки изображения, если хотите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...