скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Как напечатать изображение



Используйте приведенный код. И не забудьте включить Printers в список используемых модулей:

Строки, на которые вы должны обратить внимание, справа содержат комментарий // **. Данный код осуществляет корректное масштабирование изображения, в противном случае при печати вы можете получить небольшую иконку. Разрешение принтера больше, чем разрешение вашего дисплея.


procedure AngleTextOut(CV: TCanvas; const sText: string; x, y, angle: integer);
var
  LogFont: TLogFont;
  SaveFont: TFont;

  procedure TForm1.Button1Click(Sender: TObject);
  var
    ScaleX, ScaleY: Integer;
    R: TRect;
  begin
    Printer.BeginDoc; // **
    with Printer do
      try
        ScaleX := GetDeviceCaps(Handle, logPixelsX) div PixelsPerInch;
        ScaleY := GetDeviceCaps(Handle, logPixelsY) div PixelsPerInch;
        R := Rect(0, 0, Image1.Picture.Width * ScaleX,
          Image1.Picture.Height * ScaleY);
        Canvas.StretchDraw(R, Image1.Picture.Graphic); // **
      finally
        EndDoc; // **
      end;
  end;






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook