Форум: "Система";
Текущий архив: 2003.06.12;
Скачать: [xml.tar.bz2];
ВнизПечать на принтер через канву Найти похожие ветки
← →
Seb_Kost (2003-04-08 14:54) [0]У меня есть график, созданный компонентой DBChart.
Данные в этот график поступают по мере сбора данных с приборов,
после или до занесения данных в таблицу мне необходимо их распечатать на принтере, заправленного рулонной бумаге.
Вот такая маленькая проблема.
← →
Севостьянов Игорь (2003-04-08 15:42) [1]А в чем собственно проблема ? (class TPrinter ?)
← →
Seb_Kost (2003-04-09 07:36) [2]А как скопировать в канву часть графика. И какая функция посылает на печать, и какой параметр отвечает за "перемотку листа"?
← →
raiv (2003-04-09 09:42) [3]1. Зачем тебе копировать канву?
procedure TMainForm.FilePrint(Sender: TObject);
var
OldOrientation:TPrinterOrientation;
tmpH,TmpW, tmpWMargin, tmpHMargin: Longint;
begin
if PrintDialog.Execute then
Screen.Cursor:=crHourGlass;
OldOrientation:=Printer.Orientation;
Printer.Orientation:=poLandscape;
try
Printer.BeginDoc;
try
DBChart1.PrintResolution:=0;
//Расчет горизонтальных полей
tmpW:=Printer.PageWidth;
tmpWMargin:=Round(5.0*tmpW/100.0); //<--5% поле
tmpW:=tmpW-2*tmpWMargin; //левое и правое поля
tmpW:=tmpW div 2; // слева и справа высота
//Расчет вертикальных полей
tmpH:=Printer.PageHeight;
tmpHMargin:=Round(5.0*tmpH/100.0); //<--5% поле
tmpH:=tmpH-2*tmpHMargin; //верхнее и нижнее поле
//tmpH:=tmpH div 2;
DBChart1.PrintPartial(Rect(0,352,tmpWMargin+2*tmpW,tmpHMargin+tmpH));
Printer.EndDoc;
except
on Exception do
Begin
Printer.Abort;
Printer.EndDoc;
Raise;
end; //begin
end; //except
finally
Printer.Orientation:=OldOrientation;
Screen.Cursor:=crDefault;
end; //finally
end; //procedure
2. Вариан: используй ChartPreview(form1,Chart) и все!
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2003.06.12;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.008 c