是否有一种简单的方法可以在draw2d中绘制带下划线的文本而无需在文本下手动绘制一条线?
答案 0 :(得分:2)
经过一些研究后,看起来Draw2D本身不支持带下划线的文本,因为SWT字体是操作系统级别的对象,而不是SWT支持的每个操作系统都支持带下划线的文本。看起来最好的办法是创建一种手动绘制带下划线的文本的方法。也许它会在以后添加到SWT中。
这是我最终使用的(或多或少):
private void drawUnderlinedText(GC gc, String string, int x, int y)
{
Point extent = gc.textExtent(string);
gc.drawText(string, x, y);
gc.drawLine(x - 1, y + extent.y - 1, x + extent.x - 1, y + extent.y - 1);
}
答案 1 :(得分:0)
使用带有下划线属性的Font。 Darryl的Visual Font Designer显示了如何使用此属性创建字体。