Меню Рубрики

Linux pdf to png

Как конвертировать pdf в jpg/png — linux

УТИЛИТА CONVERT

Для того, чтобы конвертировать pdf в jpg или png в linux, необходимо воспользоваться утилитой convert.

Утилита convert содержится в пакете ImageMagick и позволяет осуществлять массовое преобразование изображений.

Конвертация pdf в jpg или png — следующая команда позволяет постранично конвертировать pdf в jpg, каждый из полученных jpg файлов будет соответствовать одной странице pdf документа.
Для того, чтобы текст был читабелен на картинках при конвертации необходимо указать параметр плотности документа — density, значения 150 будет вполне достаточно.

Утилита имеет множество параметров и возможностей, с помощью нее можно повернуть изображение, изменить его размеры, залить фоновым цветом пустые области.

Для изменения размеров изображения можно воспользоваться параметром resize, которому в качестве аргументов можно выставить определенные значения или проценты.

УТИЛИТА PDFTOPPM

Иногда возможностей утилиты convert, которая использует imagemagick/graphicsmagick недостаточно, т.к. не всегда качество изображений на выходе соответствует желаемому, да и рациональность потребления ресурсов оставляет желать лучшего. В качестве альтернативы можно использовать утилиту pdftoppm.

Пакет в котором присутствует утилита: poppler-utils.

Конвертация pdf в png изображения (prefix — название изображений):

Источник

Convert multipage PDF to PNG and back (Linux)

I have a lot of PDF documents that I want to convert to PNG, edit in Gimp, and then save back to the multipage Acrobat file. I’m filling out forms and adding scanned signature, trying to avoid printing, signing, then scanning back in, with the ability to type the information I need to enter.

I’ve been trying to use Imagemagick to convert to png files, which seems to work fine. I use the command convert -quality 100 -density 300×300 multipage.pdf single%d.png
(I’m not really sure if the quality parameter is right for png).

But I’m having problems with saving back to PDF. Some of the files have the wrong page size, and I’ve tried every command and procedure I can find, but there are always a few odd sizes. The resolution seems to vary so that it looks good at a certain zoom level, but either a few pages are specified at about 2″ wide, or they are 8.5×11 but the others are about 35″ wide. I’ve tried making sure Gimp had the canvass size and resolution correct, and to save the resolution in the file, but that doesn’t seem to matter.

The command I use to save the files is convert -page letter -adjoin single*.png multipage.pdf I’ve tried other parameters, but none seemed to matter.

If anyone has any ideas or alternatives, I’d appreciate it.

2 Answers 2

«I’m not really sure if the quality parameter is right for PNG.»

For PNG output, the -quality setting is very unlike JPEG’s quality setting (which simply is an integer from 0 to 100 ).

For PNG it is composed by two single digits:

The first digit (tens) is (largely) the zlib compression level, and it may go from 0 to 9 .
(However the setting of 0 has a special meaning: when you use it you’ll get Huffman compression, not zlib compression level 0. This is often better. Weird but true.)

The second digit is the PNG data encoding filter type (before it is compressed):

  • 0 is none,
  • 1 is «sub»,
  • 2 is «up»,
  • 3 is «average»,
  • 4 is «Paeth», and
  • 5 is «adaptive».

In practical terms that means:

  • For illustrations with solid sequences of color a «none» filter ( -quality 00 ) is typically the most appropriate.
  • For photos of natural landscapes an «adaptive» filtering ( -quality 05 ) is generally the best.

«I’m having problems with saving back to PDF. Some of the files have the wrong page size, and I’ve tried every command and procedure I can find [. ] but either a few pages are specified at about 2″ wide, or they are 8.5×11 but the others are about 35″ wide.»

Not having available your PNG files, I created a few simple ones with different dimensions to verify the different commands (as I wasn’t sure myself any more). Indeed, the one you used:

does create all PDF pages in (same) letter size, but it places my sample of (differently sized) PNGs always on the lower left corner of the PDF page. (Should a PNG exceed the PDF page size, it does scale them down to make them fit — but it doesn’t scale up smaller PNGs to fill the available page space.)

