Exemple #1
0
    def renderToFile(self, content, imagePath):
        """
        content - текст, описывающий диаграмму
        imagePath - полный путь до создаваемого файла
        """
        from blockdiag.parser import parse_string
        from blockdiag.drawer import DiagramDraw
        from blockdiag.builder import ScreenNodeBuilder
        from blockdiag.utils.fontmap import FontMap

        font = os.path.join(os.path.dirname(os.path.abspath(__file__)),
                            u"fonts", self._fontDefault)

        fontmap = FontMap()
        fontmap.set_default_font(font)

        text = u"blockdiag {{ {content} }}".format(content=content)

        tree = parse_string(text)
        diagram = ScreenNodeBuilder.build(tree)

        draw = DiagramDraw("png",
                           diagram,
                           imagePath,
                           fontmap=fontmap,
                           antialias=True)
        draw.draw()
        draw.save()
Exemple #2
0
    def renderToFile(self, content, imagePath):
        """
        content - текст, описывающий диаграмму
        imagePath - полный путь до создаваемого файла
        """
        from blockdiag.parser import parse_string
        from blockdiag.drawer import DiagramDraw
        from blockdiag.builder import ScreenNodeBuilder
        from blockdiag.utils.fontmap import FontMap

        font = os.path.join(os.path.dirname(os.path.abspath(__file__)),
                            u"fonts",
                            self._fontDefault)

        fontmap = FontMap()
        fontmap.set_default_font(font)

        text = u"blockdiag {{ {content} }}".format(content=content)

        tree = parse_string(text)
        diagram = ScreenNodeBuilder.build(tree)

        draw = DiagramDraw("png", diagram, imagePath,
                           fontmap=fontmap, antialias=True)
        draw.draw()
        draw.save()
Exemple #3
0
    def node2diagram(self, node):
        try:
            tree = parser.parse_string(node['code'])
        except:
            code = 'blockdiag { %s }' % node['code']
            tree = parser.parse_string(code)
            node['code'] = code  # replace if suceeded

        return ScreenNodeBuilder.build(tree)
Exemple #4
0
 def _build(self, tree):
     return ScreenNodeBuilder.build(tree)
Exemple #5
0
 def _build(self, tree):
     return ScreenNodeBuilder.build(tree)