Home » U++ Library support » Draw, Display, Images, Bitmaps, Icons » Draw::DrawImageOp optimization bug
Re: Draw::DrawImageOp optimization bug [message #19350 is a reply to message #19349] |
Fri, 28 November 2008 10:23 |
Tom1
Messages: 1216 Registered: March 2007
|
Senior Contributor |
|
|
I wrote a simple test case that can be used to visualize the problem easily when printing to e.g. Microsoft XPS Document Writer.
#include <CtrlLib/CtrlLib.h>
using namespace Upp;
class Testcase2 : public TopWindow{
public:
typedef Testcase2 CLASSNAME;
Testcase2(){
Sizeable();
MinimizeBox();
MaximizeBox();
BackPaint();
}
void drawimage(Draw &draw){
Size sz;
if(draw.IsPrinter()) sz=draw.GetPagePixels();
else sz=GetSize();
ImageBuffer ib(sz.cx,sz.cy);
for(int y=0;y<sz.cy;y++){
for(int x=0;x<sz.cx;x++){
ib[y][x]=(RGBA)Color((16*y/sz.cy)<<4,(16*y/sz.cy)<<4,(16*x/sz.cx)<<4);
}
}
Rect rect=draw.GetClip();
draw.DrawRect(rect,Color(255,255,255));
Image img(ib);
draw.DrawImage(0,0,img);
if(!draw.IsPrinter()){
draw.DrawText(10,10,"Press 'P' to print...",StdFont(),Color(255,255,255));
draw.DrawText(10,30,"(This really drains your ink/toner cartridge, so try e.g. Microsoft XPS Document Writer.)",StdFont(),Color(255,255,255));
}
}
void print(){
PrinterJob *job=new PrinterJob();
if(job){
if(job->Execute()){
Draw &draw=job->GetDraw();
draw.StartPage();
drawimage(draw);
draw.EndPage();
}
delete job;
}
}
virtual void Paint(Draw &draw){
drawimage(draw);
}
bool Key(dword key, int count){
switch(key){
case K_P:
print();
return true;
}
return false;
}
};
GUI_APP_MAIN
{
Testcase2().Run();
}
// Tom
|
|
|
|
|
Draw::DrawImageOp optimization bug
By: Tom1 on Thu, 27 November 2008 13:52
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Fri, 28 November 2008 08:56
|
|
|
Re: Draw::DrawImageOp optimization bug
By: Tom1 on Fri, 28 November 2008 10:23
|
|
|
Re: Draw::DrawImageOp optimization bug
By: rylek on Fri, 28 November 2008 13:15
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Fri, 28 November 2008 13:27
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Fri, 28 November 2008 13:29
|
|
|
Re: Draw::DrawImageOp optimization bug
By: Tom1 on Fri, 28 November 2008 13:54
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Fri, 28 November 2008 14:27
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Fri, 28 November 2008 21:02
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Sat, 29 November 2008 12:54
|
|
|
Re: Draw::DrawImageOp optimization bug
By: Tom1 on Mon, 01 December 2008 11:25
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Mon, 01 December 2008 12:12
|
|
|
Re: Draw::DrawImageOp optimization bug
By: Tom1 on Mon, 01 December 2008 12:49
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Mon, 01 December 2008 12:57
|
|
|
Re: Draw::DrawImageOp optimization bug
By: Tom1 on Mon, 01 December 2008 13:50
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Mon, 01 December 2008 14:25
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Mon, 01 December 2008 13:12
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Mon, 01 December 2008 12:41
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Mon, 01 December 2008 13:14
|
|
|
Re: Draw::DrawImageOp optimization bug
By: Tom1 on Mon, 01 December 2008 14:37
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Mon, 01 December 2008 14:52
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Tue, 02 December 2008 19:15
|
|
|
Re: Draw::DrawImageOp optimization bug
By: Tom1 on Tue, 02 December 2008 21:16
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Tue, 02 December 2008 21:46
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Wed, 03 December 2008 12:14
|
|
|
Re: Draw::DrawImageOp optimization bug
By: Tom1 on Wed, 03 December 2008 15:03
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Wed, 03 December 2008 15:21
|
|
|
Re: Draw::DrawImageOp optimization bug
By: Tom1 on Wed, 03 December 2008 15:36
|
|
|
Re: Draw::DrawImageOp optimization bug
By: Tom1 on Wed, 03 December 2008 17:11
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Thu, 04 December 2008 10:22
|
|
|
Re: Draw::DrawImageOp optimization bug
By: Tom1 on Thu, 04 December 2008 11:07
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Thu, 04 December 2008 11:36
|
|
|
Re: Draw::DrawImageOp optimization bug
By: Tom1 on Thu, 04 December 2008 12:09
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Thu, 04 December 2008 12:36
|
|
|
Re: Draw::DrawImageOp optimization bug
By: Tom1 on Thu, 04 December 2008 13:09
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Thu, 04 December 2008 15:53
|
|
|
Re: Draw::DrawImageOp optimization bug
By: Tom1 on Thu, 04 December 2008 16:07
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Thu, 04 December 2008 17:46
|
|
|
Re: Draw::DrawImageOp optimization bug
By: Tom1 on Fri, 05 December 2008 11:05
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Fri, 05 December 2008 11:20
|
|
|
Re: Draw::DrawImageOp optimization bug
By: Tom1 on Fri, 05 December 2008 12:13
|
|
|
Re: Draw::DrawImageOp optimization bug
By: mirek on Thu, 04 December 2008 10:19
|
Goto Forum:
Current Time: Tue May 21 20:12:53 CEST 2024
Total time taken to generate the page: 0.01221 seconds
|