Ejemplo n.º 1
0
 def generate_svg(self, raw_tex):
     fig = Figure(figsize=(5, 4), dpi=300)
     canvas = FigureCanvasAgg(fig)
     fig.text(.5, .5, r"$" + raw_tex + r"$", fontsize=40)
     fig.savefig("output.svg", bbox_inches="tight", facecolor=(1, 1, 1, 0))
     self.svg.load("output.svg")
     renderer = QSvgRenderer('output.svg').defaultSize()
     w = renderer.width()
     h = renderer.height()
     if w / h > 578 / 200:
         display_w = 578
         display_h = int(578 * h / w)
     else:
         display_h = 200
         display_w = int(200 * w / h)
     self.svg.setFixedWidth(display_w)
     self.svg.setFixedHeight(display_h)
     self.svg.setGeometry(
         QRect(289 - int(display_w / 2), 100 - int(display_h / 2),
               display_w, display_h))