The following modification to the command will place the PNGs into the center of each PDF page:

If this is still not good enough for you, you can enforce a (possibly non-proportional!) scaling to almost fill the letter area by adding a -scale ‘590!x770!’ parameter (this will leave a border of 11 pt at each edge of the page):

To leave away the extra border, use -scale ‘612!x792!’ . — Should you want only upward scaling to happen if required while keeping the aspect ratio of the PNG, use -scale ‘590 :

Источник

#ЗАМЕТКА Как в Linux конвертировать PDF в JPG без тормозов и потерь качества

Частыми примерами для конвертации, является convert из пакета ImageMagic.

Но эта «магическая» функция обожает вначале съедать оперативку, потом гордо сообщая — «А оперативочки то больше нет», умирать.

Воспользуемся пакетом Poppler.

Производим установку из терминала:

sudo apt-get install poppler-utils

Простейший пример конвертации PDF в JPG:

pdftocairo -jpeg «имяфайла.pdf»

И немного о ключах:

Создает файл(ы) JPEG

Задает первую страницу для преобразования.

Задает последнюю страницу для преобразования.

Создает только страницы с нечетными номерами.

Создает только четные страницы.

Определяет разрешение «печати». Значение по умолчанию — 150 PPI.

Создайте монохромный файл (только PNG и TIFF).

Создайте файл в оттенках серого (только PNG, JPEG и TIFF).

Дубликаты не найдены

Осталось придумать, зачем конвертировать PDF в JPG

Угу, втентакле не дает кроме жопега ни в чем выкладывать, другие форматы только как документ

чтоб медленней печатолось=)

Что бы опубликовать страницу на сайте, легче загрузить картинку со страницей, чем загружать весь PDF документ

Фигня полная, браузеры давно сами PDF читают.

А подскажи, давно у нас аплоад пдф везде безпроблемный в плане «вставить как пикчу в текст»?

Как файл и ссылку. Ибо как я уже сказал — проблема не в картинке, а в методе такого выкладывания, да и как он 100500 файлов jpeg так будет руками вставлять.

Тогда он сдохнет в разы раньше уже при склейке, не то что при компрессии в гигантский jpeg

Легче лёгкого, тебе плохо понятно про размер склейки?

Чтобы опубликовать страницу на сайте, делаешь копипейст из пдфа в страницу на сайте.

А может кто знает как XLS (XLSX) конвертнуть в PDF и повернуть при этом ориентацию листа? Разумеется через консоль.

посмотри на какие нибудь виртуальные pdf принтеры

Xls -> Pdf умеет Libreoffice, вращать Pdf умеют Ghostscript, Pdftk, Stapler и др.

еслиб этот пуплер еще под виндой нормально со шрифтами работал, пишу прогу с использованием этой библиотеки, половина документов либо кракозяблами открывается либо совершенно не тем шрифтом которым надо

а под сигвином собрать линуховую версию?

а где виртуалка? и я этот способ предложил раз под багами версия не работает норм, то собрать под баги линуховую версию.

видимо ты не совсем в курсе что такое цигвин, по сути это вайпн только наоборот, в результате будет тот же поплер, который будет использовать тот же fontconfig только собранный не нативно а работающий через прослойку. смысл?

я в курсе — вайн под хр собрать хотел) дык если в шынде со шрифтами плохо, то может линушная логика поможет. И ты не ответил — где ты в сигвине виртуалку нашел?

А чем вам старый добрый imagemagic то не угодил?

В глазки не долбимся и читаем пост до полного просветления

Простите, не заметил.

А Вам советую не проецировать свои проблемы (глазофилию, или что там у Вас за отклонение) на других людей.

От себя добавлю, что никогда проблем с оперативкой не замечал, хотя пользовался этим весьма часто.

В интернетах лишь нашел древние посты, что ImageMagic пытается выделить 2-3 гига памяти и помирает. У Вас прямо сейчас браузер скорее всего не сильно меньше жрет. Сейчас меньше 8 гигов оперативки то мало у кого, так что не вижу никакой проблемы.

