salut
je cherche une librairie gpl ou lgpl pour lire les images svg
merci
Version imprimable
salut
je cherche une librairie gpl ou lgpl pour lire les images svg
merci
j'ai pris batik
ma classe principale est une jframe
le layout utilisé est un BorderLayout
j'ai un label à l'ouest et l'est
au centre c'est ma classe ImgSvg
cette classe hérite d'un JPanel
j'ai bien une image qui apparaitCode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 public class ImgSvg extends JPanel{ public JSVGCanvas svgCanvas; public ImgSvg svgCanvas = new JSVGCanvas(){ public void setMySize(Dimension d){ setPreferredSize(d); invalidate(); setSize(d); } }; add(svgCanvas); svgCanvas.setDoubleBufferedRendering(true); setVisible(true);
la quasi totalité des images s'affiche petit, si je redimensionne l'application, l'image est redimensionné mais après une certaine dimension, la redimension ne fonctionne plus. Lorsque je retrécis la fenêtre, l'image garde ses dimensions
je cherche donc à palier ce problème
merci
pourquoi l'image ne prend pas toute l'espace du JPanel?
Génial, je ne savais pas qu'on pouvait faire du vectoriel (avec des images sauvées dans des fichiers svg) facilement en java (sauf bien sûr avec les Graphics2D.draw...()).Citation:
Envoyé par g_rare
D'habitude j'utilise toujour du png-24, qui est (sans doute) le meilleur format bitmap (à part pour les photos, bien sûr), mais en vectoriel, c'est terrible :D
Disons qu'en fait Batik fait la transpositon commandes SVG -> commandes Java2D a ta place.
Ne peux-tu pas essayer de mettre un BorderLayout et d'ajouter ton ImgSvg au centre pour permettre a cette image/panel de prendre tout l'espace de son panel parent (en plus ca devrait te permettre d'eviter de surcharger les methode qui retournent les tailles).
c'est ça que je fais déjà il me sembleCitation:
Envoyé par bouye
Non, le layout par defaut d'un panel est un FlowLayout.Citation:
Envoyé par robert_trudel
Code:
1
2
3 setLayout(new BorderLayout()); add(svgCanvas, BorderLayout.CENTER);
merci beaucoupCitation:
Envoyé par bouye
ça fonctionne