J'ai des images SVG produites par PlantUML, qui a des parties de dessin en dehors de la toile. Il est difficile d'utiliser de telles images et j'ai besoin de recadrer le dessin à la taille de la toile. Comme je produis de toute façon des diagrammes UML avec un script, il serait également très efficace d'y effectuer un recadrage.
Jusqu'à présent, j'ai essayé deux choses: a) redimensionner le canevas au dessin avec Inkscape
inkscape --verb=FitCanvasToDrawing --verb=FileSave --verb=FileClose *.svg
Cela fonctionne bien, mais j'ai besoin de recadrer le dessin à la taille du canevas et cette opération semble indisponible.
b) redimensionner avec rsvg-convert
rsvg-convert image.svg -w 1870 -h 1195 -f svg -o image.svg
Cela recadre exactement à la taille souhaitée, mais la taille de l'image augmente ~ 10 fois car il y a maintenant des images binaires intégrées dans SVG. Ce n'est pas acceptable pour moi.
svg
format est un format ascii basé sur xml, donc le moyen le plus simple devrait être simplement d'utilisersed
ou votre outil de manipulation de texte préféré pour insérer ou modifier une ligne qui définit le cadre de sélection. Cela ne toucherait même pas les autres contenus du fichier. Essayez de le faire manuellement une fois sur un exemple de fichier svg (dans un éditeur de texte), puis traduisez vos actions en script.