Предпросмотр перед печатью
Каким образом можно сделать предпросмотр перед печатью? Проблема в том, что для TPrinter::Canvas не работает метод CopyRect. Каким еще образом можно скопировать один TCanvas на другой?
предпросмотр делается просто отрисовкой не на канву принтера, а на какую-нибудь другую канву, например на канву PaintBox... делаешь окно, в нем ставишь PaintBox, а когда надо сделать предпросмотр показываешь это окно и рисуешь на канву PaintBox-a. а насчет CopyRect... что-то странно... вроде работало все... а вообще можно еще наверно воспользоваться функцией Draw()
Цитата:
Originally posted by Relax
предпросмотр делается просто отрисовкой не на канву принтера, а на какую-нибудь другую канву, например на канву PaintBox... делаешь окно, в нем ставишь PaintBox, а когда надо сделать предпросмотр показываешь это окно и рисуешь на канву PaintBox-a. а насчет CopyRect... что-то странно... вроде работало все... а вообще можно еще наверно воспользоваться функцией Draw()
предпросмотр делается просто отрисовкой не на канву принтера, а на какую-нибудь другую канву, например на канву PaintBox... делаешь окно, в нем ставишь PaintBox, а когда надо сделать предпросмотр показываешь это окно и рисуешь на канву PaintBox-a. а насчет CopyRect... что-то странно... вроде работало все... а вообще можно еще наверно воспользоваться функцией Draw()
CopyRect работает, но не с принтерами, вот фраза из хелпа :
Цитата:
C++Builder canvases use device-dependent bitmaps to implement the Draw, StretchDraw, or CopyRect methods. Because of this, you can’t use these methods with most printers.
Насчет отрисовки просто на другой канвас, то наверное так и поступлю.