Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.04.22;
Скачать: CL | DM;

Вниз

Форма больше экрана, как её пустить на печать целиком?   Найти похожие ветки 

 
Alex7 ©   (2007-03-30 08:24) [0]

Форма больше экрана, как её пустить на печать целиком?
PRINT печатает только видимую часть. Что нужно добавить к PRINT?


 
RASkov   (2007-03-30 11:40) [1]

Printer.Canvas.Draw(x, y, GetFormImage);
Printer.Canvas.StretchDraw(Printer.Canvas.ClipRect, GetFormImage);


 
Alex7 ©   (2007-04-02 12:40) [2]

Спасибо большое. Вместе с тем, видимо необходимо что-то ещё задать, т.к.

Printer.Canvas.StretchDraw(Printer.Canvas.ClipRect, GetFormImage);

выдает ошибку Eprinter.


 
{RASkov}   (2007-04-02 16:47) [3]

> [2] Alex7 ©   (02.04.07 12:40)

BeginDoc, EndDoc... Printer+F1


 
Alex7 ©   (2007-04-04 11:48) [4]

> RASkov   (02.04.07 16:47) [3]

Спасибо большое за этот ответ и за другой(дополнение к другому моему вопосу). Вместе с тем
Printer.Canvas.Draw(x, y, GetFormImage);
Printer.Canvas.StretchDraw(Printer.Canvas.ClipRect, GetFormImage);
выводят на принтер чистый лист.
В Help по StretchDraw сказано: Do not use StretchDraw for bitmaps.
В ЛЮБОМ СЛУЧАЕ СПАСИБО ЗА ВНИМАНИЕ К НОВИЧКАМ!


 
{RASkov}   (2007-04-04 14:36) [5]

> выводят на принтер чистый лист.

Незнаю, вот сейчас у себя проверил:
procedure TForm1.Button1Click(Sender: TObject);
begin
 Printer.BeginDoc;
 Printer.Canvas.StretchDraw(Printer.Canvas.ClipRect, GetFormImage);
 Printer.EndDoc;
end;

Все печатает. А что у тебя на форме? Не WebBrowser?


 
Alex7 ©   (2007-04-05 13:18) [6]

Нет, не WebBrowser. На форме  DBGrid-ы.
procedure TForm1.Button1Click(Sender: TObject);
begin
Printer.BeginDoc;
Printer.Canvas.StretchDraw(Printer.Canvas.ClipRect, GetFormImage);
Printer.EndDoc;
end;

выводят на принтер чистый лист.

Одно спасение :Clipboard.Assign(GetFormImage);
Берет в Clipboard.
Но печатать через Clipboard на столько криво, кривее не бывает.


 
{RASkov}   (2007-04-05 15:48) [7]

> [6] Alex7 ©   (05.04.07 13:18)

Странно.... покажи полностью свой код, или попробуй на новом проекте еще раз вариант из [5]. Накидай на форму разных контролов и на одну из кнопок напиши обработчик из пятого поста... Опять чисто? Какой принтер? Какие его параметры? Вообщем фик знает у меня на струйнике S100 с параметрами по умолчанию все прекрасно распечатывается...
Можешь кинуть на тестовую форму Image и на одной из кнопок написать Image.Canvas.StretchDraw(Image.Canvas.ClipRect, GetFormImage); Что получилось?


 
{RASkov}   (2007-04-05 15:50) [8]

> и на одной из кнопок написать

Всысле реализацию обработчика OnClick; ;)


 
{RASkov}   (2007-04-05 15:50) [9]

> Всысле

*Всмысле
не мой день :(


 
Alex7 ©   (2007-04-05 17:01) [10]

In DesignTime
1.Для формы Form1, которая по умолчанию, задал:
Font.Charset = Russian_charset,
Font.Color = clWinowText(уже был по умолчанию),
Font.Name = Times New Roman
Font.Size = 14

2.Interface
uses ..., Printers;
 
3.Положил Lable1 и Button1:
Lable1.Caption = "Печать"

procedure TForm1.Button1Click(Sender: TObject);
begin
 Printer.BeginDoc;
 Printer.Canvas.StretchDraw(Printer.Canvas.ClipRect, GetFormImage);
 Printer.EndDoc;
end;

RunTime: OnClick - чистый лист бумаги из принтера.
Принтер HP Laser Jet 1018 Параметры принтера по умолчанию. К принтеру раньше вопросов не было.
Windows XP SP1, Delphi Version7 (Build 4.453)
Подробнее описать не сумею.
Пожалуй эту тему пора закрывать. Всем спасибо!



Страницы: 1 вся ветка

Текущий архив: 2007.04.22;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.045 c
1-1172572305
Darth Avenger
2007-02-27 13:31
2007.04.22
Печать на необычном принтере


6-1162023817
Sinkler
2006-10-28 12:23
2007.04.22
VPN соеденение


15-1175140245
Карелин Артем
2007-03-29 07:50
2007.04.22
Подскажите софт для скачивания сайтов целиком.


15-1175207940
рожке
2007-03-30 02:39
2007.04.22
intel d945 plrn не выключается


2-1175561133
SerJaNT
2007-04-03 04:45
2007.04.22
Присвоить событию свою процедуру