Печать двух страниц формата A5 на одной странице формата A4 - настройте параметры печати по коду - PullRequest
0 голосов
/ 10 января 2019

Требования

У нас есть специальное приложение (служба печати), которое печатает любой документ на нужный сетевой принтер.

Это сделано на основе:

System.Drawing.Printing

В частности:

  • PrintDocument
  • PrinterSettings

Приложение работает нормально в течение некоторого времени, недавно я получил запрос на изменение для поддержки следующего:

Должна быть возможность печати документов формата A5 на страницах формата А4 по два на страницу. мода

Это означает, что мы должны иметь возможность поддерживать эти параметры ручной печати по коду:

enter image description here

enter image description here

Я бы подумал, что это возможно, я просто не знаю, где искать.

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

1 Ответ

0 голосов
/ 16 января 2019

Если ваш текущий код печатается в графический объект, например:

public void Print(Graphics g);

Тогда вы сможете втиснуть два вывода на одну и ту же физическую страницу примерно так:

  g.Transform = create matrix scaled to 50% and rotated 90°
  page1.Print(g);
  g.Transform = create matrix scaled to 50%, rotated 90° and translated half a page, 
  page2.Print(g);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...