实际上,我正试图用Processing 3.3.7绘制一条大消息,但textSize()函数并没有像预期的那样工作。素描是空的。
void setup()
{
size(600, 600);
background(0);
fill(#CC0000);
textSize(150);
text("Yeah!", width/2, height/2, 80, 80);
}为什么?
发布于 2018-12-19 13:29:53
之所以会发生这种情况,是因为text的定义如下:
文本(str,x1,y1,x2,y2)
您选择的文本框(80, 80)的宽度和高度太小,无法在字体大小150中显示文本,增加文本框的宽度和高度也会使更大的文本出现。
另外,如果您想对文本进行居中(width/2是绘图的x起点),您应该用textWidth的一半减去它,以补偿文本的大小。
为了补偿高度,需要“添加textAscent()和textDescent()值将给出行的总高度。”来源。
text("Yeah!", width/2-textWidth("Yeah!")/2,
height/2-(textAscent() + textDescent())/2, 150, 150);https://stackoverflow.com/questions/53852019
复制相似问题