4 и нормально, при запущенной опере занято 2.1 из 4х, минт 18.3, опера 50.0.2762.67

не не не))) ИМХО как минимум глупо ставить лишнее расширение, дабы ОНО как хром с последней вкладкой не закрывалось, плюс много других моментов)))

то есть 2 гига свободных у Вас найдется без проблем. В чем тогда проблема?

В том что оптимизировать надо, я не хочу одной консольной фигней станцию вешать

Если ты вдруг пишешь сервис полноценный по конвертированию PDF в JPEG и все такое — имеет смысл, да.

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

Не понимаю, зачем решать проблему, которой нет. Зачем оптимизировать то, что и так работает?

Я не говорю что тулза плохая. Работает лучше стандартного решения — круто. Зачем широким массам об этом знать, если они прекрасно могут пользоваться стандартным решениеем?

Ну насчет порнухи ты по себе не равняй, а насчет «Зачем широким массам об этом знать, если они прекрасно могут пользоваться стандартным решениеем» — квадратное катим, круглое волочим. Зачем искать более хорошее и лучшее.

Ну смотри. 99% людей просто запустят команду с imagemagic и получат без проблем результат. И в принципе мне срать, сколько оно там ресурсов использовало и как, мне важен результат. Большинству пользователей этого более чем достаточно.

Я не говорю что более производительное решение не нужно. Я ставлю под сомнение, что оно нужно на развлекательном ресурсе, ибо нужно. почти никому.

Угу, а потом 8+, а некоторые и 32гб ОЗУ пихают, чтобы оно хоть как то работало — а нафиг оптимизация, ведь «Я ставлю под сомнение, что оно нужно . ибо нужно. почти никому».

Ты путаешь причину и следствие. У большинства людей уже 8+. Уже хром ест несколько гигов, и все более-менее довольны. Так зачем мне экономить память, ставить и изучать новую тулзу, если у меня уже есть старая и проверенная временем? Вот серьезно, зачем мне это?

Это ты путаешь — хром начал жрать озу, всем сказали «завалитесь, это норма» и все резко заткнулись и пошли хрому озу докупать

У меня на рабочем ноуте 32.

Угу. Сразу напомнило.

hamster: если бы программисты были врачами, им бы пациенты говорили например «у меня болит нога», а они бы отвечали «ну не знаю, у меня такая же нога, а ничего не болит»

Недавно на это напоролся. Решил pdf с комиксом в djvu перевести (чтобы порезать сканы разворотов пополам). И внезапно выяснил, что из комикса пропадает перевод. Он видимо был выполнен в pdf аннотациями с непрозрачным фоном поверх бабблов с текстом оригинального комикса. Тогда я решил из pdf наделать tiff файлов, чтобы вживить слой текста в изображение, а потом уже загнать их в djvu. Все получилось, но напоролся я на безбожное потребление памяти GUI редакторов, и, в итоге, к этому pdftocairo и пришел. Команда в итоге была:

pdftocairo -tiff -tiffcompression lzw -r 600 my.pdf prefix

никто не мешает сперва порезать pdf на страницы.
Тем более, что на linux вся последовательность (порезать, а потом сконвертировать) вполне естественно делается скриптом в несколько строчек.

А можно просто поставить богомерзкую винду, и делать это в один клик и не ипать мозги.

Запустить программу — два клика.

Открыть меню файл — один клик.

Пункт открыть — один клик.

Найти файл — МИНИМУМ один клик.

Выбрать файл — два клика.

И если все удачно сложилось и не надо менять настройки — один клик для начала конвертации.

Перед этим, разумеется, надо еще накликать в гугле, найти программу, скачать и установить, убрав галочки с зондов мейлру.

А можно совершить еще более бесшабашный поступок и написать в гугле запрос уровня «pdf to jpg online» но это вариант для совсем отбитых, проще конечно будет через командную строку

