在 C# 中,您可以創建位圖,在其上繪制,然后您可以繪制那些快取的位圖。
public Form1()
{
InitializeComponent();
surface = new Bitmap(640, 480);
var g = Graphics.FromImage(surface);
g.DrawRectangle(Pens.Red, 10, 10, 10, 10);
}
Bitmap surface;
private void Form1_Paint(object sender, PaintEventArgs e)
{
e.Graphics.DrawImage(surface, 0, 0);
}
有沒有辦法在javascript中做到這一點?
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.beginPath();
ctx.arc(95,50,40,0,2*Math.PI);
ctx.stroke();
<canvas id="myCanvas" width="200" height="100" style="border:1px solid #d3d3d3;">
Your browser does not support the HTML canvas tag.</canvas>
uj5u.com熱心網友回復:
畫布是可繪制的影像。
該函式的CanvasRenderingContext2D.drawImage()第一個引數是一個影像,或者更具體地說是一個包含HTMLCanvasElement的CanvasImageSource。
例子
示例在上繪制弧,can1然后can1在can2使用上繪制drawImage。
請注意它繪制像素,路徑不會在第二個畫布上重繪。
注意畫布是“雙緩沖”的,這意味著您也可以將畫布繪制到自身
var ctx1 = can1.getContext("2d");
var ctx2 = can2.getContext("2d");
ctx1.beginPath();
ctx1.arc(64, 64, 60, 0, 2 * Math.PI);
ctx1.stroke();
ctx2.drawImage(can1, 0, 0);
canvas { border: 1px solid black}
<canvas id="can1" width="128" height="128"></canvas>
<canvas id="can2" width="128" height="128"></canvas>
uj5u.com熱心網友回復:
您可以將該繪圖快取為 png 或 jpeg base64 字串,然后您也可以將其放入任何影像標簽或其他畫布。在這里,我將該影像快取在 png 資料中并繪制在下面的影像標簽上:
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.beginPath();
ctx.arc(95,50,40,0,2*Math.PI);
ctx.stroke();
var dt = c.toDataURL('image/png');
CANVAS_DATA.src = dt;
<canvas id="myCanvas" width="200" height="100" style="border:1px solid #d3d3d3;">
Your browser does not support the HTML canvas tag.</canvas>
<img id="CANVAS_DATA">
如果您需要更多資訊,請詢問。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/456215.html
標籤:javascript C# 表格 html5-画布
