开始学习awt,swing,请问两个初级问题。

topglory 2004-11-05 09:50:16

1. 在Graphic.drawString(str)时,如何供过str、当前字体、当前字体大小得到这个字符串画出来以后的大小,即width和height?

2. 在Graphic.drawLine()以后,经常会出现严重的锯齿现象,请问如何消除锯齿?我记得以前看到过这样的例子,现在想用却找不到了。
...全文
176 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
alaal 2004-11-08
  • 打赏
  • 举报
回复
提交为FAQ后发现落了一点东西,补充一下

Graphics2D g2d = (Graphics2D)g;
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON);
希偌 2004-11-05
  • 打赏
  • 举报
回复
1.
Font font=new Font("宋体",Font.PLAIN,25);
g.setFont(font);
FontMetrics fm=this.getFontMetrics(font);
String s="字符串长度";
int width=fm.stringWidth(s);//长度
int height=fm.getHeight();//高度
2.
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON);
Bluecatr 2004-11-05
  • 打赏
  • 举报
回复
画线平滑:

g.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON);
g.setRenderingHint(RenderingHints.KEY_STROKE_CONTROL,RenderingHints.VALUE_STROKE_DEFAULT);
画线恢复到默认状况:

g.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_OFF);
g.setRenderingHint(RenderingHints.KEY_STROKE_CONTROL,RenderingHints.VALUE_STROKE_PURE);

62,635

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