одноразово да, а вот много и\или если еще что конфиденциальное то только локально

читаем чуть выше: 800 страничный документ

Да опубликовал, но я как пользователь (рандомный) вижу этот пост у себя в ленте и притом не подписан на данное сообщество. Ну у меня вопросов нет т.к мне это не интересно :D.

Агрессивный Linux — Сарказм

Любовь — не найдена

Счастье — не найдено

мир / покой — ненайден

убить — вы должны точно указать кого убить !

Всем добра и больше линукса 🙂

P.S. байанометр не ругался.

Как смотрят фильмы линуксоиды без иксов

Терминал открываешь — хакером себя ощущаешь

Срочные новости! Ахтунг! Алерт! Аттеншн! Хакерская атака!

Инструкция по установке Arch linux из консоли (Arch Way)

Я видел здесь на пикабу уже не один гайд по установке дистрибутива с графическим установщиком. Поэтому я решил склеить пост по установке арча из консоли — так как задумано разработчиками.

Я не так давно перешел на арч, и первый раз устанавливал его с помощью Architect Linux, это псевдо графический установщик, рекомендую его тем кто хочет попробовать арч, но боится установки.

Я надеюсь, люди читающие(если такие будут :D), знают что такое менеджер пакетов, менеджер дисплея, окружение рабочего стола, boot loader, и т.д., для этого есть другие посты на пикабу.

Я использовал VirtualBox и порядок установки с официальной арч вики.

Установка рассчитана на машины с BIOS и HDD, это не значит что для SSD или UEFI все по-другому, просто надо учитывать разные нюансы, и возможно что то делать не так как я.

У меня возможности проверить это нету, за это прошу прощения.

Скачать образ можна здесь, сделать загрузочную флешку можна с помощью этого на винде, и с помощью утилиты dd на линуксе, есть другие способы, конечно, пользуйтесь чем вам удобнее.

Загружаемся с диска, выбираем разрядность, система загружается, видим консоль и ничего больше, разминаем пальцы, и начинаем творить!

Раскладка клавиатуры. По умолчанию раскладка us, этот пункт пропускаем.

Соединение с интернетом. Чтобы выбрать вайфай точку пишем: wifi-menu

проводное соединение подхватится автоматом.

Синхронизация системных часов. Я не совсем понимаю зачем это нужно на этом этапе, может быть из-за сертификатов каких то или что, просто вписываем:

timedatectl set-ntp true — для активации ntp

timedatectl status — для проверки

Разбивание дисков на разделы. Существует много способов и методов это сделать, кто то использует текстовые утилиты, кто то заранее режет диск в чем то графическом, я буду использую cfdisk — удобная и достаточно универсальная, на мой взгляд, утилита.
Вписываем: cfdisk и вам откроется вот такое меню:

Сделал два основных раздела по 7гб и 1гб swap (раздел подкачки, я не знаю куда делся 1мб)

В одном разделе будет система в другом домашняя папка, то есть при переустановки ОСи мои личные файлы в домашней папке можна будет оставить.

Если вам это не надо, создавайте один, если много оперативной памяти, можна обойтись без swap-раздела.

Форматирование разделов. Для просмотра дисков и разделов используем lsblk

Тут всё достаточно ясно, sda — это диск, он делится на три раздела: sda1, sda2, sda3.

Теперь форматируем с помощью mkfs

То есть чтобы отформатировать раздел sda1 в ext4 нужно ввести:

mkswap /dev/раздел — Создаем swap-раздел (у меня /dev/sda3)

swapon /dev/раздел — монтируем его.

Монтирование разделов. Ок, здесь все предельно просто — есть раздел на диске, есть папочка к которой он прикреплен, /mnt будет корнем вашей системы

mount /dev/sda1 /mnt — монтируем первый раздел в корень

mkdir /mnt/home — создаем домашнюю папку

mount /dev/sda2 /mnt/home — монтируем второй раздел в домашнюю папку, то есть теперь папка home это и есть ваш второй раздел. lsblk для проверки:

