首页 > 解决方案 > 在 python/django 中的 html 画布上绘制形状

问题描述

我正在尝试使用 Django 在网页上绘制形状、线条、三角形、矩形。如何做到这一点?下面是我的代码。

视图.py

import tkinter
from django.shortcuts import render
from django.http import HttpResponse
from django.template import loader

def drawchart():
        root = tkinter.Tk() 
        canvas = root.Canvas(root, width=400, height=500)
        canvas.pack()
        blackline = canvas.create_line (0, 0, 200, 0)
        root.mainloop()
        return blackline

.html 文件

<!DOCTYPE html>
<html>
    <Head>
        <title>Line</title>
    </Head>
    <body>
       <h3>test</h3> 
       <canvas id="myCanvas" width="400" height="500">
        {{drawchart()}}
       </canvas>
    </body>
</html>

标签: pythondjangoshapes

解决方案


tkinter是 Python 绑定到 OS 本机窗口库或 GUI 工具包。您想要实现的目标无法使用它来完成。

要使用canvasHTML,您需要有用于图形编程的 HTML 库。WebGL是一个 javascript API,它为网页提供图形功能。TheeJS是一个 javascript 库,可用于网页上的图形编程

WebGL 是一个 javascript API,不需要在您的页面上包含任何其他内容,并且可以通过 vanilla javascript 调用来使用。但是,ThreeJS 要求它的依赖项包含在您的页面中,就像 jquery 或 jquery-ui 一样,然后您也可以利用它。

我希望这个答案能帮助您朝着正确的方向前进。


推荐阅读