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

Вниз

Масштабирование Canvas при печати.   Найти похожие ветки 

 
siriusP   (2004-04-15 17:32) [0]

Совсем выбился из сил. Рисую на принтере канву TPanel, на которой располагаются контролы.
На принетр выходи в очень уменьшенном виде. Как все это дело масштабировать?

 Printer.BeginDoc;
 Panel1.PaintTo(Printer.Canvas, 10, 10);
 Printer.EndDoc;
Буд очень благодарен.


 
Mihey ©   (2004-04-15 18:31) [1]

Скопируй изображение панели через TPrinter.Canvas.CopyRect в отдельный TBitmap, а затем выведи его на TPrinter.Canvas через StretchDraw.


 
siriusP   (2004-04-15 19:30) [2]

Попробовал так:
 tmpBitmap:= TBitmap.Create;
 try
   tmpBitmap.Width:= Panel1.Width;
   tmpBitmap.Height:= Panel1.Height;
   Panel1.PaintTo(tmpBitmap.Canvas, 0, 0);
   Printer.Canvas.StretchDraw(Rect(10,10,1500,800), tmpBitmap);
 finally
   tmpBitmap.Free;
 end;

При этом tmpBitmap сжимается в Rect не пропорционально, буквы искажаются.
Что-нибудь можно с этим сделать?



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

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

Наверх




Память: 0.47 MB
Время: 0.029 c
1-1082117419
Serge
2004-04-16 16:10
2004.05.02
DecimalSeparator !! ?????


14-1081608838
SergeySh
2004-04-10 18:53
2004.05.02
Диск к книге DirectX (графика в проектах), автор - Михаил Краснов


8-1074610714
Laumer
2004-01-20 17:58
2004.05.02
Как выключить другие звуки и вывести свой


1-1082026447
Dentist
2004-04-15 14:54
2004.05.02
Насчет CoolTrayIcon


1-1082024160
gauss
2004-04-15 14:16
2004.05.02
Подскажите Зачем применяется конструкция приведенная ниже