|
View:
New views
8 Messages
—
Rating Filter:
Alert me
|
|
|
Help tracing a rendering problem in JSVGCanvasHi, all!
I have an application with a JSVGCanvas inside a JScrollPane. Some users are reporting rendering problems that I cannot replicate in any of my machines. No exception is thrown, but the lowest part of my svg is badly rendered. I have some images to show you the problem. Can I attach them? I have tried increasing the heap size, turning on and off double buffering, using batik 1.6 and 1.7, and the only solution is going back to JRE 1.6.0_07. I know they made a lot of changes in java2d since 6u10. Is there any way to get a trace of what Batik is doing? Thanks in advance. |
|
|
Re: Help tracing a rendering problem in JSVGCanvasHi ahhahh,
> No exception is thrown, but the lowest part of my svg is badly rendered. I > have some images to show you the problem. Can I attach them? Yes, attaching them would be valuable, specially if "images" refer to reduced SVG test cases [1] (and not to actual screen-shots of the unexpected rendering). Nevertheless, attaching at least one screenshot with the broken rendering is also recommended in order to compare with other environment results. ;-) > [...] the only solution is going back to JRE > 1.6.0_07. I know they made a lot of changes in java2d since 6u10. Yes, I recall something about rendering changes around those Java updates. > Thanks in advance. Hope this helps, Helder [1] http://webkit.org/quality/reduction.html --------------------------------------------------------------------- To unsubscribe, e-mail: batik-users-unsubscribe@... For additional commands, e-mail: batik-users-help@... |
|
|
Re: Help tracing a rendering problem in JSVGCanvasHi,
My svg files are quite big (85 KBs), created with CorelDraw. They are static, just some boxes and text. I attach 2 gif files, one showing the bad rendering (almost always the problem arises after resizing), and the other with how it should look when the rendering is ok. The yellow boxes are not in the svg; they are JTextFields added to the same JSVGCanvas (and they are correctly resized). I have over 3000 users with no problems, and 6 which suffer this bad rendering, but 4 of them have arised in the last two weeks, so I'm afraid the number will increase in the future. Thanks for your help. Aurora batik+error.GIF batik+good.GIF |
|
|
Re: Help tracing a rendering problem in JSVGCanvasHi Aurora,
> My svg files are quite big (85 KBs), created with CorelDraw. They are > static, just some boxes and text. Yet, creating a very simple example which shows that would be valuable. > The yellow boxes are not in the svg; they are JTextFields added to the same > JSVGCanvas (and they are correctly resized). I'm not sure if this can be the source of the problem: mixing Swing widgets to a JSVGCanvas. The screen-shot "batik+error.GIF" suggests that there are being scroll synchronization problems for the Swing widgets, the SVG itself seems fine...? But my knowledge on that matter is pretty rookie... > I have over 3000 users with no problems, and 6 which suffer this bad > rendering, but 4 of them have arised in the last two weeks, so I'm afraid > the number will increase in the future. Gathering more information about the users with troubles would help: * Operating system; * Java version; * Batik version (I can imagine it will be the same for all users but...); * Other information you may find relevant. Even if it turns out not to be relevant for the problem, sharing the specific environment which triggers the symptoms can be useful for other users which may also suffer from similar issues. ;-) > Thanks for your help. Hope this helps, --------------------------------------------------------------------- To unsubscribe, e-mail: batik-users-unsubscribe@... For additional commands, e-mail: batik-users-help@... |
|
|
Re: Help tracing a rendering problem in JSVGCanvasHi AhhAhh,
ahhahh <ahhahh@...> wrote on 10/01/2009 04:26:12 AM: > My svg files are quite big (85 KBs), created with CorelDraw. They are > static, just some boxes and text. Those aren't big ;) Is the JSVGCanvas set to be static? I'm fairly sure it is. It looks like the tile cache is getting messed up. The simplest thing to try would be to set the canvas to ALWAYS_DYNAMIC. This will switch away from the tile cache renderer to the dynamic renderer (which is actually much simpler). > I attach 2 gif files, one showing the bad rendering (almost always the > problem arises after resizing), and the other with how it should look when > the rendering is ok. The bottom right most tile (the tiles are 256x256 pixels) this appears to be being 'reused' for any 'new' tiles that needed rendering due to the scroll. If you want to try and work the problem from your end it's probably down in the batik.ext.awt.image.rendered.AbstractTiledRed. > I have over 3000 users with no problems, and 6 which suffer this bad > rendering, but 4 of them have arised in the last two weeks, so I'm afraid > the number will increase in the future. Do you know what OS they are on? |
|
|
Re: Help tracing a rendering problem in JSVGCanvasThat's a good point. I have the setDocumentState(JSVGComponent.ALWAYS_DYNAMIC); commented im the code, so I guess Batik will detect my svg as static. The problem is I can't replicate the error, as the rendering is perfect in every machine I have tested. I've been trying to find a way to get detailed Batik logs without recompiling the code with no success. They are all on Windows XP (as the vast mayority of my users), some with SP2 and some with SP3. They all began having problems when they updated the JRE past version 6u10 (even to the newest 6u16), and all of them resolved the problem going back to 6u7. This is an example of one of my svg. I have reduced it by deleting most of the lines and text. D-1A-R00v05112801.svg I'm gonna try the ALWAYS_DYNAMIC hint. It may be a few days/weeks before I get some feedback from my users, as they are reluctant to install/reinstall JREs if not really necesary for their needs. Or maybe I'm 'lucky' and find another problematic user soon. ;) Thanks a lot to both. Aurora |
|
|
Re: Help tracing a rendering problem in JSVGCanvasHi Ahhahh,
ahhahh <ahhahh@...> wrote on 10/01/2009 08:32:03 AM: > The problem is I can't replicate the error, as the rendering is perfect in > every machine I have tested. So I just looked at the release notes for 6u10. This is the release they enabled the Direct3D rendering pipeline. That pipeline is only used for Nvidia and ATI GPU's (not Intel). So you might need a system with one of those to reproduce the problem. They also seem to indicate that the card drivers must be up to date (which some users may not be). Additionally it indicates that you can disable the D3D pipe by passing '-Dsun.java2d.d3d=false' when starting the JVM. > I've been trying to find a way to get detailed Batik logs without > recompiling the code with no success. Batik was written before the various Java LOG API's were developed. So it doesn't have an easy way to enable logging. Various modules have 'DEBUG' variables that can be manually set to true so it generates additional System.out's. > This is an example of one of my svg. I have reduced it by deleting most of > the lines and text. > http://www.nabble.com/file/p25696843/D-1A-R00v05112801.svg > D-1A-R00v05112801.svg I now doubt the SVG content has much to do with the problem. > I'm gonna try the ALWAYS_DYNAMIC hint. It may be a few days/weeks before I > get some feedback from my users, as they are reluctant to install/reinstall > JREs if not really necesary for their needs. Or maybe I'm 'lucky' and find > another problematic user soon. ;) Hopefully the above info will help you reproduce and or get a better work around to the issue. Good luck. |
|
|
Re: Help tracing a rendering problem in JSVGCanvasHi, Thomas!
Thanks, thanks, thanks!!! As you suggested, the problem is solved disabling the D3D pipe. Thanks a lot again. :) Aurora
|
| Free embeddable forum powered by Nabble | Forum Help |