Если у меня есть многостраничный PDF, и я делю его на отдельные страницы, используя отличный пакет poppler (установленный на macOS с использованием brew install poppler
), например:
pdfseparate foo.pdf bar-%04d.pdf
, а затем воссоединиться с полученной строкой - ####. Pdf файлами, например:
pdfunite bar-*.pdf baz.pdf
Полученный файл baz.pdf, по-видимому, имеет такое же содержимое, но файл намного больше .
Сначала я предполагал, что в результате будут дубликаты метаданных или что-то в этом роде. Но даже если я уберу все метаданные из всех файлов, то есть из входных данных, а также из промежуточной строки - файлов ####. Pdf, а также из полученного выходного файла, используя exiftool и qpdf как это:
# command line steps to strip metadata from (and re-linearize) example.pdf :
exiftool -all= -overwrite_original example.pdf ;
mv example.pdf temp.pdf ;
qpdf --linearize temp.pdf example.pdf
Затем все равно результирующий файл baz.pdf намного больше исходного ввода.
Что может быть причиной этого? Что еще может быть в многостраничном PDF-файле, кроме его содержимого? Предполагая, что у pdfseparate
и pdfunite
у Попплера фактическое содержимое остается нетронутым, и что мои метаданные верны.
Или возможно, что pdfseparate
и pdfunite
каким-то образом разлагают и восстанавливают содержимое PDF таким образом, чтобы оно было без потерь, но неоптимальным? (Я не знаю достаточно о внутренней структуре файлов PDF, но могу представить, что существует множество различных способов кодирования одного и того же содержимого)
Кстати, если я проверяю какой-либо из задействованных файлов PDF, используя exiftool somefile.pdf
, он действительно вообще не показывает метаданных (и линеаризован: да).