Установка. Раздел в арч вики из двух пунктов: выбор зеркал загрузки и установка основных пакетов. Никогда не трогал mirrorlist, всегда была нормальная скорость, это можна сделать и после установки, этот пункт я пропускаю.
Установка базы, я советую тут повторить за мной, ибо если вам нужен доступ к AUR(Arch User Repository) вам надо будет base-devel(есть возможность поставить когда угодно).

pacstrap /mnt base base-devel — запускаем и идем делать чаечек или кофеечек.

Основные элементы уже у вас на жестком диске, теперь надо сделать чтобы оно все запускалось и работало.

Чтобы система знала какие разделы монтировать при старте, нужно сгенерировать fstab:

genfstab -U /mnt >> /mnt/etc/fstab для генерации

cat /mnt/etc/fstab — для проверки

Change root. Здесь мы просто переходим в нашу недавно скачанную систему, теперь можна устанавливать все что угодно, оно останется у вас.

Знакомьтесь, pacman — лучший пакетный менеджер в мире линукса! Краткий гайд:

pacman -Syy — обновление баз пакмэна(как apt-get update в дэбианоподбных)

pacman -Syyu обновление баз плюс обновление пакетов

pacman -S имя_пакета1 имя_пакета2 — установка пакетов из репозитория

pacman -Sy имя_пакета1 имя_пакета2 — обновление баз плюс установка пакетов

pacman -Ss текст — поиск пакетов в репозитории

arch-chroot /mnt — после смены корня, так называемый shell prompt изменится

echo имя_компьютера > /etc/hostname

Можна еще изменить файл /etc/hosts, для отображения имени в локальной сети, но я забыл, потому нет скриншота, извините.

Выбираем часовой пояс:

ln -s /usr/share/zoneinfo/Зона/Субзона /etc/localtime

Эта команда создает, так называемую символическую ссылку выбранного пояса в папке /etc

Для просмортра возможные поясов исользуйте ls /usr/share/zoneinfo

Локаль и настройка локали. Поскольку, я всегда использовал en_GB, здесь мне пришлось чуток помучаться, нам нужна русская локаль UTF-8 и консольный шрифт поддерживающий кириллицу, есть и встроенные но я скачал terminus.

вводим nano etc/locale.gen двигаемся стрелочками вниз и раскомментируем нужные локали (убираем #), после чего Ctrl-O для сохранения, подтверждаем имя, и Ctrl-X для выхода. Вводим locale-gen для генерации тех самых локалей, после этого:

echo LANG=ru_RU.UTF-8 > /etc/locale.conf — обязательно UTF-8

pacman -S terminus-font — качаем шрифт терминус

nano /etc/vconsole.conf — устанавливаем шрифт и переключение клавиатуры по

Ctrl-Shift(только в консоли, я не уверен нужно ли это вообще, но помню в убунте надо было писать на русском «да/нет»). Если есть желание экспериментировать, консольные шрифты находятся в /usr/share/kbd/consolefonts/ смотрим с помощью ls

Настройка сети в новом окружении. Есть не одна утилита для управления соединениями, я использую Network Manager потому что меня устраивает его работа, и других никогда не пробовал. Качаем Network Manager и по желанию апплет к нему:

pacman -S networkmanager network-manager-applet

Теперь нужно его активировать, без этого сеть работать не будет:

systemctl enable NetworkManager — должно появится такое:

systemctl enable dhcpcd — для активации проводных соединений

nmcli dev wifi connect имя_точки password пароль — для подключения к вайфаю

Но если вы скачали апплет, и установите окружение рабочего стола ДО перезагрузки вы сможете подключиться к вайфаю с помощью иконки в трее, я так делать не буду.

Создать initial RAM disk. Вики скажет вам для чего оно, можна настраивать с помощью этого файла: /etc/mkinitcpio.conf но это вряд ли сейчас кому то нужно.

mkinitcpio -p linux — запускаем и ждем

Установить пароль суперпользователя: Не пропустите этот пункт, как делал я постоянно.

простая комманда passwd

Установка boot loader’а. Их также существует несколько, но grub, наверное самый популярный. Сначала его нужно скачать:

pacman -S grub os-prober — os-prober нужен для определения других ОС

grub-install /dev/диск — устанавливаем grubsda не в sda1), если возникают ошибки можна добавить —recheck или —force, в виртуалбоксе у меня только с —force работает.

