12. Печать

SelectPrinter(PrinterName: String; CopiesCount: Integer): Boolean

Метод открывает диалог выбора принтера. Если в диалоге нажата кнопка “ОК”, метод вернёт значение True, а в параметры будут записаны: Имя выбранного принтера и количество копий.

Parameters:
  • PrinterName (String) – Имя выбранного принтера
  • CopiesCount (Integer) – Количество копий
Return type:

Boolean

Пример использования
<PASCAL>
  APrinterName := '';
  ACopiesCount := 1;
  if SelectPrinter(APrinterName, ACopiesCount) then
    ShowMessage('Выбран принтер: ' + APrinterName + #13#10 +
      'Количество копий: ' + VarToStr(ACopiesCount));
  else
    ShowMessage('Нажата отмена');
</PASCAL>

12.1. Printer

class Printer

Методы для работы с принтером

Escape(PrinterName, EscapeCode: String): Boolean

Оправляет последовательность кодов непосредственно драйверу принтера минуя GDI. Предназначена, например, для работы с принтерами фирмы Zebra поддерживающими язык ZPL или ZPL II.

Parameters:
  • PrinterName (String) – Имя принтера
  • EscapeCode (String) – Escape коды
Return type:

Boolean

Пример использования
<PASCAL>
  var
    n: String;
    i: Integer;
    t: String;
  begin
    Printer.SelectPrinter(n,i);
    t := '^XA' + #13#10 +
    '^FX Top section with company logo, name and address.' + #13#10 +
    '^CF0,60' + #13#10 +
    '^FO50,50^GB100,100,100^FS' + #13#10 +
    '^FO75,75^FR^GB100,100,100^FS' + #13#10 +
    '^FO88,88^GB50,50,50^FS' + #13#10 +
    '^FO220,50^FDInternational Shipping, Inc.^FS' + #13#10 +
    '^CF0,40' + #13#10 +
    '^FO220,100^FD1000 Shipping Lane^FS' + #13#10 +
    '^FO220,135^FDShelbyville TN 38102^FS' + #13#10 +
    '^FO220,170^FDUnited States (USA)^FS' + #13#10 +
    '^FO50,250^GB700,1,3^FS' + #13#10 +

    '^FX Second section with recipient address and permit
    information.' + #13#10 +
    '^CFA,30' + #13#10 +
    '^FO50,300^FDJohn Doe^FS' + #13#10 +
    '^FO50,340^FD100 Main Street^FS' + #13#10 +
    '^FO50,380^FDSpringfield TN 39021^FS' + #13#10 +
    '^FO50,420^FDUnited States (USA)^FS' + #13#10 +
    '^CFA,15' + #13#10 +
    '^FO600,300^GB150,150,3^FS' + #13#10 +
    '^FO638,340^FDPermit^FS' + #13#10 +
    '^FO638,390^FD123456^FS' + #13#10 +
    '^FO50,500^GB700,1,3^FS' + #13#10 +

    '^FX Third section with barcode.' + #13#10 +
    '^BY5,2,270' + #13#10 +
    '^FO175,550^BC^FD1234567890^FS' + #13#10 +

    '^FX Fourth section (the two boxes on the bottom).' + #13#10 +
    '^FO50,900^GB700,250,3^FS' + #13#10 +
    '^FO400,900^GB1,250,3^FS' + #13#10 +
    '^CF0,40' + #13#10 +
    '^FO100,950^FDShipping Ctr. X34B-1^FS' + #13#10 +
    '^FO100,1000^FDREF1 F00B47^FS' + #13#10 +
    '^FO100,1050^FDREF2 BL4H8^FS' + #13#10 +
    '^CF0,190' + #13#10 +
    '^FO485,920^FDCA^FS' + #13#10 +

    '^XZ'+#13#10;
    Printer.Escape(n, t);
  end;
</PASCAL>
SelectPrinter(PrinterName: String; CopiesCount: Integer): Boolean

Метод открывает диалог выбора принтера. Если в диалоге нажата кнопка “ОК”, метод вернёт значение True, а в параметры будут записаны: Имя выбранного принтера и количество копий.

Parameters:
  • PrinterName (String) – Имя выбранного принтера
  • CopiesCount (Integer) – Количество копий
Return type:

Boolean

Пример использования
<PASCAL>
  APrinterName := '';
  ACopiesCount := 1;
  if Printer.SelectPrinter(APrinterName, ACopiesCount) then
    ShowMessage('Выбран принтер: ' + APrinterName + #13#10 +
    'Количество копий: ' + VarToStr(ACopiesCount));
  else
    ShowMessage('Нажата отмена');
</PASCAL>