xmlgraphics-batik-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "William Huang" <shu...@xperient.net>
Subject How can I implement Scrollbar functionality with Batik?
Date Sun, 12 Jan 2003 16:30:38 GMT
Dear Thomas,

I tried to implement Scrolling functionality with multiple JSVGCanvas components in a window.
But I have the following problems:

1. The scrolling is slow even for small to medium size SVG file. When I scroll, the SVG display
distorted and took noticeable delay to stabilize.

2. And for the scrolling to work, I need to know information about the actual SVG size and
display scrollbar if the SVG size is larger than the current window size instead of enlarging
the current window or zooming the SVG display. That is, I need is to display the part that
can be accommodated in the designated window area and a scrollbar if necessary. The current
Java scrollpane implementation only shows scrollbar when I resize the window to a smaller

Batik does differently for directly loaded file and loaded file as linked image. The directly
loaded file will be clipped if it does not cause the window to resize to its size (Specify
width=100% and height=100% but do not specify the viewBox attribute). For loaded file as linked
image, when I load another SVG file with width="10.278in", height="9.167in" using image tag
to an area of the currently displayed SVG file, and specify size (800,600) for the image node,
then I get 800 when I call getWidth of this image node. It seems that the image is not clipped
although the image only show partly since I can use mouse events to see other parts that are
not initially displayed in that area (offscreen image is not clipped?). Could you tell me
how I get the correct image information so that the scrollbar will be displayed when necessary?

For the Javascript approach, I also have questions. From the mailing list, I know currentScale,
onzoom and currentTranslate are on the to do list of Batik. Does onscroll work already? If
I can resolve the no.2 question, maybe the only one I need to extend is onscroll event processing
since I can use mousedown and mouseup event together with onscroll to implement scrolling.
Onzoom is not of my interest. Since my implementation will include several scrollbars in a
window instead of just for the root element, Adobe currentScale of root element is also not
of my interest. Could you give me some advice on how to implement onscoll? Thank you very

Have a good weekend.

With best regards,

View raw message