Як знайти відмінності у візуально ідентичних файлах PDF? [дублювати]


1

На це запитання вже є відповідь:

У мене є два PDF-файли, які виглядають однаково при перегляді або друкуванні diff каже, є двійковими і відрізняються. Як я можу дізнатися, які відмінності?

Я віддаю перевагу відповіді, яка буде працювати на Mac OS X або на OpenSUSE.


Оскільки ви згадуєте diff Я припускаю, що ви використовуєте якийсь Unix?
terdon

Mac OS X, з MacPorts. Я знайшов exiftool частина моєї відповіді, коли я складав питання, думав, що я можу додати цю деталь у своїй відповіді, а потім отримав повідомлення, що я не можу відповісти на моє власне питання протягом 8 годин.
ShadSterling

Я можу використовувати будь-яку відповідь, яка буде виконуватися на Mac OS X або на OpenSUSE, але в дусі надання відповідей, корисних для всіх, я хотів би отримати відповіді, які працюють тільки на інших системах.
ShadSterling

Це питання, здається, стосується видимих ​​відмінностей, а не невидимих ​​відмінностей і вимагає конкретного рішення для платформи.
ShadSterling

Відповіді:


0

Для початку, я б спробував strings на цих файлах і проколювати його grep "rdf" щоб побачити, що приходить.

strings x.pdf | grep "rdf"

Будь ласка, поясніть, чому ви це зробите. Відповідь, яку ви дали, це лише для інсайдерів. Перевіряти Як відповісти .
user 99572 is fine

Я не впевнений, що я слідую. @Polyergic попросив знайти способи пошуку відмінностей. Якщо це щось подібне до дат створення або модифікації, вбудованих у PDF (метадані rdf), вищевказані команди знайдуть це. Без більше контексту про те, що нам потрібно з'ясувати, важко дати більш конкретну відповідь. І я припускаю, що використання Acrobat не може йти.
Stefan Ludwig

strings не знаходить відмінностей, витягує рядки. Я б привітав це, тому що це корисно, але, очевидно, моя репутація занадто низька, щоб визнати корисні, але неповні відповіді на моє власне питання.
ShadSterling

Було б непогано знати, що це можна зробити за допомогою Acrobat, але я не зможу використовувати цю відповідь.
ShadSterling

0

У оболонках, які підтримують Заміна процесу (видно в Q317819 ), diff може бути надано висновок будь-якої команди, яка генерує текстове представлення - наприклад, exiftool:

diff -u <(exiftool -a -v one.pdf) <(exiftool -a -v two.pdf)

Стефан Пропозиція Росії strings також генерує текстове представлення і може використовуватися таким же чином:

diff -u <(strings one.pdf) <(strings two.pdf)

Вихід з exiftool або strings відносно читається, але не представляє весь файл. exiftool показує лише метадані, і strings показує лише витяги, які складаються з 4 або більше байтів дійсного тексту ASCII; розбіжності, які не визнаються як метадані або як рядки ASCII, не будуть знайдені. Неможливо прочитати, але виконати повне текстове зображення od:

diff -u <(od -vcw one.pdf) <(od -vcw two.pdf)

(Якщо od не доступний, можна зробити навіть менш читабельне, але все ще повне текстове представлення hexdump або hexcat; в MacPorts , реалізація GNU Росії od мої бути встановлені як god. Не всі реалізації підтримують однакові параметри.)

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

Я вважаю, що кожна сучасна операційна система, окрім Windows, має оболонку, яка підтримує встановлену за замовчуванням процес заміщення; декілька таких оболонок доступні для Windows, але вам доведеться переходити через обручі, щоб вони працювали.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.