2016-02-03 3 views
3

В моем проекте мне нужно распечатать список файлов изображений (.png) с настройками differents, и я сделаю это без проблем, используя собственную .Net System.Drawing.Printing.PrintDocument classe:.net Печать со степлером

  • PrintDocument.DefaultPageSettings. Пейзаж Позвольте мне изменить ориентацию
  • PrintDocument.DefaultPageSettings. PaperSize Позвольте мне изменить документ для использования
  • PrintDocument.DefaultPageSettings. Дуплекс позволяет мне изменить режим двусторонней печати

Единственное, я не могу сделать, это определить сшивание собственность ?? Проведя много времени поисков, я очень разочарован о том, как это сделать:

  • Можно ли сделать это с помощью PrintDocument Classe и его подклассы ??
  • Должен ли я использовать PrintTicket, как описано в MSDN article?

Но если решение использовать класс билетов на печать, я «ве два других вопроса:

  1. Как я прикрепить печать существующего файла изображения (с помощью PrintJob, PrintDocument? ?)
  2. Доступны ли классы thoses только для использования документа XPS?

Важное ограничение: нет графического интерфейса (поскольку программа печатает большое количество файлов в пакетном режиме), поэтому пользователь не может изменять интерактивный вариант скрепки.

+1

Опция сшивания - это опциональный вариант драйвера принтера, который не обернут Windows.Обычно пользователь будет использовать Панель управления> Устройства и принтеры> щелкните правой кнопкой мыши принтер> Параметры печати. Если это нужно настроить для каждого задания печати, вы можете использовать класс PrintDialog, кнопка «Настройки» предоставляет те же самые свойства. –

+0

@HansPassant: извините, я не упомянул, что нет gui, чтобы позволить пользователю изменять настройки, извините – sstassin

ответ

1

Наконец, проведя несколько часов поиска, я нашел правильный ответ, чтобы получить и установить определенные настройки принтера.

Благодаря этому Good Article я понял, что для того, чтобы получить/установить все настройки принтера, мне приходится иметь дело с структурой DevMode принтера.

Недостатки:

  • структура DevMode специфична для водителя, а также операционной система
  • Вы должны поддерживать список DevMode адреса для каждого параметра, которые вы хотите изменить

Преимущества:

  • вы можете получить доступ ко всем функциям, предлагаемых принтером (накануне n печать на майке или режиме сохранения ....)
  • Проект в ссылке показывает небольшой интерфейс для получения/установки/проверки того, какой параметр был изменен с помощью окна настроек Pinter Dialog. Таким образом, вы легко меняете с помощью изменения кода на лету.