http://bugs.winehq.org/show_bug.cgi?id=24653
Summary: Builtin GdiPlus doesn't draw lines equally to native GdiPlus Product: Wine Version: 1.3.4 Platform: x86 OS/Version: Linux Status: UNCONFIRMED Severity: major Priority: P2 Component: gdiplus AssignedTo: wine-bugs@winehq.org ReportedBy: boreno@gmail.com
Created an attachment (id=31163) --> (http://bugs.winehq.org/attachment.cgi?id=31163) Sourcecode that draws GdiPlus pixel-perfection tests. Image that shows tests drawn using native and builtin GdiPlus.
Lines are off by 1 pixel at either start or end position depending on drawing operation. Image and source code attached. Marked with severity major since it ruins pixel-perfection for UI components developed to rely on GdiPlus. In other words, it looks too ugly to be released to customers.
http://bugs.winehq.org/show_bug.cgi?id=24653
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, source, testcase Severity|major |minor
http://bugs.winehq.org/show_bug.cgi?id=24653
Ludvig A. Norin boreno@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #31163|0 |1 is obsolete| |
--- Comment #1 from Ludvig A. Norin boreno@gmail.com 2010-10-07 05:06:12 CDT --- Created an attachment (id=31166) --> (http://bugs.winehq.org/attachment.cgi?id=31166) Image that show the attached test case using both builtin and native GdiPlus. Notice lines, borders and fills that are incorrect.
http://bugs.winehq.org/show_bug.cgi?id=24653
--- Comment #2 from Ludvig A. Norin boreno@gmail.com 2010-10-07 05:08:40 CDT --- Created an attachment (id=31167) --> (http://bugs.winehq.org/attachment.cgi?id=31167) Test cases for GdiPlus pixel perfection; lines, filled and outlined rectangles, gradients
This testcase was derived from a larger codebase. It may contain minor bugs that are easily fixed as a result of the cleanup from the original code.
http://bugs.winehq.org/show_bug.cgi?id=24653
--- Comment #3 from Vincent Povirk madewokherd@gmail.com 2010-10-07 11:39:42 CDT --- I sent a test for this sort of thing once, and it was rejected.
http://bugs.winehq.org/show_bug.cgi?id=24653
Dan Kegel dank@kegel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dank@kegel.com
--- Comment #4 from Dan Kegel dank@kegel.com 2010-10-18 05:24:08 CDT --- Ludvig says the affected app is HansaWorld Enterprise.
http://bugs.winehq.org/show_bug.cgi?id=24653
--- Comment #5 from Vincent Povirk madewokherd@gmail.com 2010-11-09 14:44:53 CST --- This stuff needs a rewrite anyway due to SetPixelOffsetMode and a general need to render things in software in many cases (including while smoothing is enabled).
There is so much work to do in gdiplus that I can't justify taking the time to squint at pixels and your code and try to figure out what's going on. If you want to write simple, automated test cases (preferably in the form of a wine patch that edits the test suite) that illustrate specific problems, I might have a go at fixing them.
http://bugs.winehq.org/show_bug.cgi?id=24653
Emerson Prado emerson.prado.eng@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1
--- Comment #6 from Emerson Prado emerson.prado.eng@gmail.com 2011-02-07 05:50:57 CST --- *** This bug has been confirmed by popular vote. ***
http://bugs.winehq.org/show_bug.cgi?id=24653
Joerg Schiermeier newsletter@Schiermeier-Software.de changed:
What |Removed |Added ---------------------------------------------------------------------------- Blocks| |21975
http://bugs.winehq.org/show_bug.cgi?id=24653
Vincent Povirk madewokherd@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Blocks|21975 |
http://bugs.winehq.org/show_bug.cgi?id=24653
--- Comment #7 from butraxz@gmail.com 2013-08-05 12:33:08 CDT --- This ticket has not been updated for over 900 days. Development recommends to check the status on your bug every release or two and let to be known if the bug is still present. If not, mark it fixed.
Is this still an issue with 1.7.0 or higher ?
http://bugs.winehq.org/show_bug.cgi?id=24653
--- Comment #8 from Vincent Povirk madewokherd@gmail.com 2013-08-05 13:11:07 CDT --- No one has done any work with this in mind, so of course it's still present.
https://bugs.winehq.org/show_bug.cgi?id=24653
ldv1452@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |ldv1452@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=24653
C. Leu kle@bluewin.ch changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |kle@bluewin.ch
--- Comment #9 from C. Leu kle@bluewin.ch --- Yep, we have now the year 2021 and I can confirm the mentioned "Lines are off by 1 pixel at either start or end position depending on drawing operation" behavior also for Wine 6.13 / 6.14 in conjunction with Paint.NET 3.5.11.
Additionally the drawing operation also "lags" noticeable when the built-in gdiplus.dll is used. This is not true for the native gdiplus.dll from Windows 7 which works as it should. However, unfortunately Paint.NET 3.5.11 crashes after some time reproducible when the native gdiplus.dll is used. So this is not an usable workaround.
My Paint.NET 3.5.11 related report can be found here: bug 51561
It would be really great if this built-in gdiplus matter could be somewhat improved during the next 10 years. ;-)
https://bugs.winehq.org/show_bug.cgi?id=24653
--- Comment #10 from Jactry Zeng jactry92@gmail.com --- It seems that bug 33410 is a duplication of this bug?
https://bugs.winehq.org/show_bug.cgi?id=24653
--- Comment #11 from Esme Povirk madewokherd@gmail.com --- I don't see any obvious connection between them.
https://bugs.winehq.org/show_bug.cgi?id=24653
Bartosz gang65@poczta.onet.pl changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |gang65@poczta.onet.pl
--- Comment #12 from Bartosz gang65@poczta.onet.pl --- Could you please provide compiled application for pixel perfection test cases?
https://bugs.winehq.org/show_bug.cgi?id=24653
--- Comment #13 from C. Leu kle@bluewin.ch --- @Bartosz
If you want to test the native gdiplus behavior versus the built-in one then you might look into Paint.NET. Regarding Version 3.5.11 I can confirm that this works quite good with Wine (and Windows XP setting). All newer Paint.NET versions seems to have still problems because of some not implemented .NET functions. (You can verify this also with the Paint.NET 3.5.11 by setting the Windows version to Vista, 7 or newer).
And by the way, since Wine 8.x the situation has improved, - the lag seems to be reduced. But the "Lines are off by 1 pixel at either start or end position depending on drawing operation" problem is still present I think.
https://bugs.winehq.org/show_bug.cgi?id=24653
--- Comment #14 from Bartosz gang65@poczta.onet.pl --- @C. Leu Unfortunately I was not able to install Paint.NET 3.5 (Paint.NET 3.0 is working perfectly without lag).
Could you run Paint.NET 3.5 with WINEDEBUG, and attach logs from it:
WINEDEBUG=+timestamp,+gdiplus wine PaintDotNet.exe
https://bugs.winehq.org/show_bug.cgi?id=24653
Julian Rüger jr98@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |jr98@gmx.net
https://bugs.winehq.org/show_bug.cgi?id=24653
Esme Povirk madewokherd@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |madewokherd@gmail.com