Chciałbym powiększyć/pomniejszyć plik SVG w javie. Chciałbym to zrobić z programu i nie mogę znaleźć sposobu.

Wiem, że można przybliżać/oddalać za pomocą myszy lub klawiatury, ale nie tego szukam. Jestem nowy w javie (2 tygodnie nauki) i prawdopodobnie istnieje proste rozwiązanie mojego problemu, ale nie mogę go znaleźć.

Czy ktoś może mi pomóc?

2
Invader Zim 12 lipiec 2011, 15:31

2 odpowiedzi

Najlepsza odpowiedź

Aby poprawnie powiększyć/pomniejszyć svg w javie, musisz użyć

AffineTransform at = new AffineTransform(); 
at.scale(X,Y); 
svgCanvas.setRenderingTransform(at, true);

Pamiętaj, że potrzebujesz również viewbox w swoim pliku XML svg.

1
graham.reeds 13 lipiec 2011, 12:52

Myślę, że chcesz wywołać setRenderingTransform na swoim komponencie JSVGCanvas. Metoda przyjmuje AffineTransform i wartość logiczną, która mówi, czy chcesz przerysować natychmiast.

0
MPG 12 lipiec 2011, 16:46
Napisałem tak: AffineTransform at = new AffineTransform(); w.tłumacz(5,5); w skali (2,2); svgCanvas.setRenderingTransform(at, true); Ale to nic nie dało. Czy robię coś źle?
 – 
Invader Zim
12 lipiec 2011, 16:56
Znalazłem rozwiązanie, potrzebny widok w svg. Tanks, nie mógłbym tego zrobić bez ciebie. :D
 – 
Invader Zim
13 lipiec 2011, 12:16