Closed gpm0009 closed 4 years ago
@cgosorio @alvarag He estado buscando como hacer esto, y las soluciones que encuentro es pintando el svg dentro de un canvas. Después de muchos intentos he conseguido hacerlo, pero pierde bastante calidad y no guarda el tamaño.....No se si alguna vez habéis visto algo de esto o lo estoy liando mucho :/
Si he entendido bien tu problema, creo que el siguiente enlace puede ayudarte a encontrar la solución: https://stackoverflow.com/questions/38477972/javascript-save-svg-element-to-file-on-disk.
Creo que tu caso es más sencillo que el planteado en la consulta en stackoverflow porque tu no estás dando estilo al SVG a través de CSS.
@cgosorio mmm si, pero con eso lo estas descargando como un svg, no como una imagen png o jpg, que es donde viene el problema, que igual me he explicado mal perdona.
No. Si lo interesante es bajarlo como SVG, que es un formato vectorial. Si también quieres convertirlo a PNG, sí que parece que hacerlo a través del canvas es la solución, ¿algunos de los enlaces que has encontrado es uno de estos?
Ah, pues pense que queríamos como png, lo entendí mal entonces perdona. Si, el primero ya lo había mirado y probado lo del canvas, pero no me funciona ninguno (en casi todos he encontrado lo mismo), lo máximo que he conseguido descargar a sido esto:
Lo de npm no lo había encontrado. Pruebo a ver
Creo que el problema puede estar en las dimensiones que tienes configuradas para el SVG. En el SVG no es demasiado relevante, porque al ser un formato vectorial, si es necesario hacer zoom, no se pierde nada de calidad. Pero las dimensiones sí que son relevantes cuando lo pases a un formato de mapa de bits. Mira a ver si con otras dimensiones del SVG (mucho mayores) la calidad de la exportación a PNG es más decente.
Vale, voy a probar a ver. Muchas gracias!
Botón para exportar el grafo y descargarlo como una imagen