Скрипт PDF "print from JavaScript" перестал работать под Adobe Reader 10/11

У моего клиента есть PDF-формы, созданные Acrobat Pro. У каждого есть кнопка "Печать" на форме. За кнопкой "Печать" находится этот JavaScript, который по-прежнему является рекомендуемым подходом к печати согласно Adobe:

var pp = this.getPrintParams();

pp.printerName = "\\\\server2\\EN100Tiffs";
pp.interactive = pp.constants.interactionLevel.automatic;

this.print(pp);
app.alert("Document sent to printer", 3);

app.alert("Please close window after each use", 3);

Указанный выше принтер на самом деле является утилитой, которая преобразует все, что ему отправлено, в TIFF (драйвер UltraTIFF от Alto Imaging). Сервер, на котором он находится, - это Windows 2008. Другой процесс постоянно сканирует файлы TIFF и отправляет их в систему обработки документов клиента.

Это работало до Adobe Reader 10. В этот момент утилита прекратила генерировать TIFF. Заказчик решил эту проблему, остановившись на Adobe Reader 9, но теперь он вынужден перейти на Reader 11. Он также не работает в Reader 11.

Обратите внимание, что принтер не настроен на клиентских компьютерах. Все клиентские машины - Windows 7.

Также обратите внимание, что пользователи имеют прямой доступ к PDF. Это не внутри окна браузера.

Если я настрою драйвер TIFF в качестве принтера на клиентском компьютере (через Пуск / Устройства и принтеры / Добавить принтер), сценарий будет работать в Adobe Reader 10 и 11. Если принтер не настроен, сценарий будет работать в Reader 9 и ранее, но он не работает в течение 10 или 11. Клиент не будет настраивать принтер на клиентах, потому что они боятся, что пользователи могут напечатать на нем случайно, и все, что они напечатают, в конечном итоге будет отображаться в документе. система.

В попытке выяснить, в чем дело, я добавил перехват ошибок к скрипту кнопки печати:

var pp = this.getPrintParams();

pp.printerName = "\\\\server2\\EN100Tiffs";
pp.interactive = pp.constants.interactionLevel.automatic;

try {
  this.print(pp);
  app.alert("Document sent to printer", 3);
} catch (err) {
  app.alert("Error printing: " + err);
}

app.alert("Please close window after each use", 3);

Когда я попытался напечатать документ, не было выдано никакой ошибки. Я получил сообщение "Документ отправлен на принтер", а не сообщение об ошибке, но документ все еще не был отправлен на принтер - я имею в виду, что файл TIFF не был создан.

Итак, мои вопросы:

  1. Кто-нибудь испытывал подобные странности с печатью из Javascript при переходе с Reader 9 на Reader 10?

  2. Что-то в фрагментах кода вызывает ошибку?

Спасибо всем за внимание, особенно если вы сделали это далеко:)

0 ответов

Другие вопросы по тегам