Alternative d’Inkscape pour la manipulation programmatique de SVG à l’aide de PHP
Alternative d’Inkscape pour la manipulation programmatique de SVG à l’aide de PHP
EDIT: J’ai initialement déclaré que je ne pouvais pas manipuler les SVG Inkscape avec JavaScript; c’était une erreur de ma part, en raison de mon échec (dans ma joie de découvrir ce site) à revisiter le projet qui était en sommeil depuis plus d’un an. J’aimerais en fait faire quelques manipulations côté serveur avec PHP; c’est là que se pose le problème.
Je cherche à créer des images SVG scriptables Java pour un projet de tableau de bord Web, et je voudrais les initialiser en utilisant PHP côté serveur avant de les charger. La dernière fois que j’ai regardé Inkscape, il enterrait des attributs cruciaux comme la largeur du trait, la couleur de remplissage, la police, etc. dans l’attribut style
plutôt que dans les attributs des éléments individuels; cela fait de la manipulation programmatique un PITA sérieux.
Quelqu’un connaît-il un bon éditeur SVG open-source qui définit les caractéristiques des éléments dans les attributs des éléments individuels, ou un outil qui peut convertir des fichiers Inkscape?
Si je comprends bien, pour (par exemple) utiliser JavaScript PHP / XML DOM pour modifier le remplissage d’un rectangle, il doit être défini comme
<svg ...> <rect id="temp_level" fill="#0000ff" stroke="none" width="25" height="60" x="1" y="1" /> </svg>
tandis qu’Inkscape le définit comme
<svg ...> <rect id="temp_level" style="fill:#0000ff;stroke:none" width="25" height="60" x="1" y="1" /> </svg>
et que JavaScript PHP ne peut pas accéder aux éléments individuels de l’attribut style
.
document.getElementById('temp_level').style.fill = 'red';
Réponses
Antony
Oui, cela semble en effet être une limitation par rapport à la bibliothèque PHP DOM . Beaucoup plus facile à corriger du côté d’Inkscape. Choisissez d’enregistrer en tant que « svg optimisé »
Et puis assurez-vous que la case « Style to XML » est cochée.
#à, #de, #la, #pour, alternative, d’Inkscape, l’aide, manipulation, PHP, programmatique, SVG