Распечатать несколько загруженных документов из веб-приложения - PullRequest
3 голосов
/ 08 февраля 2012

Я хочу знать, возможно ли напечатать все вложенные PDF-файлы из объекта.(Боюсь, что нет, но лучше спросить; D)

context:

Пользователь загружает несколько файлов PDF в свой аккаунт, а затем нажимает кнопкуна «печать всех PDF-вложений», вместо загрузки, а затем по одному нажмите «печать»

Спасибо.

Ответы [ 3 ]

2 голосов
/ 08 февраля 2012

Есть несколько способов сделать это, используя только JS или комбинацию PHP и js (и, возможно, серверные программы, которые можно вызывать из PHP):

  1. Пусть целевой документ представляет собой php-файл, который программно объединяет все PDF-файлы в один документ (например, с помощью pdftk), а затем выводит объединенный файл с заголовками PDF. Этот файл будет загружен в iframe, который вы можете вызвать window.print() с помощью JavaScript.

  2. Используйте функцию javascript window.print() для нацеливания на несколько скрытых фреймов, в каждый из которых загружен один из PDF-файлов. Основным недостатком этого подхода является то, что он создает несколько диалоговых окон печати. ​​

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

1 голос
/ 08 февраля 2012

Лучший способ, вероятно, состоит в том, чтобы объединить все PDF в одну сторону сервера документов, а затем позволить пользователю загрузить и распечатать его.Это то, что делают рукописные и, вероятно, другие онлайн-системы рецензирования.

1 голос
/ 08 февраля 2012

Этого нельзя сделать с помощью PHP. Зачем? Ну, PHP это серверный скрипт. Нет доступа к принтеру пользователя.

Насколько мне известно, с помощью javascript также нет решения. Майк сделал хороший вывод, что диалог принтера доступен через команду javascript, но на этом он останавливается. Это хорошая вещь, вы хотите, чтобы страница, которую вы вводите, могла использовать ваш принтер без вашего разрешения?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...