On Wed, Apr 11, 2012 at 10:23, Stepa Nick hired777@gmail.com wrote:
Hello. I have following code:
Bitmap * bmp = new Bitmap(500, 500, PixelFormat32bppARGB); { Graphics gr(bmp);
//FIRST LINE PointF* local1PointF = new PointF(17.823631, 89.429169); PointF* local2PointF = new PointF(17.823631, 87.577080);
//SECOND LINE PointF* local3PointF = new PointF(14.933444, 89.429169); PointF* local4PointF = new PointF(14.933444, 87.577080); Pen * pen = new Pen(Color(255, 0, 0), 0.1); gr.SetPageUnit(UnitMillimeter);
gr.SetPixelOffsetMode(PixelOffsetModeHalf); //PROBLEM!
gr.DrawLine(pen,(*local1PointF),(*local2PointF)); gr.DrawLine(pen,(*local3PointF),(*local4PointF)); }
When I run it without SetPixelOffsetMode i get equal line, but with it line are not identical(first line is longer). I explore "dlls/gdiplus/graphics.c" and i find this comment: "/* FIXME: Pixel offset mode is not used anywhere except the getter/setter. */". So, I what to understand why I have different images(how pixeloffset affect on drawing lines)? I try to run windbg, run `WINEDEBUG=gdiplus,gdi,ddraw,graphics wine ./my.exe`, but analyzing output didn`t give my any results. Thanks!
Run with `WINEDEBUG=loaddll wine my.exe` and ensure that builtin gdiplus is being used.