Java中的Canvas绘图源码实例.rar

上传者: 39841365 | 上传时间: 2022-02-21 11:56:57 | 文件大小: 46KB | 文件类型: -
Java中的Canvas绘图源码实例,主要是画线条、弧线、圆角矩形、三角形、文字、圆形等简单的几何图形,主要是通过创建DrawingCanvas对象canvas,为canvas设置命令监听者,实现接口CommandListener的方法,把缓冲区图像的内容绘制到画布上,画图部分代码:
  int w = getWidth(); // 画布的宽度
  int h = getHeight(); // 画布的高度
  Image buffer = Image.createImage(w, h); // 用于绘图的缓冲图像
  Graphics gc = buffer.getGraphics(); // 获取缓冲图像的图形环境
  // 清除画布
  public void clearScreen() {
   gc.setColor(255,255,255); // 设置绘图颜色为白色
   gc.fillRect(0,0,w,h); // 把缓冲图像填充为白色
   gc.setColor(255,0,0); // 设置绘图颜色为红色
  }
  // 绘制直线
  public void drawLine() {
   setTitle("直线"); // 设置画布的标题
   clearScreen(); // 清除画布
   gc.drawLine(10,10,w-20,h-20); // 绘制黑色直线
   gc.setColor(0,0,255); // 设置绘图颜色为蓝色
   gc.drawLine(10,h/2,w-10,h/2); // 绘制蓝色直线
  }
  // 绘制弧
  public void drawArc() {
   setTitle("弧线和填充弧");
   clearScreen();
   gc.drawArc(5,5,w/2-20,h/2-20,60,216); // 绘制弧线
   gc.drawArc(5,h/2-10,w/2-20,h/2-20,0,360); // 绘制圆
   gc.setColor(0,0,255);
   gc.fillArc(w/2,5,w/2-20,h/2-20,60,216); // 绘制填充弧线
   gc.fillArc(w/2,h/2-10,w/2-20,h/2-20,0,360); // 绘制填充圆
  }
  // 绘制矩形
  public void drawRect() {
   setTitle("矩形和填充矩形");
   clearScreen();
   gc.drawRect(25,25,w/2-30,h/2-30); // 绘制矩形
   gc.fillRect(w/2 25,25,w/2-30,h/2-30); // 绘制填充矩形
  }
  // 绘制圆角矩形
  public void drawRoundRect() {
   setTitle("圆角矩形和填充圆角矩形");
   clearScreen();
   gc.drawRoundRect(5,5,w-5-30,h/2-30,20,20); // 绘制圆角矩形
   gc.setColor(0,0,255);
   gc.fillRoundRect(5,h/2,w-30,h/2-30,20,20); // 绘制填充圆角矩形
  }
  // 绘制三角形
  public void drawTriangle() {
   setTitle("填充三角形");
   clearScreen();
   gc.fillTriangle(w/2, h/6, w/6, h/2, w/2, h/2);
  }
  // 绘制文字
  public void drawText() {
   setTitle("文字"); //设置标题
   clearScreen();
   gc.setFont(Font.getFont(Font.FACE_SYSTEM,Font.STYLE_BOLD,Font.SIZE_SMALL)); // 设置字体
   gc.drawString("Hello World!",0,0,gc.TOP|gc.LEFT); // 使用当前字体绘制文字
   gc.setFont(Font.getFont(Font.FACE_SYSTEM,Font.STYLE_BOLD|Font.STYLE_UNDERLINED,Font.SIZE_LARGE));
   gc.drawString("Hello World!",0,h/3,gc.TOP|gc.LEFT);
  }

文件下载

评论信息

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明