Acrobat и любой другой просмотрщик PDF не будут печатать аннотации подключенных линий - PullRequest
1 голос
/ 05 марта 2019

Аналогично этой проблеме, однако решение не работает. Adobe Acrobat Reader не печатает мой рисунок в PDF

Я использую Boox Max Carta для написания и аннотирования работ в формате PDF.Аннотации экспортируются из электронного ридера в виде pdf-аннотаций (комментариев) категорий, связанных линий.

Вот пример файла.

Когда я иду на печать, если я выберу Документ и разметку - я ничего не получу.

Если я выберу итоговые комментарии, я получу номера для каждой аннотации, но без каракулей.

Pdf Print annotation failure

Что мне нужно сделать, чтобы напечатать аннотированные PDF-файлы?

Есть ли способ скомпоновать его в изображение или еще что-нибудь?

Решение - Спасибо @mkl за поискосновная причина

Используйте библиотеку Python PyMuPdf для циклического перемещения по страницам и аннотациям, добавляя флаг к каждому из них.

""" Recipies used
https://pymupdf.readthedocs.io/en/latest/faq/#how-to-search-for-and-mark-text
https://pymupdf.readthedocs.io/en/latest/faq/#how-to-add-and-modify-annotations
"""

import sys
import fitz
fname = sys.argv[1]                    # filename
doc = fitz.open(fname)
updated_annot_count = 0;
for page in doc:       
    current_annot = page.firstAnnot;                # scan through the pages
    while current_annot:
        current_annot.setFlags(current_annot.flags|fitz.ANNOT_XF_Print)
        current_annot = current_annot.next          # Follow linked list
        updated_annot_count = updated_annot_count+1


if doc:
    doc.save("printable-" + doc.name)

Pdf прекрасно отображается на экране компьютера в обоих случаях.Chrome и Adobe Acrobat (2017)

1 Ответ

3 голосов
/ 07 марта 2019

Все аннотации рисования линий (на самом деле есть аннотации типа Линия , Квадрат , Полигон и Полилиния ) имеют нет F задержка входа; таким образом, значение их флагов аннотаций по умолчанию равно 0, все флаги очищены.

F целое число (Необязательно; PDF 1.1) Набор флагов, определяющих различные характеристики аннотации (см. 12.5.3, «Флаги аннотации»). Значение по умолчанию: 0.

(ISO 32000-1, Таблица 164 - Записи, общие для всех словарей аннотаций)

В частности, флаг Print сброшен.

3 Печать (PDF 1.2) Если установлено, распечатайте аннотацию при печати страницы. Если флажок снят, никогда не печатайте аннотацию, независимо от того, отображается ли она на экране.

(ISO 32000-1, Таблица 165 - Флажки аннотаций)

Таким образом, ваши аннотации явно созданы, чтобы никогда не печаталось .

Если вы хотите распечатать их, установите флаг аннотаций Print .

Это простая задача для реализации с использованием любой библиотеки PDF общего назначения.

...