![](/img/trans.png)
[英]Drawing a line between two points in PowerPoint slide using Apache POI
[英]drawing a line between two points
嗨,我有 2 個點(X1,Y1)
和(X2,Y2)
如何在它們之間畫一條線? 謝謝
在搖擺中:
Graphics g;
g.drawLine(X1, Y1, X2, Y2);
如果您在JPanel
上繪圖,您通常會將此代碼放在paintComponent
方法中:
@Override
protected void paintComponent(Graphics g) {
g.drawLine(X1, Y1, X2, Y2);
}
要查看Graphics
類上的所有可用方法,請參閱Javadocs 。
看看Graphics.drawLine方法。
您基本上需要覆蓋一些小部件(如 JPanel)或獲取 Canvas 並在paint方法中執行以下操作:
graphics.drawLine( p1.x, p1.y, p2.x, p2.y );
對於 JFrame,您將在繼承 JFrame 類的類中添加一個繪制方法,該方法在 JVM 准備好在 JFrame 上繪制時運行。 然后,在其中,您將調用圖形的 'drawLine' 方法,如圖所示(確保已導入“Graphics”類並將 X1、Y1、X2、Y2 替換為您選擇的整數。):
public void paint(Graphics g) {
g.drawLine(X1,X2,Y1,Y2);
}
你也可以試試這個:
var draw = function(ctx,x1,y1,x2,y2) {
ctx.strokeStyle = "Black";
ctx.lineWidth = 4;
ctx.beginPath();
ctx.moveTo(x1,y1);
ctx.lineTo(x2,y2);
ctx.stroke();
};
var drawPoints = function(ctx,points) {
ctx.strokeStyle = "Black";
ctx.lineWidth = 4;
for(var i = 0; i<points.length -1;i++){
draw(ctx,points[i][0],points [i][1],points[i+1][0],points[i+1][1]);
}
};
var ctx = canvas.getContext("2d")
現在調用函數:
drawPoints(ctx, points);
您可以將var points array
更改為您喜歡的任何點。
var points = [[50,50],[50,100],[100,100],[100,50]];
這應該用黑線連接所有點。 如果你輸入三個點,它會形成一個三角形,四個,一個正方形等等。 如果我犯了錯誤,請告訴我。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.