Hi Manuel, Manuel Brnjic <[EMAIL PROTECTED]> wrote on 01/18/2008 03:03:31 PM:
> Okay, how can i manipulate the viewBox attribute while my application is > running? document.getRootElement().setAttributeNS(null, "viewBox", newViewBox); > --> so that i don't have to reload the SVG However... When you do anything to modify the 'width' and 'height' of the SVG element (which modifying the viewBox does). Batik will rebuild the _entire_ graphics subtree from scratch. We do this to support exactly this case (where some attribute uses percentages) however this is obviously very expensive compared with tracking elements that depend on width and height directly and only updating those. So I'm not sure how good the performance will be here. > > Bruce Rindahl schrieb: > > Manuel > > Yes this appears to be the problem. If you manipulate the viewBoxattribute > > it will work. You are manipulating a transform attribute inside the > > viewBox. > > Bruce > > > > -----Original Message----- > > From: Manuel Brnjic [mailto:[EMAIL PROTECTED] > > Sent: Thursday, January 17, 2008 3:33 PM > > To: [email protected] > > Subject: Re: Line Thickness of a SVG-Worldmap > > > > Maybe it depends on my zoom-Strategie, that the setting of > > stroke-width="0.1%" doesn't work? > > > > Here is my zooming-snippet: > > > > Dimension size = svgCanvas.getSize(); > > > > // Zoom factor > > float scaleX = size.width / (float)dx; > > float scaleY = size.height / (float)dy; > > float scale = (scaleX < scaleY) ? scaleX : scaleY; > > > > // Zoom translate > > AffineTransform at = new AffineTransform(); > > at.scale(scale, scale); > > at.translate(-xStart, -yStart); > > > > at.concatenate(svgCanvas.getRenderingTransform()); > > svgCanvas.setRenderingTransform(at); > > > > Manuel Brnjic schrieb: > > > >> Yeah! That's pretty nice with setting a % value for stroke-width. > >> But i have a Problem, if i zoom in, the stroke-width is getting bigger > >> and bigger (as i have it before), so the % solution doesn't help, and > >> i dont know why =( > >> > >> i have set: stroke-width="0.1%" (a little bit bigger than 0.01%) > >> it shows me the stroke with right thickness, but when i zoom into my > >> world map (only coastlines) the stroke-width dousn't seem to be 0.1% > >> (its bigger), maybe something isn't right with the viewbox > >> (viewbox-transform)? > >> > >> Bruce Rindahl schrieb: > >> > >>> Another approach is to use a % value in the stroke-width attribute of > >>> the > >>> SVG. For example, if you specify stroke-width="0.01%" then the line > >>> width > >>> will always be the viewBox width * 0.0001 and will resize when ever > >>> the view > >>> box changes. > >>> Bruce Rindahl > >>> > >>> > >>> > >>>> yes, you could listen to eventlisteners: e.g. SVGZoom and/or > >>>> SVGResize and > >>>> adopt the stroke-width using the DOM and scripting or Java. It would > >>>> help > >>>> if you centrally specify the stroke-width (e.g. in a parent group) > >>>> in your > >>>> original SVG and not for each element. That way you only have to change > >>>> the stroke-width once. > >>>> > >>>> > >>> > >>> > >>>> Andreas > >>>> > >>>> > >>> > >>> > >>>>> Hello! > >>>>> > >>>>> I have loaded a Worldmap (in SVG Format) into a JSVGCanvas. > >>>>> The map has transparent background and black contour of the > >>>>> Continents. > >>>>> > >>>>> Is it possible to decrease the thickness of the contour with Batik? > >>>>> Because > >>>>> i need it to make the contour-thickness thin when i zoom in > >>>>> > >>>>> > >>>>> > >>> > >>> > >>> > >>> --------------------------------------------------------------------- > >>> To unsubscribe, e-mail: [EMAIL PROTECTED] > >>> For additional commands, e-mail: [EMAIL PROTECTED] > >>> > >>> > >>> > >>> > >> > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] >
