茅侃侃
2023-04-14 17:32:26
我正在嘗試將交互式文本放入 p5.js 畫布中,但不知道如何操作。交互式文本是指您可以突出顯示和復制的文本,就像任何 HTML 網站上的文本一樣。有沒有辦法做到這一點?如果不是,那么編寫使用交互式文本以及 p5.js 中的元素的應用程序的最佳框架是什么?
2 回答

慕神8447489
TA貢獻1780條經驗 獲得超1個贊
P5 的畫布就是畫布。(更具體地說是<canvas>
元素的渲染上下文)。將其視為一張易于編輯的大圖片。問題是,您無法在圖片中正確突出顯示/復制文本。與 canvas 和text()
. 它只是將您作為圖像提供的文本繪制到畫布上,因此不存在實際文本,只有一堆圖像數據,顯示時看起來像文本。您最好使用createP()
orcreateDiv()
來創建瀏覽器可以突出顯示/復制的實際文本。只需替換text('bla bla bla')
為createP('bla bla bla')
,然后使用 css 對其進行定位,更改字體,更改顏色。ETC。

長風秋雁
TA貢獻1757條經驗 獲得超7個贊
簡單的答案:p5text()
只是在畫布上繪制文本。您需要使用createP()
函數(或 createDiv)
示例代碼:
let myPTag;
function setup() {
? createCanvas(400, 400);
? background(200);
? myPTag = createP("This here is some text");
? myPTag.position(200, 100);
}
您不需要為此使用自己的 CSS,只需使用該<element>.position(posX, posY);
函數即可。要更改文本的值,只需使用<element>.html(newTextString);
添加回答
舉報
0/150
提交
取消