implement PS_USERSTYLE handling - obviously not correct ;)
hans at breuer.org
Fri Apr 10 04:31:28 CDT 2009
thanks for looking into this.
At 06.04.2009 15:03, Damian Dixon wrote:
> Hi Hans,
> I have run the patch against my application and the line-styles draw as far
> as I can tell are the same as on Windows when a single line segment where
> the pixel width of one is used.
> However when a polyline is drawn the dash style does not get drawn
> correctly. There seems to be an issue with repeat of the style when the
> pixel width of the line is increased. It looks like the style gets
> multiplied up.
The scaling with linestyle is intentionally and at least with my (extended)
test it seems to be. I've now run two versions of Dia 0.97 on three
platforms. The second screenshot at http://hans.breuer.org/dia/dia-wine.htm
shows my standard render test with wine, X11 and win2k side by side.
> I've not looked too deeply into this, however it looks like all pen styles
> are affected by the requested line width.
Yes, look at the third last line of the patch. The line pattern is scaled
by the line width for PS_ALTERNATE and PS_USERSTYLE.
> I also have an issue with the standard styles as they are defined as I
> belive they are not correct. I'm comparing on a pixel to pixel basis between
> Windows and Wine. However your patch does not affect this. I just wished to
> make you aware. When I have a sample to demonstrate this I will raise a bug
As simple test program showing the different line styles would certainly help.
> I've made some additional comments below on the patch and on the platforms
> supporting PS_USERSTYLE.
Yes, as I said: supported for all NT based versions; not supported at all
for win9x versions. IIRC even the normal PS_(DASH)?(DOT)* are limited there.
> In addition there is also the odd even count for the bits that needs to be
> dealt with. However in most cases I doubt this would be an issue.
Are you talking about PS_GEOMETRIC?
> I'm also a bit of a newbie here and am not exactly sure how to advance this
> I can create a simple Win32 test which demonstrates the behaviour I am
> looking for. Of course the Windows results will be a screenshoot which will
> have to be compared against the test running under Wine.
I've done exactly this, although my test program is not simple, but a cross
platfom diagramming tool: http://projects.gnome.org/dia .
> Where would I post this sample? (no guarentees on how long it's going to
> take me as I'm still trying to write a series of alpha blend tests).
I'm not sure for wine. For other projects I work on bugzilla would be the
place to go.
-------- Hans "at" Breuer "dot" Org -----------
Tell me what you need, and I'll tell you how to
get along without it. -- Dilbert
More information about the wine-devel