Ho immagini SVG prodotte da PlantUML, che ha alcune parti del disegno al di fuori della tela. Rende difficile usare tali immagini e ho bisogno di ritagliare il disegno in base alle dimensioni della tela. Dato che produco comunque diagrammi UML con script, sarebbe davvero efficace eseguire anche un ritaglio lì.
Finora ho provato due cose: a) ridimensionare la tela al disegno con Inkscape
inkscape --verb=FitCanvasToDrawing --verb=FileSave --verb=FileClose *.svg
Funziona bene, ma devo ritagliare il disegno in base alle dimensioni della tela e questa operazione sembra non essere disponibile.
b) ridimensionare con rsvg-convert
rsvg-convert image.svg -w 1870 -h 1195 -f svg -o image.svg
Questo si adatta esattamente alla dimensione desiderata, ma la dimensione dell'immagine aumenta di circa 10 volte poiché ora ci sono alcune immagini binarie incorporate in SVG. Questo non è accettabile per me.
svg
Il formato è un formato ASCII basato su XML, quindi il modo più semplice dovrebbe essere solo quello di utilizzaresed
o il tuo strumento di manipolazione del testo preferito per inserire o modificare una linea che imposta il riquadro di delimitazione. Questo non toccherebbe nemmeno gli altri contenuti del file. Prova a farlo manualmente una volta su un file svg di esempio (in un editor di testo) e poi traduci le tue azioni in uno script.