es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Obtener las dimensiones -o proporciones- de un archivo SVG con CairoSVG.

Estoy usando CairoSVG exitosamente en mi proyecto de Python – md2pptx.

Convierte SVG a PNG y luego se ajusta a un espacio en la diapositiva de PowerPoint correspondiente.

Sería mejor ajustar el archivo SVG en la conversión en lugar de posteriormente. Pero no conozco las proporciones (o dimensiones) del archivo SVG.

Sí, podría analizar el XML en mi propio código, pero es mejor no hacerlo.

CairoSVG parece tener un método interno para obtener esta información, pero no uno exteriorizado.

¿Cómo puedo usar CairoSVG en Python 3 para obtener las proporciones o dimensiones?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para obtener las proporciones o dimensiones de un archivo SVG usando CairoSVG en Python 3, puedes utilizar la función svg2surface para convertir el SVG en un objeto de superficie de Cairo, y luego usar los métodos get_width y get_height del objeto de superficie para obtener las dimensiones del SVG. Aquí hay un ejemplo de código:

    import cairosvg
    
    svg_filepath = "/path/to/your/svg/file.svg"
    
    # convierte el SVG en un objeto de superficie de Cairo
    surface = cairosvg.svg2surface(svg_filepath)
    
    # obtén el ancho y la altura del objeto de superficie
    width = surface.get_width()
    height = surface.get_height()
    
    print("Dimensiones del SVG: {} x {}".format(width, height))
    

    Ten en cuenta que este método no está oficialmente soportado por CairoSVG y está sujeto a cambios en versiones futuras. Sin embargo, debería funcionar para la mayoría de archivos SVG y es una forma conveniente de obtener las dimensiones sin analizar directamente el XML.

Comments are closed.