我正在创建一个 p5 项目,在其中从字符串创建文本,使用“WORD”选项将其包装并将其添加到画布中。举个例子:
let font;
function preload() {
font = loadFont('SomeFont.otf');
}
function setup() {
createCanvas(400, 400);
background(220);
enteredText = 'This is an exmple of a long text that should split';
textWrap(WORD);
textSize(30);
textAlign(CENTER, CENTER);
textFont(font);
textLeading(0.83 * 30);
rectMode(CENTER);
fill(0);
noStroke();
text(enteredText, width / 2, height / 2, 20 , 20);
}
我想获得文本的边界形状,以便在框架上添加一些图像。 我怎样才能得到这个形状? 我考虑过使用
textBounds()
,但我也没有多行字符串,因为 textWrap()
正在为我做这件事。
有任何想法吗?自己重写 textWrap()
感觉有点大材小用,因为它有太多属性。
谢谢!
那是很久以前的事了。也许你已经知道答案了......在你的代码中 输入的文本,宽度/2,高度/2, 20 , 20); 由于你的字符大小是 39,如果这里有 20,20 ^,你将无法打印哪怕一个字母。例如,不应是 20、20,而应该是 390、400。您可以根据自己的喜好调整数字。