Мне пришлось сначала напечатать пару PDF-файлов, чтобы отправить кому-то, но я хотел отредактировать (вычеркнуть) пару небольших фрагментов текста.
Быстрый поиск в Google не показывал никаких инструменты для этой конкретной цели, поэтому я вернулся к imagemagick & amp; gimp:
convert document.pdf document.png
gimp document-0.png
Проблема с этой стратегией заключается в том, что процесс преобразования (от PDF до PNG или любого другого формата) теряет качество. Я попытался редактировать PDF-файл в gimp, но это не сработало.
Есть ли специальный инструмент, который разрешает редакцию таким образом? (Это даже не должно быть «реальной» редакцией - я не отправляю softcopy, поэтому «фальшивая» редакция будет работать, потому что печатная копия не может быть взломана, чтобы выявить основной текст.)
Или, есть ли уловка для редактирования PDF-файлов в gimp?
(первоначально я рекомендовал Okular, но он не работал так, как я ожидал)
1. Редактировать документ в векторном редакторе
Мне удалось открыть PDF-файл в 1. Измените документ в векторном редакторе , нарисуйте прямоугольник над текстом и распечатайте его. Inkscape - это векторный редактор, поэтому никакой растеризации не требуется. Некоторые шрифты выглядели неправильно - возможно, потому, что документ был создан на компьютере Windows со шрифтами, отсутствующими на моем.
Обратите внимание, что любой метод, не связанный с растеризацией, является приемлемым только в том случае, если вы собираетесь распечатать отредактированный документ на бумаге и не распространять его в электронном виде, поскольку текст по-прежнему можно извлечь из-под отключений.
Примечание
Что касается «потери качества» при открытии страницы в Gimp: вы можете напрямую открыть PDF-файл в Gimp. Он будет растрирован в процессе. Объем потери качества в процессе - это вопрос разрешения, которое вы выбираете при импорте - 300 dpi должно дать вам очень приличное качество (по умолчанию 100).
Вы также можете получить хорошие результаты с помощью команды ImageMagick convert, если вы сообщите ей об увеличении разрешения:
convert -density 300x300 ...
В основном то, что вы пытаетесь сделать, это выделить / аннотировать PDF, но с некоторой гибкостью в отношении непрозрачности и цвета маркера (вы упомянули, что вам не нужно подвергать цензуре / удалению что-то, просто отредактировать). Вы посмотрели ответы здесь: Как я могу выделить или комментировать PDF-файлы?
Один из самых высоко оцененных ответов рекомендует Xournal, о котором здесь не упоминалось, и было бы моим оружием выбора. Это инструмент, который позволяет делать рукописные заметки, но имеет дополнительные функции, позволяющие вам аннотировать PDF-файл. По умолчанию он сохранит ваши аннотации в виде отдельного файла, но также позволит вам экспортировать аннотированный PDF-документ в виде нового PDF-файла. Это должно поддерживать макет, шрифты и т. Д.
С помощью Xournal вы можете выбрать «Аннотировать PDF», затем использовать сплошной черный маркер для маскировки частей, которые вы хотите отредактировать, и «Экспорт в PDF».
В Интернете есть несколько историй о том, что Xournal растеризует текст в экспортированном PDF (спасибо, что указали это, MHC). Это не похоже на правду: с помощью простых аннотаций текст остается доступным для выбора и поиска, а размер файла не увеличивается значительно (он увеличился с 205 кб до 220 кб в примере ниже).
To установить, запустить в терминале: sudo apt-get install xournal или просто выбрать его из Software Center
Я ежедневно обрабатываю много файлов PDF, поэтому я трачу много времени на размышления, как сделать это наилучшим образом.
Для меня лучшим способом является разделение PDF в одностраничном PDF-файле, рядом с которым можно редактировать с помощью GIMP, рядом с ним. Я не использую imagemagick для всех файлов (я вообще не использую), поэтому я не потеряю текстовый слой на всех страницах, но только на redacted. Не загружайте весь файл PDF сразу, потому что он вызывает изнурение памяти.
Легко разделять PDF-файлы на 1-страничный PDF вы можете этим bash function (поместить его в ~ / .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";
Эти операции очень повторяются и скучно, поэтому я соединяю все это в 1 скрипте:
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[!d11 ]
Не забудьте закрыть GIMP (CTRL + Q) после всех изменений, чтобы продолжить сценарий.
В зависимости от меня, как я открываю отредактированные файлы (мне нравится читать, чтобы проверить, все ли) и как загрузить Scribd с моим другим скриптом - http://dostep.jawne.info.pl/it/bashrc , поэтому теперь я могу очень эффективно редактировать много файлов PDF.
Вы можете использовать Okular.
sudo apt-get install okular
Откройте pdf с помощью Okular. Нажмите F6. Нажмите 8. Выделите текст, который вы хотите отредактировать. Щелкните правой кнопкой мыши текст, выберите свойства, выберите «Тип» как «Выделить», нажмите «ОК». Распечатайте файл в формате pdf. Откройте PDF с помощью бесплатного инструмента PDF-Xchange PDF Viewer. Вычеркните текст, который нужно отредактировать, используя черные прямоугольники. Распечатать. Это даст вам легкую, качественную «фальшивую» редакцию.
Вы также можете попробовать этот инструмент: https://launchpad.net/updf
Вот он (но в любом случае текст можно выбрать):
Я помню, как однажды мне и коллеге пришлось найти способ редактировать пару PDF-файлов, мы закончили использовать Gimp. Я прокомментирую вам подробности ... мы открываем pdf напрямую с помощью gimp (в терминале)
gimp the_file.pdf
По завершении редактирования мы не сохранили изменения, вместо этого мы печатаем в в файл pdf ... Казалось, что все нормально.
PDF Studio не является открытым исходным кодом и является программным обеспечением, которое требует покупки.
С точки зрения этого вопроса, начиная с версии 8, он имеет функцию ручного редактирования. Пользователи могут выбрать текстовый объект и отредактировать его. Содержимое удаляется из PDF и заменяется черным прямоугольником.
В версии 9, приходящей на третью четверть 2013 года, аннотации и записи комментариев будут доступны также для изображений и фигур.
Используйте LibreOffice Draw для быстрого редактирования, которое вы ищете. После того, как вы закончите, вы можете сохранить его как формат LibreOffice Draw или экспортировать его снова в формат PDF (File> Export as PDF)
Чтобы иметь возможность импортировать файлы PDF в в LibreOffice Draw вы должны сначала установить пакет libreoffice-pdfimport.
Установить его через программный центр Ubuntu (libreoffice-pdfimport) или через терминал с sudo apt-get install libreoffice-pdfimport.
Лучшим способом, который я нашел для этого, является использование http://www.pdfescape.com. Вы можете добавлять комментарии, добавлять текст и изображения, рисовать прямоугольник «whiteout» вокруг материала, который хотите отредактировать, и вы можете быстро загрузить и сохранить его. Он также отлично работает с многостраничными документами, что является чем-то большим, чем многие другие решения не очень хорошо работают. Например, если вы открываете многостраничный документ в Gimp или Inkscape, вы сможете открывать только одну страницу за раз. Процесс намного быстрее в PDFescape. Весь процесс для редактирования двухстраничного документа занимает менее минуты.
Как много решений здесь рекомендуют отредактировать / очернить аннотации (которые оставляют исходное содержимое в pdf), я рекомендую впоследствии растрировать PDF, чтобы действительно удалить исходное содержимое.
Вот один из способов для этого, в то же время, сохраняя качество вверх и размер файла низким (по крайней мере, в моем случае из группы черно-белых страниц):
$ convert -quality 100 -density 180 -compress zip notreallyredacted.pdf trulyredacted.pdf
Примечание: convert требуется ImageMagick.
Примечание 2: convert не сохраняет содержимое форм, которые вы, возможно, заполнили. Чтобы он не потерялся, вы можете сначала напечатать документ «в файл» примерно как evince (или в любом приложении, которое вы заполнили форму), а затем растрировать его.
Существует несколько редакторов для прямого редактирования PDF-документов, таких как pdfedit, или конвертировать его в другие векторные форматы, которые могут быть лучше поддерживаются, например pstoedit. Однако я бы не рекомендовал использовать их как риск сделать что-то глупое, например, просто рисовать над текстом черным, оставив векторы на месте - это легко сделать, что делает триктным уничтожение.
Переход по вектору в растровый маршрут является самым безопасным способом, предпочтительно 1-битным растровым маршрутом, чтобы избежать возможных проблем с альфа-каналами или различиями цвета, которые могли бы оставить текст доступным для чтения.
Если возможно, вы всегда должны отредактируйте исходный документ и просто удалите информацию, а не краску в формате PDF, так как даже кернинг и интервал текста вокруг отредактированного текста могут отдать его.
Если вы не хотите запоминать правильное заклинание для convert, вы можете использовать pdf-redact-tools, сценарий оболочки, автоматизирующий процесс взрыва PDF-файла в изображения PNG и слияние их обратно после редактирования (с использованием инструмент по вашему выбору, например, gimp). Это непринужденно apt-install installable.
Я добавляю в список: Крита. Не было потери качества, потому что при импорте PDF вы можете определить dpi (установите его на 300, как сказал @Sergey). После редактирования нажмите «Экспорт в формате PDF». Наконец, я нахожу, что Krita более интуитивно понятен, чем Gimp, после долгого времени пользователя Photoshop.
Если вы используете LibreOffice для создания PDF-файла, откройте doc в LibreOffice, выделите текст, который нужно отредактировать, щелкните правой кнопкой мыши и выберите символ, выберите «Фон» и нажмите «Черный». Экспорт в PDF.