Tenho imagens SVG produzidas pelo PlantUML, que tem algumas partes do desenho fora da tela. Isso dificulta o uso dessas imagens e preciso cortar o desenho no tamanho da tela. Como eu produzo diagramas UML com script de qualquer maneira, seria realmente eficiente executar um corte lá também.
Até agora, tentei duas coisas: a) redimensionar a tela para desenhar com o Inkscape
inkscape --verb=FitCanvasToDrawing --verb=FileSave --verb=FileClose *.svg
Isso funciona bem, mas preciso cortar o desenho no tamanho da tela e esta operação parece estar indisponível.
b) redimensionar com rsvg-convert
rsvg-convert image.svg -w 1870 -h 1195 -f svg -o image.svg
Isso faz exatamente o corte no tamanho desejado, mas o tamanho da imagem aumenta ~ 10 vezes, pois agora existem algumas imagens binárias incorporadas ao SVG. Isso não é aceitável para mim.
svg
format é um formato ascii baseado em xml; portanto, a maneira mais fácil deve ser usarsed
ou sua ferramenta de manipulação de texto favorita para inserir ou modificar uma linha que define a caixa delimitadora. Isso nem tocaria o outro conteúdo do arquivo. Tente fazê-lo manualmente uma vez em um arquivo svg de exemplo (em um editor de texto) e depois traduza suas ações em um script.