После этого вводим:

grub-mkconfig -o /boot/grub/grub.cfg

Загрузчик настроен, можна перегружаться, если вы не уверены в правильности своих действий, рекомендую остаться в этом окружении и накачать пакетов.

Сам я перезагрузился и залогинился под рутом.

Шрифт терминус и русская локаль:

Создаем пользователя. Если хотите пользователя с огромными толстыми правами, просто переписываем:

useradd -m -g users -G adm,storage,wheel,power,audio,video -s /bin/bash имя_пользователя

passwd имя_пользователя — устанавливаем пароль пользователю

Дальше чтобы работал sudo нужно редактировать /etc/sudoers:

EDITOR=nano visudo — раскомментируем одну из этих строк, с запросом пароля или нет:

Если вы не ставили base-devel, с помощью nano открыть не получится, тогда просто visudo, и вы поймете какой жутко неудобный vi.

Чтобы создать папочки типа «загрузки, картинки» нужен xdg-user-dirs, возможно при установке окружения рабочего стола они сами появятся, не знаю.
xdg-user-dirs-update — для создания этих папочек, используйте эту команду от пользователя которому они нужны.

Основные пакеты для Xserver: ИксСервер нужен для отображения любой графики в линуксе, человечество еще не перешло на вэйленд, самые основный пакеты качаем одной коммандой:

sudo pacman -S ttf-dejavu alsa-utils xorg-server xorg-xinit xorg-twm xterm xorg-server-devel

Теперь нужны видео драйверы, без них тоже ничего работать не будет вот список:

xf86-video-vesa — как я понял, это универсальный драйвер для ксорга, должен работать при любых обстоятельствах, но вы знаете как, только для того чтобы поставить подходящий.

xf86-video-ati — свободный ATI

xf86-video-intel — свободный Intel

xf86-video-nouveau — свободный Nvidia

Существуют еще проприетарные драйверы, то есть разработаны самой Nvidia или AMD, но они часто не поддерживают новое ядро или еще какие нибудь траблы.

virtualbox-guest-utils — для виртуалбокса, активируем коммандой:

systemctl enable vboxservice вводим дважды пароль

Остались лишь менеджер дисплея и окружение рабочего стола, полный список здесь и здесь.

Я ставлю lightdm и mate, список пакетов, которые я установил:

mate mate-extra lightdm lightdm-gtk-greeter lightdm-gtk-greeter-settings

Greeter — это визуальная часть lightdm, без него работать не будет, без программы настройки можна обойтись, но в ней быстрее и удобнее.

Если ставите KDE, то вам надо будет kde-greeter, советую читать документацию.

Не забудьте активировать дисплей-менеджер:

systemctl enable lightdm.service — для lightdm

systemctl enable lxdm — для lxdm

Для доступа к AUR, редактируем /etc/pacman.conf
sudo текстовый_редактор /etc/pacman.conf (в моем случае pluma)

добавляем в конец, как на скриншоте:

Если у вас 64-битная система, раскомментируйте Multilib репозиторий для доступа к 32-битным пакетам.

Устанавливаем yaourt — инструмент для доступа к AUR

yaourt -S pamac-aur —noconfirm — графический фронт-энд для yaourt, по желанию.

В графическом окружении мне делать нечего, настраивайте как хотите, твикайте как хотите.

Спасибо за внимание, надеюсь это будет кому-то полезно, если что-то не понятно — пишите комментарии, понятно — пишите комментарии, больше комментариев богу срача!

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Sampler for mac os x
  • Saints row the third mac os
  • Sai paint tool для mac os
  • Safenet authentication client для mac os
  • Safari mac os частный доступ