Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3700 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  SVG

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

SVG

n°471684
zizou39
Posté le 30-07-2003 à 10:28:02  profilanswer
 

Quelqu'un sait-il comment introduire le rendu d'un fichier .svg dans une application Java ? :cry:  :cry:

mood
Publicité
Posté le 30-07-2003 à 10:28:02  profilanswer
 

n°471687
chrisbk
-
Posté le 30-07-2003 à 10:32:59  profilanswer
 

ouais :sol:
tu code ton propre renderer svg :sol:
 
ou sinon tu utilises des trucs tout fait genre tinyline mais je sais pas ou y en sont avec le stdart (et pas d'antialiasing) ou batik si tu arrives a y comprendre quelque chose

n°471692
zizou39
Posté le 30-07-2003 à 10:37:08  profilanswer
 

C clair hier j'ai telecharger batik et franchement c'était vraiment la misere.
Faire son propre interpreteur svg ca rique d'etre tendu je pense.
Je vais essaye tinyline
Merci beaucoup :bounce:  :bounce:


Message édité par zizou39 le 30-07-2003 à 10:37:38
n°471703
chrisbk
-
Posté le 30-07-2003 à 10:43:59  profilanswer
 

boaf si t'as droit a java 2 tu devrais pouvoir implanter les trucs de base en 2tps 3mouvements, le plus chiant restant le parse du XML...
 
Apres evidemment si tu veux des anims et tout ca, ca va etre autre hcose :D

n°471711
darklord
You're welcome
Posté le 30-07-2003 à 10:54:50  profilanswer
 

[:blueflag]


---------------
Just because you feel good does not make you right
n°471733
zizou39
Posté le 30-07-2003 à 11:07:12  profilanswer
 

En fait dans mon appli java je dois afficher une carte de france et dessiner certain departement en une couleur selon des chiffres que je prends dans une base de donnée.
J'ai trouve une carte de france en .svg donc je voulais l'introduire a mon appli.
 
Si quelqu'un aurait une autre idée ca m'arrangerait
Peut que quelqu'un a creer le composant JCarteDeFrance
 
 :lol:  :lol:

n°471946
zizou39
Posté le 30-07-2003 à 14:07:30  profilanswer
 

Quelqu'un voit comment résoudre mon probleme ?

n°473030
R3g
fonctionnaire certifié ITIL
Posté le 31-07-2003 à 12:04:57  profilanswer
 

trouve une carte de France en jpeg :D

n°478780
zizou39
Posté le 06-08-2003 à 09:34:45  profilanswer
 

J'ai essaye avec tinilyne. Je ne peux avec ca que visualiser les exemples qui sont fournis avec. Je ne peux pas visualiser la carte de france (.svg) que j'ai telecharger sur le net.
Es ce que tinyline ne connait pas tous les tags ?
Comment faire ?

n°505132
chocoboy
Posté le 02-09-2003 à 14:24:19  profilanswer
 

Avec Cocoon 2 (Batik inclu), les doigts dans le nez  :D  
Ca intéresse personnes ? Bon je sors  :sweat:

mood
Publicité
Posté le 02-09-2003 à 14:24:19  profilanswer
 

n°505302
the real m​oins moins
Posté le 02-09-2003 à 15:39:03  profilanswer
 

chocoboy a écrit :

Avec Cocoon 2 (Batik inclu), les doigts dans le nez  :D  
Ca intéresse personnes ? Bon je sors  :sweat:  

ben si, si tu expliques ;)


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°505657
chocoboy
Posté le 02-09-2003 à 19:40:00  profilanswer
 

C'est donc pour répondre à ta problématique

Code :
  1. En fait dans mon appli java je dois afficher une carte de france et dessiner certain departement en une couleur selon des chiffres que je prends dans une base de donnée.
  2. J'ai trouve une carte de france en .svg donc je voulais l'introduire a mon appli.
  3. Si quelqu'un aurait une autre idée ca m'arrangerait
  4. Peut que quelqu'un a creer le composant JCarteDeFrance


 
Encore faut il que tu puisse installer Cocoon 2. Mais de toute façon ca te permettra de comprendre également le fonctionnement de Batik.
 
Dans Cocoon 2, il faut :
 
Faire un XSL définissant l'aspect de ta carte, avec les paramètres en entrée...
Ci dessous un exemple (incomplet) tout simple qui m'a servi à générer des cartes de visite en ligne par exemple, plaquette.xsl :
 

