Delphi World - Как печатать в цвете
Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Как печатать в цвете

Более мощный компьютер глючит быстрее и точнее.

Обычно нет необходимости переводить принтер в режим цветной печати, если он установлен в этот режим. Windows автоматически переведет цветную печать в черно-белую, если принтер не поддерживает цветной печати. Если Вам необходимо программно изменить режим цвета, Вы можете обратится к структуре DevMode драйвера принтера.


uses Printers;

procedure TForm1.Button1Click(Sender: TObject);
var
  Device: array [0..255] of char;
  Driver: array [0..255] of char;
  Port: array [0..255] of char;
  hDMode: THandle;
  PDMode: PDEVMODE;
begin
  with Printer do
  begin
    PrinterIndex := PrinterIndex;
    GetPrinter(Device, Driver, Port, hDMode);

    if hDMode <> 0 then
    begin
      pDMode := GlobalLock(hDMode);
      if pDMode <> nil then
      begin
        pDMode.dmFields := pDMode.dmFields or dm_Color;
        pDMode.dmColor := DMCOLOR_COLOR;
        GlobalUnlock(hDMode);
      end;
    end;

    PrinterIndex := PrinterIndex;
    BeginDoc;
    Canvas.Font.Color := clRed;
    Canvas.TextOut(100,100, 'Delphi World is COOL :)');
    EndDoc;
  end;
end;

Проект Delphi World © Выпуск 2002 - 2017
Автор проекта: Эксклюзивные курсы программирования