Eliminar transformaciones en archivos SVG

Resuelto Ephemera asked hace 11 años • 28 respuestas

He estado luchando con esto por un tiempo y parece que no puedo encontrar una respuesta (que funcione) en ninguna parte. Tengo un archivo SVG que se ve así:

<svg

   xmlns:dc="http://purl.org/dc/elements/1.1/"
   ...
   width="72.9375"
   height="58.21875"
   ...>
   ...
   <g
     ...
     transform="translate(10.75,-308.96875)"
     style="...">
     <path
       inkscape:connector-curvature="0"
       d="m -10.254587,345.43597 c 0,-1.41732 0.17692,-2.85384 0.5312502,-3.5625 0.70866,-1.41733 2.14518,-2.82259 3.5625,-3.53125 1.41733,-0.70866 2.11392,-0.70867 3.53125,0 1.41732,0.70866 ... z"
       ... />
  </g>
</svg>

Quiero eliminar la transform="..."línea pero mi imagen aún permanece donde la coloqué (en InkScape). Si elimino manualmente la transformación, la imagen se comprime a otra parte de la pantalla (como se esperaba), pero necesito deshacerme de la transformación por completo y, al mismo tiempo, que la imagen permanezca exactamente donde quiero. ¿Hay alguna manera de eliminar/aplanar las transformaciones en las coordenadas de la ruta? (Las únicas transformaciones con las que tengo que lidiar son la traducción y la escala, no las matrices).

Ephemera avatar Nov 11 '12 13:11 Ephemera
Aceptado

Cómo eliminar transformaciones en Inkscape

  1. Abrir archivo svg en Inkscape
  2. Vaya a Editar -> Seleccionar todo
  3. Ir a Objeto -> Desagrupar
  4. Vaya a Editar -> Editor XML
  5. Encuentre atributos de "transformación" en capas y elimínelos

Cómo mover todos los objetos por completo sin crear otros atributos de transformación

  1. Vaya a Editar -> Seleccionar todo en todas las capas
  2. Ir a Objeto -> Transformar

En el panel Transformar

  1. Desmarque Movimiento relativo y marque Aplicar a cada objeto por separado
  2. Establezca los valores Horizontal y Vertical según sus necesidades y haga clic en Aplicar
Sergiy Seletskyy avatar Jun 12 '2014 08:06 Sergiy Seletskyy

Existe una extensión de Inkscape llamada Apply Transforms que vuelve a calcular las rutas con sus transformaciones. Esto es exactamente lo que he estado buscando.

Después de instalarlo, lo encontrará en el menú Extensiones > Modificar ruta > Aplicar transformación .


Créditos: Foro de Inkscape > Eliminar todas las transformaciones manteniendolas en su lugar.

piotr_cz avatar Dec 21 '2016 08:12 piotr_cz

Descubrí cuál era el problema. Esperaba no tener que recurrir a la respuesta de Robert, ¡aunque me alegra saber que funcionaría! Al final, la respuesta de Duopixel fue la más cercana, aunque resulta que también estaba sucediendo algo más.

Cuando trabajas con diferentes rutas en documentos de Inkscape, creo que su comportamiento predeterminado es agruparlos bajo una <svg:g.../>etiqueta. Al modificar rutas en un grupo, Inkscape agregará automáticamente una transformación al grupo para representar estos cambios. Sin embargo, si abre el editor XML y arrastra su ruta fuera de la <svg:g.../>etiqueta y la convierte en su propia <svg:path.../>etiqueta, Inkscape es libre de editar los puntos individuales a voluntad. Al final resultó ser un problema de agrupación a pesar de que solo estaba trabajando con una ruta. Espero que esto ayude a otros en situaciones similares.

Ephemera avatar Nov 18 '2012 08:11 Ephemera