Code :
  1. <?xml version="1.0" encoding="ISO-8859-1"?>
  2. <xsl:stylesheet
  3. version="1.0"
  4. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  5. xmlns:xlink="http://www.w3.org/1999/xlink"
  6. xmlns="http://www.w3.org/2000/svg"
  7. xmlns:a3="http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/">
  8. <xsl:param name="url_img" />
  9. <xsl:param name="identity" />
  10. <xsl:param name="country" />
  11. <xsl:template match="root">
  12. <svg xmlns="http://www.w3.org/2000/svg"
  13.      xmlns:xlink="http://www.w3.org/1999/xlink"
  14.      preserveAspectRatio="none" mime-type="svg+xml"
  15.    text-rendering="optimizeLegibility"
  16.    width="454" height="374" viewBox="0 0 340 284">
  17.  <defs>
  18.     <g id="object">
  19.       <rect x="0" y="0" width="340" height="142"
  20.         style="fill:rgb(255,255,255);stroke:rgb(0,0,0);stroke-width:1"/>
  21.       <image x="0" y="0" width="340" height="31">
  22.       <xsl:attribute name="xlink:href"><xsl:value-of select="$url_img" />img_01.jpg</xsl:attribute>
  23.      </image>
  24.       <image x="0" y="107" width="340" height="36">
  25.       <xsl:attribute name="xlink:href"><xsl:value-of select="$url_img" />img_02.jpg</xsl:attribute>
  26.      </image>
  27.       <image x="10" y="40" width="25" height="25">
  28.       <xsl:attribute name="xlink:href"><xsl:value-of select="$url_img" />img_03.jpg</xsl:attribute>
  29.      </image>
  30.       <image x="10" y="80" width="25" height="25">
  31.       <xsl:attribute name="xlink:href"><xsl:value-of select="$url_img" />img_04.jpg</xsl:attribute>
  32.      </image>
  33.       <rect x="0" y="0" width="340" height="142"
  34.         style="fill:none;stroke:rgb(0,0,0);stroke-width:1"/>
  35.       <text x="40" y="60" style="fill:rgb(0,0,0);font-size:24;font-family:Arial"><xsl:value-of select="$identity" /></text>
  36.       <text x="40" y="100" style="fill:rgb(0,0,0);font-size:24;font-family:Arial"><xsl:value-of select="$country" /></text>
  37.      </g>
  38.  </defs>
  39.  <g transform="translate(0 142)">
  40.   <use xlink:href="#object" />
  41.  </g>
  42.  <g transform="matrix(-1 3.67382e-016 -3.67382e-016 -1 340 142.5)">
  43.   <use xlink:href="#object" />
  44.  </g>
  45. </svg>
  46. </xsl:template>
  47. </xsl:stylesheet>


 
Dans Cocoon 2, pour approvisionner le XSL avec des données, soit, on crée un fichier XML les contenant, soit on crée un fichier XSP effectuer une requete sur base de donnée, par exemple, plaquette_data.xsp :
 

Code :
  1. <?xml version="1.0" encoding="ISO-8859-1"?>
  2. <xsp:page language="java"
  3.     xmlns:xsp="http://apache.org/xsp"
  4.     xmlns:xsp-request="http://apache.org/xsp/request/2.0"
  5.     xmlns:esql="http://apache.org/cocoon/SQL/v2">
  6. <!--retrieve all the request parameters-->
  7. <users>
  8. <esql:connection>
  9.  <esql:pool>mysql</esql:pool>
  10.    <esql:execute-query>
  11.   <!--selecting the entity-->
  12.     <esql:query>
  13.      select identity, country from users where id_user=<xsp-request:get-parameter name="id_user"/>
  14.     </esql:query>
  15.     <esql:results>
  16.      <esql:row-results>
  17.      <user>
  18.                               <identity>
  19.                                   <esql:get-string column="identity" />
  20.                               </identity>
  21.                               <country>
  22.                                   <esql:get-string column="country" />
  23.                               </country>
  24.                            </user>
  25.             </esql:row-results>
  26.            </esql:results>
  27.           </esql:execute-query>
  28.    </esql:row-results>
  29.     </esql:results>
  30.    </esql:execute-query>
  31. </esql:connection>
  32. </users>
  33. </xsp:page>


 
Ensuite, on définit l'enchainement des pipes et le passage des paramètres dans le sitemap.xmap :
 

Code :
  1. <map:match pattern="plaquette_data">
  2.     <map:generate type="xsp" src="xsp/plaquette_data.xsp" />
  3.     <map:transform src="xsl/plaquette.xsl" />
  4.     <map:serialize type="xml" />
  5. </map:match>
  6. <map:match pattern="plaquette.svg">
  7.     <map:generate src="cocoon:/plaquette_data" />
  8.     <map:transform src="xsl/plaquette.xsl">
  9.          <map:parameter name="use-request-parameters" value="true" />
  10.     </map:transform>
  11.     <map:serialize type="svgxml" />
  12. </map:match>
  13. <map:match pattern="plaquette.jpg">
  14.     <map:generate src="cocoon:/plaquette_data" />
  15.     <map:transform src="xsl/plaquette.xsl">
  16.          <map:parameter name="use-request-parameters" value="true" />
  17.     </map:transform>
  18.     <map:serialize type="svg2jpeg" />
  19. </map:match>


 
Voila, cet exemple est à peine incomplet (ca fait un bail que j'ai plus fait de Cocoon 2), mais, il te permet en tapant dans ton browser :
 
plaquette.svg?id_user=1
--> de créer la plaquette avec l'identité de l'utilisateur 1, en SVG
 
plaquette.jpg?id_user=1
--> de créer la plaquette en JPEG
 
y a aussi de serializer pour le PNG
en plus, en SVG, tu peux également générer la partie javascript sous Cocoon 2 ce qui est très pratique.
Si jamais, tu essaie, fais moi savoir, je te donnerai des exemples plus complexes, avec drag & drop, effets de transparence et le toutim... [:chocoboy]


Message édité par chocoboy le 02-09-2003 à 19:42:04
n°505659
the real m​oins moins
Posté le 02-09-2003 à 19:41:35  profilanswer
 

je lirai ça un jour :jap:
(ct pas *mon* probleme ;))


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  SVG

 

Sujets relatifs
Le SVGcomment gerer unfichier SVG dans une page en html
[XML] SVG : qui s'en sert ?[SVG / java/Batik] Manipulation / convertion de fichiers SVG
[SVG] Vous avez essayé?SVG et Netscape 4.7 sous Unix
SVG allez jeter un coup d'oeilSVG
Plus de sujets relatifs à : SVG


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)