Я читал на нескольких форумах, что часть метаданных Universal PDF книг pdf имеет неправильный формат и вызывает ошибки при попытке чтения из нее. Как удалить определенный ключ и значение из pdf и повредит ли это данные?
Вот данные
File Type : PDF
File Type Extension : pdf
MIME Type : application/pdf
PDF Version : 1.6
Linearized : No
Universal : PDF
The : process
Code Mantra : Acrobat
Author : ModDate
LLC : http://www.codemantra.com
Create Date : 2004:08:26 09:42:01+05:30
EBX PUBLISHER : University of Toronto Press
Page Layout : SinglePage
Page Count : 419
Page Mode : UseOutlines
Has XFA : No
XMP Toolkit : 3.1-702
Code Mantra 002 C0020 LLC : http://www.codemantra.com
Universal 0020 PDF : The process that creates this PDF constitutes a trade secret of codeMantra, LLC and is protected by the copyright laws of the United States
Modify Date : 2012:09:11 15:27:50+05:30
Metadata Date : 2012:09:11 15:27:50+05:30
Creator Tool : Acrobat 5.0 Paper Capture Plug-in for Windows
Document ID : uuid:ccee9833-967a-4d92-b5fa-12faa7d620c4
Instance ID : uuid:51e5148e-3afa-45df-82b8-26d43c7e6ffc
Format : application/pdf
Title :
Creator : .
Любая помощь будет оценена по достоинству.
решение1
Этот ответ предполагает, что вы хотите использовать exiftool для этого. Вероятно, есть другие инструменты, которые могут лучше справиться с этой задачей в случае PDF-файлов, особенно если вы хотите нацелиться на отдельные элементы, а не удалить их все.
Сначала вам необходимо определить имя тега (см.FAQ по exiftool №2). В выводе, который вы показываете, перечислены описания тегов, а не имена тегов. Выполните эту команду, чтобы вывести список тегов по имени.
exiftool -s File.PDF
После того, как у вас есть имена тегов, которые вы хотите удалить, ваша команда будет выглядеть так:
exiftool -TAG= <FileOrDir>
В этой команде вы можете очистить несколько тегов и перечислить несколько файлов и каталогов.
Если вы получите ошибку в духе Warning: Tag 'xxx' is not defined
, то у вас есть пользовательский тег, который exiftool не может удалить индивидуально. Из опубликованного вами вывода, это, вероятно, так. Вы можете использовать exiftool для удаления всех встроенных метаданных с помощью
exiftool -All:All= <FileOrDir>
У вас все еще могут возникнуть проблемы из-за способа, которым exiftool редактирует файлы (см.PDF-страница exiftool). Возможно, вам придется повторно линеаризовать файл, чтобы завершить проект. Это можно сделать с помощьюQPDFс командой
qpdf --linearize in.pdf out.pdf