» Стандартная печать содержимого компонента Borland Delphi. . . Блог программистов


Блог программистов






20076 Апр

Стандартная печать содержимого компонента

например, Grid / DbGrid (далее Matrix) нужно заполнить значениями из Table..
затем :

with Printer do
begin
if Printing then exit;
PrinterIndex:= -1;
BeginDoc;
Onprint:= true;
Matrix.Color:= clWhite; // экономим чернила
Matrix.Repaint;
zoom:= PageWidth / (2*Matrix.Width);
zoom2:= PageHeight / (2*Matrix.Height);
if zoom2 на полстраницы
with canvas do
begin
Font.Size:= 14;
Font.Name:= 'Courier New';
TextOut((PageWidth-Textwidth(str)) div 2, 12, str);
StretchBlt(Handle, (PageWidth - wdt) div 2, 25+TextHeight(str), Wdt, Hgt,
Matrix.Canvas.handle, 0, 0, Matrix.Width, Matrix.Height-5, SrcCopy);
end;
EndDoc;
Onprint:= false;
Matrix.Color:= $00AABBCC;
Matrix.Repaint;
if aborted then MessageDlg('Печать была прервана!', mtInformation, [mbOK],0);
end;

Комментарии

  1. sefiros
    Сентябрь 17th, 2007 | 11:40

    этот код толька для Grid / DbGrid или для текстового файла тоже?

  2. Январь 7th, 2008 | 23:05

    вывести таблицу StringGrid на печать — http://programmersforum.ru/showthread.php?t=12281

  3. Серый
    Август 25th, 2008 | 21:28

    А для среды Delphi dotNet Framework какой нужен код, чтобы распечатать Panel c размещеными на ней несколькими PictureBox&