阅读:26373回复:1
五角星、菱形等特殊图形简便画法
如果遇到需要画较特殊的图形时,除了计算坐标点画外,此处提供一个比较简便的画法:(前提是能够找得到此图形的特殊字符)
1.例如五角星和菱形等能够找得到的特殊字符:★、◇、◆......可以直接用Graphics的drawString或DrawText方法直接画出图形,示例代码如下: graphics.drawString("★", x, y); //x和y为对应的坐标位置 graphics.drawText("◇", x, y); //x和y为对应的坐标位置 graphics.drawString("◆", x, y); //x和y为对应的坐标位置 2.用此方法画出的图形初始默认的边框和颜色为黑色,如果需要修改颜色的话,则通过Graphics的setForegroundColor方法,实例代码如下: graphics.setForegroundColor(Color rgb); /*rgb可以用ColorConstants.white或者通过SWTResourceManager.getColor(hex2RgbObj(str)); str则为对应的颜色的编码,如:#000000,#FFFFFF等*/ 3.用此方法画出的图形初始大小比较小,如果需要修改图形的大小,则可以通过Graphics的setFont方法修改字体的大小来实现,实例代码: graphics.setFont(SWTResourceManager.getFont("Helvetica", 25, SWT.NULL)); 优点:此方法画出的图形锯齿不会很明显 缺点:如果需要能够自由且不规则的改变大小时,则不能用此方法画出的图形。用此方法画出的图形,因为此图形只能等比放大或缩小。 具体的效果如图所示 [刘力于2017-12-04 16:03编辑了帖子]
|
|
|