как сжать pdf в linux
Как сжать PDF в Linux [GUI & Терминал]
Главное меню » Linux » Как сжать PDF в Linux [GUI & Терминал]
Возникнуть эта проблема может, когда вы попытаетесь загрузить большой PDF файл. Загрузить не получится, так как будет превышен максимальный размер файла. Это означает, что вам необходимо как-то уменьшить размер файла PDF.
Вы можете использовать онлайн-сайт для сжатия PDF, но мы им не доверяем. Файл с важными документами, загружаемыми на неизвестный сервер, не очень хорошая идея. Вы никогда не сможете быть уверены, что они не сохранят копию вашего загруженного PDF-документа.
По этой причине мы предпочитаем сжимать файлы PDF в своей системе, а не загружать их на какой-либо случайный сервер.
В этой статье мы покажем вам, как уменьшить размер файлов PDF в Linux.
Способ 1: уменьшить размер файла PDF с помощью командной строки в Linux
Вы можете использовать инструмент командной строки Ghostscript для сжатия файла PDF. Большинство дистрибутивов Linux уже содержат версию Ghostscript с открытым исходным кодом. Тем не менее, вы все равно можете попробовать установить ее, просто чтобы убедиться.
В дистрибутивах на основе Debian/Ubuntu используйте следующую команду для установки Ghostscript:
Теперь, когда вы убедились, что Ghostscript установлен, вы можете использовать следующую команду, чтобы уменьшить размер вашего PDF-файла:
В приведенной выше команде вы должны добавить правильный путь для входного и выходного файла PDF.
Команда выглядит страшно и запутанно. Мы советуем копировать и вставлять большую часть. Что вам нужно знать, так это параметр dPDFSETTINGS. Это то, что определяет уровень сжатия и, следовательно, качество вашего сжатого файла PDF.
dPDFSETTINGS | Описание |
/prepress (по умолчанию) | Более высокое качество изображения (300 точек на дюйм), но больший размер |
/ebook | Вывод среднего качества (150 точек на дюйм) с умеренным размером выходного файла |
/screen | Более низкое качество вывода (72 dpi), но минимально возможный размер выходного файла |
Имейте в виду, что некоторые файлы PDF могут быть сжаты не сильно или вообще не сжаты. Применение сжатия к некоторым файлам PDF может даже привести к созданию файла большего размера, чем оригинал. В таких случаях мало что можно сделать.
Способ 2. Сжатие PDF-файлов в Linux с помощью инструмента с графическим интерфейсом
Мы понимаем, что не всем удобно пользоваться инструментом командной строки. А PDF редакторы в Linux не очень помогают при сжатии.
Программа Panos в оболочки GUI на основе Python-Qt для Ghostscript. Инструмент предоставляет вам простой пользовательский интерфейс, в котором вы можете выбрать входной файл, выбрать уровень сжатия и нажать кнопку сжатия, чтобы сжать файл PDF.
Сжатый PDF-файл сохраняется в той же папке, что и исходный PDF-файл. Ваш оригинальный файл PDF остается нетронутым. Сжатый файл переименовывается путем добавления-сжатого к исходному имени файла.
Если вас не устраивает сжатие, вы можете выбрать другой уровень сжатия и снова сжать файл.
Вы можете найти исходный код PDF Compressor в репозитории GitHub. Чтобы вы могли легко использовать инструмент, его упаковали его в формате AppImage.
Пожалуйста, имейте в виду, что инструмент находится на ранних стадиях разработки. У вас могут возникнуть некоторые проблемы. Если вы это сделаете, пожалуйста, сообщите нам об этом в комментариях или, что еще лучше, сообщите об ошибке здесь.
Команда постарается добавить больше пакетов (Snap, Deb, PPA и т. д.) в будущих выпусках.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Сжатие PDF-файлов в Linux
PDF-файлы довольно широко используются в сети для обмена документами, и другой текстовой и графической информацией. Иногда может возникать необходимость уменьшения размера файлов, для более быстрой передачи, к примеру, по почте. Известно, что существуют облачные сервисы, где вы отправляете свой файл, сервис выполняет оптимизацию, и вам возвращается результат. Однако данный метод не всегда может устраивать пользователей, в связи с неизвестностью куда может этот файл попасть далее, после загрузки его на этот сервис. Поэтому, сжимать файлы локально вполне обоснованное действие в вопросе безопасности. В данном посту мы рассмотрим пример сжатия файлов в Linux.
Мы рассмотрим два способа сжатия PDF-файла, посредством командной строки и через утилиты в GUI-оболочке. В качестве операционной системе в нашем примере используется Linux CentOS 7.
Сжатие PDF-файла через командную строку
Разумеется, для сжатия PDF-файла предварительно будет необходимо установить инструмент, который позволит выполнять эту операцию. Для командной строки существует такой инструмент как Ghostscript. Данная утилита доступна для большинства дистрибутивов Linux с открытым исходным кодом. В связи с этим вы можете свободно развернуть её у себя в системе.
После того как Ghostscript был установлен в системе, вы уже можете приступать к сжатию файла на диске. Чтобы выполнить сжатие файла вам следует выполнить следующую команду:
Как вы можете заметить команда довольно длинная, однако пугаться вам её не стоит. Удобно будет скопировать всю строку, затем немного подправить под свои нужды. Первое что следует исправить это название файлов. Исходный файл в строке это input.pdf, сжатый файл будет создан с именем compressed.pdf. Параметр dPDFSETTINGS определяет уровень сжатия, а значит и качество сжатого файла на выходе. Поэтому вы можете выставить одно из значений, которое вам более подходит:
Стоит понимать, что разные файлы, в зависимости от его содержимого могут сжиматься по-разному. Поэтому иногда может возникнуть ситуация, что после сжатия размер файла не сильно изменился, либо стал даже больше исходного размера. Тут уже нужно будет искать другое решение.
Сжатие PDF-файла через графический интерфейс
Данный метод тоже может быть эффективным при необходимости сжатия файла в Linux-системе где есть поддержка графического интерфейса. Для этого вам помогут PDF-редакторы, которые так же умеют сживать файлы. Давайте рассмотрим один из популярных инструментов, которым вы можете воспользоваться.
Для GUI оболочки есть такая программа Panos которая основана на Python-Qt для Ghostdcript. Используя эту программу с пользовательским интерфейсом, вы можете выполнить сжатие файла. Уровень сжатия так же настраивается в интерфейсе, и вы можете выбрать более подходящий для вас. Сжатый файл будет размещён в той же директории что и исходный файл, с переименованием. Исходный файл при этом будет оставлен без изменений.
Новые решения появляются довольно часто, и если вы не нашли ничего подходящего, то вам стоит пробовать другие PDF-редакторы, которые в большинстве своём умеют оптимизировать файлы PDF.
Как бесплатно сжать PDF-файл в Linux
Главное меню » Ubuntu » Как бесплатно сжать PDF-файл в Linux
В этом посте будет краткое пошаговое руководство о том, как бесплатно сжать PDF-файл в Linux через командную строку с помощью GhostScript. Процесс установки и метод использования GhostScript демонстрируются в системе Ubuntu 20.04 LTS, и он может работать в любой другой операционной системе на основе Debian.
Сжатие PDF-файла в Linux с помощью GhostScript
Ghost Script – это утилита командной строки, используемая для сжатия файлов PDF и для выполнения других задач, связанных с PDF.
Установка GhostScript
Чтобы установить GhostScript в Ubuntu или других операционных системах на основе Debian, лучше обновить и обновить пакеты системы.
Выполните команду, указанную ниже, чтобы начать установку GhostScript:
GhostScript будет установлен, и после успешной установки Ghostscript пора разобраться в использовании GhostScript в Ubuntu.
Использование команды Ghost Script
Синтаксис сжатия файла PDF с помощью команды GhostScript приведен ниже:
Большинство вариантов нужно оставить как есть; нас интересуют только два варианта:
Для высококачественного вывода с разрешением 300 точек на дюйм используйте настройку/prepress.
Для вывода среднего качества около 150 точек на дюйм используйте параметр /ebook.
Для вывода низкого качества с разрешением около 72 точек на дюйм используйте параметр /screen.
Укажите имя выходного файла, который вы хотите дать.
Наконец, в конце команды запишите PDF-файл, который нужно сжать.
После выполнения команды GhostScript для сжатия файла PDF вы получите сжатый файл PDF в течение нескольких секунд в зависимости от предоставленного размера файла.
Пример
Предположим, у нас есть файл file.pdf в каталоге загрузок, и мы хотим его сжать, перейдите в конкретный каталог, в котором находится файл.
Не забудьте изменить настройки PDF по своему усмотрению. Имя входного файла и выходной файл.
После сжатия файла выполните приведенную ниже команду, чтобы просмотреть изменение размера двух файлов:
Вы можете убедиться, что сжатый файл меньше по размеру по сравнению с исходным файлом PDF.
Заключение
GhostScript – это инструмент командной строки, используемый для сжатия файлов PDF в Linux. В этом посте мы узнали, как установить GhostScript в Ubuntu, как сжать PDF-файл с помощью GhostScript, а также как его использовать и изменять настройки для извлечения сжатого PDF-файла по нашему выбору.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Как я могу уменьшить размер отсканированного файла PDF?
У меня есть PDF-файл размером 72,9 МБ, который нужно сжать до 500 КБ.
Файл представлял собой изображение в формате JPEG, которое я отсканировал, а затем преобразовал в pdf.
aking1012 прав. С дополнительной информацией о возможных встроенных изображениях, гиперссылках и т. Д. Было бы намного проще ответить на этот вопрос!
Вот пара сценариев и решений для командной строки. Используйте по своему усмотрению.
Используйте следующую команду ghostscript :
Это также напрямую работает с PDF, как это предлагается в комментариях.
Некоторые пользователи также сообщают об успешном использовании параметров электронной книги следующим образом:
Отрегулируйте плотность (например, 100×100) и качество в соответствии с вашими потребностями.
Мне нужно было уменьшить размер PDF, который содержал полноцветное сканирование документа. Каждая из моих страниц была полноцветным изображением. Это были изображения страниц, содержащие текст и изображения, но они были созданы путем сканирования в изображение.
Я использовал комбинацию из приведенной ниже команды ghostscript и команды из другого потока.
Это уменьшило разрешение изображения до 150 точек на дюйм, сократив размер моего файла вдвое. Глядя на документ, заметных потерь качества изображения практически не было. Текст все еще отлично читается на моем Nexus7 2012 года.
Вот скрипт для перезаписи отсканированных PDF-файлов:
Я обычно использую ps2pdf для этого (упрощенный синтаксис), что-то вроде этого:
Я использую следующий скрипт на python, чтобы уменьшить размер всех файлов pdf в директории на производственном сервере (8.04). Так и должно работать.
Это будет иметь хороший результат.
Лучший для меня был
Я только что столкнулся с этой проблемой сам. Если вы используете простое сканирование, выберите текстовый режим для сканирования с низким разрешением, и вам не придется беспокоиться о командной строке. Просто говорю.
Контроль качества сжатия:
Так как эта ссылка была первой для меня, когда я искал в Google, я решил добавить еще одну возможность. Ни одно из вышеперечисленных решений не работало для меня на PDF, экспортированном из Inkscape (15 МБ), но я наконец смог уменьшить его до 1 МБ, открыв его в GIMP и снова экспортировав в PDF.
Другой вариант, который был близок (но текст был немного нечетким), был утилитой преобразования ImageMagick:
Теперь, если вам нужно достичь определенного размера, какими бы ни были последствия (в том числе ухудшение качества изображения до точки нечитаемости), это может быть не тот инструмент, который вам нужен, а постоянно действующее решение для уменьшения ненужных больших размеров. в PDF без потери читаемости, информации и приемлемого качества изображения, я думаю, что это лучший вариант. (Примечание: я склонен использовать его после того, как сначала сделал OCR векторизации в Adobe Acrobat [функция, которая раньше называлась «CleanScan»], что может оказать существенное влияние на размер некоторых отсканированных текстовых документов.)
Я рекомендую стандартную установку Unix :
Установите все необходимые зависимости:
Загрузите и установите исполняемый файл:
Примечание для пользователей Mac, которые находят это сообщение (или для пользователей Linuxbrew): существует формула установки Homebrew:
How can I reduce the file size of a scanned PDF file?
I have a 72.9MB PDF file that I need to shrink into under 500KB.
The file was a JPEG image that I had scanned, and then converted to pdf.
24 Answers 24
Use the following ghostscript command:
Controls and features specific to PostScript and PDF input
Presets the «distiller parameters» to one of four predefined settings:
The exact settings for each of these, including their DPI values, are shown in the dozens of options in this table: https://www.ghostscript.com/doc/current/VectorDevices.htm#distillerparams.
My favorite way to do this is to convert the PDF to PostScript and back. It does not always work, though, but when it works the results are nice:
This also directly works on PDFs, as suggested in the comments.
Some users also report more success when using the ebook settings as follows:
aking1012 is right. With more information regarding possible embedded images, hyperlinks etc.. it would be much more easier to answer this question!
Here are a couple of script and command-line solutions. Use as you see fit.
If you have a pdf with scanned images, you can use convert (ImageMagick) to create a pdf with jpeg compression (You can use this method on any pdf, but you’ll loose all text informations).
Adjust the parameters to your needs
I needed to downsize a PDF that contained full color scans of a document. Each of my pages was a full color image as far as the file was concerned. They were images of pages containing text and images, but they were created by scanning to an image.
I used a combination of the below ghostscript command and one from another thread.
This reduced the image resolution to 150dpi, cutting my file size in half. Looking at the document, there was almost no noticeable loss of image quality. The text is still perfectly readable on my 2012 Nexus7.
Here is a script for rewriting scanned pdfs:
This will have a good result.
I usually use ps2pdf to do this (easier syntax), something like this:
I use the following python script to reduce the size of all the pdf files in a dir in a production server (8.04). So it should work.
I strongly recommend pdfsizeopt.
Now, if you need to attain a certain size whatever the consequences (inc. degrading images to a point of unreadability), it might not be the tool you need, but as an always-working go-to solution, to reduce unnecessary big sizes in PDFs without loosing in readability, information and acceptable image quality, I think it is the best option. (Note: I tend to use it after having first done a vectorization-OCR in Adobe Acrobat [the function used to be called «CleanScan»], which can have a dramatical size impact on some scanned text documents.)
Download and install the executable:
Note for mac users finding this post (or Linuxbrew users): there is a Homebrew install formula:
Use Ghostscript ( gs ) to compress input.pdf into output.pdf
You can also add time in front of the command to see how long it takes (this works with any Linux command). Sample output:
PDF Compression Tests
Testing the gs commands above on output from my pdf2searchablepdf script here, I see the following:
0.37MB, BUT in my particular test is completely unreadable, since the input PDF was already of somewhat poor resolution to begin with. If you begin with a high quality/high resolution input PDF, you may have much better, readable results.
Ghostscript ( gs ) Documentation:
Controls and features specific to PostScript and PDF input
Presets the «distiller parameters» to one of four predefined settings:
You can also see definitions for various options on this page: https://www.ghostscript.com/doc/current/Use.htm:
-dQUIET
Suppresses routine information comments on standard output. This is currently necessary when redirecting device output to standard output.