Создать PDF, который не редактируется

11710
Chico Sokol

Можно ли создать PDF, который нельзя редактировать?

В настоящее время документы, которые я генерирую, pdflatexмогут редактироваться с помощью таких приложений, как Adobe Acrobat X Pro.

У меня есть некоторые документы в формате PDF, которые нельзя редактировать с помощью Acrobat, так как я могу воспроизвести это с помощью LaTeX?

12
Один из способов - создать изображения (например, png), а затем создать PDF-файл из изображений. Peter Grill 12 лет назад 0
Многие моменты в ответах здесь описаны в предыдущих постах в теге [tag: drm]. Возможно, посмотрите на них. Joseph Wright 12 лет назад 2

2 ответа на вопрос

11
Werner

PDF Toolkit является свободным, приложение командной строки, которая обеспечивает эту функциональность. Вы устанавливаете «пароль владельца» ( owner_pw <password>) и указываете, какие свойства разрешены для документа. Вот пример (со страницы примеров Pdftk ), который шифрует документ со 128-битной стойкостью и разрешает только печать:

pdftk mydoc.pdf вывод mydoc.128.pdf owner_pw foopass разрешить печать 

Это дает следующие свойства документа в Adobe:

enter image description here

Также могут быть установлены другие разрешения (со страницы руководства Pdftk ):

[разрешить <разрешения>]

Разрешения применяются к выходному PDF-файлу только в том случае, если указан уровень шифрования или указан пароль владельца или пользователя. Если разрешения не указаны, они по умолчанию имеют значение «none», что означает, что все следующие функции отключены.

Раздел разрешений может включать одну или несколько из следующих функций:

  • Печать - печать высшего качества
  • DegradedPrinting - печать низкого качества
  • ModifyContents - также позволяет сборку
  • сборочный
  • CopyContents - также позволяет ScreenReaders
  • экранные дикторы
  • ModifyAnnotations - также позволяет заполнять
  • Заполнить
  • AllFeatures - позволяет пользователю выполнять все вышеперечисленное и печатать наивысшего качества.

Как оказалось, эти функции безопасности очень сильно зависят от зрителя, и есть способы обойти это.

Это надежно? В большинстве случаев эти ограничения легко обойти путем преобразования в пост-скрипт и обратно в pdf. Alfred M. 12 лет назад 0
@AlfredM .: Я не проверял. А у тебя Werner 12 лет назад 0
нет, мне было просто любопытно Alfred M. 12 лет назад 0
@ Альфред М .: Любое решение такого рода не является надежным по определению. Действительно, если кто-то может увидеть содержимое файла PDF, он также может сохранить его в другом файле PDF / PS / .... Это просто вопрос поиска правильных инструментов (Acrobat откажется делать это не потому, что не может, а потому, что Adobe не хочет этого делать). 12 лет назад 3
Применяемый здесь DRM слаб, но все же достаточно силен, чтобы честные люди были честными. Пока ваши ожидания настроены соответственно, это достаточно надежно. Думайте об этом как о контракте между производителем документа и программным обеспечением, использующим PDF. Соответствующее программное обеспечение будет соблюдать договор и, следовательно, действовать в соответствии с перечисленными ограничениями. Adobe, как создатель PDF, естественно, добросовестно выполняет условия контракта. Тем не менее, под капотом все DRM имеют серьезные недостатки и зависят от произвольного закона, такого как DMCA, чтобы предотвратить подрыв пользователей. RBerteig 12 лет назад 0
@amorua: можно добавить пароль к файлу, который просят открыть / посмотреть файл. Werner 12 лет назад 0
Некоторые читатели PDF, такие как evince, не уважают эти пароли. 12 лет назад 0
Это не работает. Я все еще могу редактировать PDF с помощью Adobe Acrobat Pro X ... Но спасибо за помощь! 12 лет назад 0
10
yo'

Я добавлю это как ответ, потому что это как-то отвечает на вопрос, и это долго и немного сложно. Краткий ответ: нет, это невозможно. Как только вы можете прочитать PDF на экране, это означает, что есть вся информация, и PDF можно редактировать. Программы Adobe, конечно, не предлагают такой функциональности. Но если вы хотите, чтобы PDF был редактируемым, вы всегда можете использовать ImageMagick:

convert -density 600 myfile.pdf myfile.png 

Впоследствии, поскольку качество очень высокое, любой достаточно хороший OCR сможет преобразовать его обратно в текст. И, конечно, есть и другие возможности. Как уже упоминали другие люди, вы можете декодировать PDF в PS (что возможно, потому что в некоторой степени это то, что нужно для чтения PDF), а затем конвертировать обратно, и у вас есть редактируемый файл PDF.

Вывод: вы можете защитить PDF от правок «обычными» пользователями, но вы не можете защитить его от правок людей, которые знают, что они делают.

Даже «нормальные» пользователи могут печатать (если это разрешено) в PDF. 12 лет назад 0
Есть методы, которые заставляют PDF печатать полностью черную страницу для обычного пользователя. Я знаю, что некоторые научные журналы делают это, чтобы люди могли видеть статью, но не печатать ее. Тем не менее, даже это может быть взломано, это то же самое, что сделать его «недоступным для редактирования». yo' 12 лет назад 0
@tohecz: я уверен, что ты прав; но я нахожу идею «непечатного PDF» забавной и трагичной. Это похоже на программу, которую вы не можете выполнить. Если это не для печати, PDF - ужасный формат для всего остального. Brent.Longborough 12 лет назад 0
@ Брент. Лонгборо Я не могу согласиться, я думаю. Он переносим (т.е. работает на всех платформах, включая xindles) и хорошо масштабируется. И это то, что людям нравится больше всего, когда они хотят «документ». yo' 12 лет назад 0
@tohecz: Хорошо, тогда мы должны согласиться на другое. Я считаю, что PDF хорош для «слайд-презентаций» и печати. Для «обычного просмотра онлайн» это действительно враждебно для пользователя, хотя бы потому, что он не перерисовывается, поэтому вы зависите от первоначального дизайнера и его конкретного разрешения экрана. Brent.Longborough 12 лет назад 0
Да, я знаю, что невозможно полностью защитить PDF. Я просто хочу, чтобы людям было сложнее просто редактировать их в обычном программном обеспечении, таком как Adobe Acrobat. Создание изображения, как вы предложили, не вариант для меня. В любом случае, большое спасибо! 12 лет назад 0
@FranciscoSokol Я включил это здесь только для того, чтобы _все убедить всех_, что ни один метод не является пуленепробиваемым;) yo' 12 лет назад 0
@ Brent.Longborough Хотя я согласен с тем, что иногда неперетекающая часть может раздражать, `P` означает переносимость, а не печать. 12 лет назад 0
@Qrrbrbirlbel: Так назвал его создатель Adobe. Не моя идея эталонной модели для абсолютной правды. «Портативный» - это модное корпоративное слово, предназначенное для продажи идей заостренным менеджерам. Brent.Longborough 12 лет назад 1