Есть ли лучший способ отредактировать PDF?
Мне пришлось недавно напечатать пару PDF-файлов, чтобы отправить кому-то, но я хотел отредактировать (зачеркнуть) пару маленьких кусочков текста.
Быстрый поиск в Google не дал никаких инструментов для этой конкретной цели, поэтому я вернулся к imagemagick & gimp:
convert document.pdf document.png
gimp document-0.png
- (используйте кисть для затемнения текста)
- распечатать отредактированную страницу из gimp
- распечатать остальные страницы из xpdf
Проблема этой стратегии заключается в том, что процесс преобразования (из PDF в PNG или любой другой формат) теряет качество. Я пытался редактировать PDF в GIMP, но это не сработало сразу.
Есть ли специальный инструмент, который разрешает редактирование таким образом? (Это даже не должно быть "реальным" редактированием - я не отправляю электронную копию, так что "поддельное" редактирование будет работать, потому что компьютерная копия не может быть взломана для раскрытия основного текста.)
Или есть ли у вас возможность редактировать PDF-файлы в GIMP?
18 ответов
Вы можете использовать Okular.
sudo apt-get install okular
- Откройте PDF с помощью Okular.
- Нажмите F6.
- Нажмите 8.
- Выделите текст, который вы хотите редактировать.
- Щелкните правой кнопкой мыши текст, выберите свойства, выберите "Тип" как "Выделить", нажмите ОК.
- Распечатать файл в формате PDF.
(изначально я рекомендовал Okular, но он не сработал, как я ожидал)
1. Отредактируйте документ в векторном редакторе.
Мне удалось открыть PDF-файл в Inkscape, нарисовать прямоугольник над куском текста и распечатать его. Inkscape - векторный редактор, поэтому растеризация не требуется. Однако некоторые шрифты выглядели неправильно - возможно, потому, что документ был создан на компьютере Windows с теми шрифтами, которые отсутствуют на моем.
Обратите внимание, что любой метод, который не включает растеризацию, приемлем только в том случае, если вы собираетесь распечатать отредактированный документ на бумаге, а не распространять его в электронном виде, так как текст все еще можно извлечь из-за отключений.
2. Увеличьте разрешение растеризации при открытии в редакторе растровых изображений.
Что касается "потери качества" при открытии страницы в Gimp: вы можете напрямую открыть файл PDF в Gimp. Это будет растеризовано в процессе. Величина потери качества в процессе зависит от разрешения, которое вы выбираете при импорте - разрешение 300 т / д должно обеспечить очень приличное качество (по умолчанию 100).
Вы также можете получить хорошие результаты с ImageMagick's convert
Команда, если вы скажете, чтобы увеличить разрешение:
convert -density 300x300 ...
По сути, вы пытаетесь выделить / аннотировать PDF, но с некоторой гибкостью в отношении непрозрачности и цвета маркера (вы упомянули, что вам не нужно подвергать цензуре / удалять что-либо, просто редактировать). Вы посмотрели здесь ответы: Как я могу выделить или аннотировать PDF-файлы?
Один из самых рейтинговых ответов рекомендует Xournal, который здесь не упоминался и будет моим любимым оружием. Это инструмент, который позволяет вам делать рукописные заметки, но имеет дополнительные функции, позволяющие аннотировать PDF. По умолчанию он сохраняет ваши аннотации в виде отдельного файла, но также позволяет вам экспортировать аннотированный PDF как новый PDF. Это должно поддерживать макет, шрифты и т. Д.
В Xournal вы можете выбрать "Аннотировать PDF", затем использовать сплошной черный маркер для маскировки частей, которые вы хотите отредактировать, и "Экспорт в PDF".
В Интернете есть несколько историй о том, что Xournal растеризует текст в экспортированном PDF-файле (спасибо за указание на это, MHC). Это не похоже на правду: с простыми аннотациями текст остается доступным для выбора и поиска, а размер файла не увеличивается значительно (он увеличился с 205 до 220 кб в приведенном ниже примере).
Для установки запустите в терминале: sudo apt-get install xournal
или просто выберите его в Центре программного обеспечения
Я редактирую много файлов PDF каждый день, поэтому я трачу много времени на размышления о том, как сделать это наилучшим образом.
Для меня лучший способ - это разделить PDF на 1-страничный PDF-файл, затем редактировать с помощью GIMP, а затем объединить его. Я не использую imagemagick для всех файлов (я вообще не использую), поэтому я не теряю текстовый слой на всех страницах, а только на отредактированных. Не загружайте весь файл PDF сразу, потому что это приводит к исчерпанию памяти.
Сплит PDF в одностраничных файлах
Вы можете легко разделить PDF-файлы на 1-страничный PDF-файл с помощью этой функции bash (поместите ее в ~/.bashrc):
function pdf_split(){
for file in "$@"; do
if [ "${file##*.}" != "pdf" ]; then
echo "Skip $file because it's not PDF file";
continue
fi;
pages=$(pdfinfo "$file" | grep "Pages" | awk '{print $2}')
echo "Detect $pages in $file";
filename="${file%.*}";
unset Outfile;
for i in $(seq 1 "$pages"); do
pdftk "$file" cat "$i" output "$filename-$i.pdf";
Outfile[$i]="$filename-$i.pdf";
done;
done;
};
Теперь вы можете ввести split_pdf file.pdf
чтобы получить много файлов PDF.
Редактировать файлы
Но теперь вам нужно отредактировать все эти файлы. Вы можете сделать это с gimp original-filename-*.pdf
, Я предлагаю настроить ярлык в GIMP (Главное окно-> Редактировать-> Ярлык), чтобы заменить файл (я использую CTRL+R), фильтр размытия (например, CTRL+D), закрыть файл (например, CTRL+W) и выйти из GIMP (eg.CTRL+Q). Не забудьте не загружать в GIMP много файлов одновременно, но GIMP, как вы загружаете после открытия, так что вы можете использовать gimp original-filename-*.pdf
на тысячи файлов безопасно.
Объединить файлы
Вы можете легко комбинировать файлы с: pdftk originam-filename-*.pdf cat output "new-file-anon.pdf";
Соедините все это вместе
Эти операции очень повторяющиеся и скучные, поэтому я соединяю все это в один скрипт:
function pdf_redact(){
for file in "$@"; do
if [ "${file##*.}" != "pdf" ]; then
echo "Skip $file because it's not PDF file";
continue
fi;
pages=$(pdfinfo "$file" | grep "Pages" | awk '{print $2}')
echo "Detect $pages in $file";
filename="${file%.*}";
unset Outfile;
for i in $(seq 1 "$pages"); do
pdftk "$file" cat "$i" output "$filename-$i.pdf";
Outfile[$i]="$filename-$i.pdf";
done;
gimp "${Outfile[@]}";
pdftk "${Outfile[@]}" cat output "$filename-anon.pdf";
rm "${Outfile[@]}";
read -p "Do you want open output file? " -n 1 -r
echo
if [[ $REPLY =~ ^[Yy]$ ]]
then
evince "$filename-anon.pdf";
fi
read -p "Do you want upload output file to Scribd.com? " -n 1 -r
echo
if [[ $REPLY =~ ^[Yy]$ ]]
then
scribd_up "$filename-anon.pdf";
fi
done;
};
Новейшая версия этого скрипта всегда доступна по адресу: http://dostep.jawne.info.pl/it/bashrc
Не забудьте закрыть GIMP (CTRL+Q) после всего редактирования, чтобы продолжить скрипт.
В зависимости от того, как я могу открыть отредактированные файлы (мне нравится читать, чтобы проверить, все ли), а также загрузить в Scribd с помощью моего другого скрипта - scribd_up, так что теперь я могу очень эффективно редактировать многие PDF-файлы.
Поскольку многие решения здесь рекомендуют редактировать / затемнять аннотации (которые оставляют исходный контент в pdf), я рекомендую растеризацию pdf впоследствии, чтобы действительно удалить исходный контент. (Не будь этим парнем.)
Вот один из способов сделать это, одновременно поддерживая качество и размер файла низкими (по крайней мере, в моем случае с кучей черно-белых страниц):
$ convert -quality 100 -density 180 -compress zip notreallyredacted.pdf trulyredacted.pdf
Замечания: convert
нужен ImageMagick.
Заметка 2: convert
не сохраняет содержимое форм, которые вы могли заполнить. Чтобы он не потерялся, вы можете напечатать документ "в файл" в виде evince
сначала (или в любом приложении, которое вы заполнили форму), а затем растеризуйте ее.
Xournalpp — популярный вариант Xournal, в котором есть то, что вам нужно. Он недоступен через диспетчер пакетов (в Ubuntu 20.10), но выпуск Github можно собрать с помощью CMake.
Инструкции по сборке здесь предлагают следующие зависимости:
sudo apt-get install cmake libgtk-3-dev libpoppler-glib-dev portaudio19-dev libsndfile-dev libcppunit-dev dvipng texlive libxml2-dev liblua5.3-dev libzip-dev librsvg2-dev gettext lua-lgi
В Xournalpp вы должны затем выбрать значок прямоугольника, а рядом с цветами пера — значок ведра с краской. Затем вы можете создать заполненные прямоугольники, но они будут прозрачными. Чтобы сделать их полностью непрозрачными, выберите
Tools > Pen Options > Fill Transparency
и измените всплывающее окно на 100%. (Это объясняется в выпуске Github здесь .)
Я помню, как однажды мне и коллеге пришлось найти способ отредактировать пару PDF-файлов. В итоге мы использовали Gimp. Я прокомментирую вам детали... мы открываем PDF напрямую с GIMP (в терминале)
gimp the_file.pdf
После того, как вы закончили редактирование, мы не сохранили изменения, вместо этого мы печатаем их в pdf-файл... Казалось, все работает нормально.
Веб-инструменты
Хорошо, если ваш документ действительно конфиденциальный, вы не хотите, чтобы он куда-то делся до редактирования. Вот некоторые веб-инструменты, которые могут иметь хорошую политику. Дело в том, что у них есть бизнес, ориентированный на корпоративных клиентов, и они предлагают эти услуги для демонстрации своих SDK. Обязательно ознакомьтесь с их условиями обслуживания.
Никогда не выходите из браузера
Выйдите из браузера, но они потом удалятся
Другие предложения
Если вы найдете лучшие инструменты, не стесняйтесь комментировать. Мы хотели бы иметь хороший список того, что нам доступно.
PDF Studio не является открытым исходным кодом и является программным обеспечением, которое требует покупки.
С точки зрения этого вопроса, начиная с версии 8 он имеет функцию ручного редактирования. Пользователи могут выбрать текстовый объект и отредактировать его. Содержимое удаляется из PDF и заменяется черным прямоугольником.
В версии 9, которая выйдет в третьем квартале 2013 года, аннотации и запись редактирования также будут доступны для изображений и фигур.
Вы также можете попробовать этот инструмент: https://launchpad.net/updf
Вот оно (но в любом случае, текст можно выбрать):
Если вы не хотите помнить правильное заклинание для convert
Вы можете использовать pdf-redact-tools, сценарий оболочки, автоматизирующий процесс разбиения PDF на изображения PNG и объединения их вместе после редактирования (используя инструмент по вашему выбору, например, gimp). Это удобно для установки.
Редактирование PDF в LibreOffice Writer
...например, налоговый документ W-2 (США), в котором один и тот же раздел дублируется 4 раза.
Это немного сложно, но это лучший способ, который я нашел для PDF-файлов на 1 или 2 страницы, таких как W-2, где вам нужно многократно копировать / вставлять группы полей редактирования в несколько мест. Преимущества выполнения этого в LibreOffice Writer заключаются в том, что вы можете рисовать текстовые поля для редактирования разделов, затем выбирать их несколько раз с помощью , группировать Shiftих с помощью контекстного меню и копировать/вставлять дополнительные поля в случае редактирования нескольких похожих разделов документа. документ. Это означает, что вы рисуете примерно 20 блоков один раз, затем группируете их и копируете/вставляете 3 раза (чтобы покрыть все 4 раздела W-2), а не рисуете 80 блоков (переделывая одно и то же 20 или около того 4 раза). .
Шаги:
- Следуйте моим инструкциям, чтобы преобразовать изображения PDF в JPG, здесь . Преобразование PDF в изображение удаляет весь доступный для поиска текст.
- Перетащите изображение JPG в LibreOffice Writer. Измените его размер, чтобы заполнить всю страницу.
- Нарисуйте заполненные прямоугольные блоки по всему тексту, который вы хотите отредактировать.
- Выберите множественный выбор (с Shift) и щелкните правой кнопкой мыши -> «Группировать» поля, если это необходимо. Скопируйте/вставьте группы полей по желанию и перемещайте их с помощью клавиш со стрелками. Удерживайте Alt для точной настройки.
- Экспорт в формате PDF.
Сделанный!
Откройте PDF с помощью бесплатного инструмента PDF-Xchange PDF Viewer. Вычеркните текст, который нужно отредактировать, используя черные прямоугольники. Распечатать. Это даст вам легкую, качественную "фальшивую" редакцию.
Используйте LibreOffice Draw для того быстрого редактирования, которое вы ищете. После этого вы можете сохранить его в формате LibreOffice Draw или снова экспортировать в формат PDF (File
>Export as PDF
)
Чтобы иметь возможность импортировать PDF-файлы в LibreOffice Draw, вы должны сначала установить пакет libreoffice-pdfimport
,
Установите его через Центр программного обеспечения Ubuntu ( http://apt.ubuntu.com/p/libreoffice-pdfimport ) или через терминал с
sudo apt-get install libreoffice-pdfimport
,
Лучший способ сделать это - использовать http://www.pdfescape.com/. Вы можете комментировать, добавлять текст и изображения, рисовать "белый" прямоугольник вокруг того, что вы хотите отредактировать, и вы можете быстро загрузить и сохранить его. Он также очень хорошо работает с многостраничными документами, с чем не справляются многие другие решения. Например, если вы откроете многостраничный документ в Gimp или Inkscape, вы сможете открыть только одну страницу за раз. Процесс намного быстрее в PDFescape. Весь процесс редактирования 2-страничного документа занимает меньше минуты.
Существует несколько редакторов для непосредственного редактирования документов PDF, таких как pdfedit
или преобразовать его в другие векторные форматы, которые могут быть лучше поддержаны, такие как pstoedit
, Однако я бы не рекомендовал использовать какой-либо из них, так как риск сделать что-то глупое, например, просто закрасить текст черным, оставив векторы на месте, очень просто, что делает редактирование тривиальным для отмены.
Переход от вектора к растровому маршруту является наиболее безопасным способом, предпочтительно 1-разрядным растровым маршрутом, чтобы избежать любых потенциальных проблем с альфа-каналами или цветовых различий, которые могут сделать текст читабельным.
Если возможно, вы всегда должны редактировать исходный документ и просто удалять информацию, а не рисовать в PDF, поскольку даже кернинг и интервал текста вокруг отредактированного текста могут его выдать.
Добавляю в список: Крита. Не было потери качества, потому что при импорте PDF вы можете определить dpi (установите значение 300, как сказал @Sergey). После редактирования нажмите "Экспорт в PDF". Наконец, я нахожу Krita более интуитивным, чем Gimp, после того, как долгое время пользовался Photoshop.
Если вы используете LibreOffice для создания PDF-файла, откройте документ в LibreOffice, выделите текст, который нужно отредактировать, щелкните правой кнопкой мыши и выберите символ, выберите "Фон" и нажмите черный. Экспорт в PDF.