zoukankan      html  css  js  c++  java
  • Java 2D API

    Java 2D API强大而复杂,不过大多时候我们只需使用java.awt.Graphcis类的部分功能。下面的内容将覆盖大多数的常见应用。

     

    Graphics 类中的方法大致可以分为两类:

    • Draw and fill方法,用于绘制基本的图形、文本和图像;
    • 属性设置方法,用于控制绘制和填充的效果。setFont()setColor()等方法就属于这类方法。

     

    下图显示这些方法和图像的对应关系:

    clip_image001

     

    1. drawString()

    用于绘制文本:

    g.drawString("Hello", 10, 10);

    参数分别为:

    • 待绘制字符串
    • 起点xy坐标

    import java.applet.Applet;

    import java.awt.Graphics;

     

    public class Graphics_drawString extends Applet {

    @Override

    public void paint(Graphics g){

    g.drawString("Hello Graphics", 75, 100);

    }

    }

    输出界面如下:

    clip_image002

     

    2. drawImage

    绘制图像:

    import java.applet.Applet;

    import java.awt.Graphics;

    import java.awt.Image;

    import java.awt.Toolkit;

     

    public class Graphics_drawImage extends Applet {

    @Override

    public void paint(Graphics g) {

    Image img = Toolkit.getDefaultToolkit().getImage(this.getClass().getResource("th.png"));

    g.drawImage(img, 0, 0, 400, 500, this);

    }

    }

    th.png是我随便选的一个图片,输出界面如下:

    clip_image003

     

    3. drawLine, drawArc, drawRect, drawOval, drawPolygon

    这些方法用于绘制不同的形状。

     

    根据需求不同,可以根据以下的建议选择Graphics的方法:

    • 是否以图片原始大小渲染图片,或者根据指定rectangle缩放图片;
    • 对图片的透明区域,是填充还是不管它。

     

    2D graphics 的每个点都需要 (x,y) 坐标确定,所以所以的绘制和填充方法都需要位置信息。例如,绘制线条:

    Graphics.drawLine(int x1, int y1, int x2, int y2);

    其中,(x1, y1)是线条起点,(x2, y2) 是线条终点。

  • 相关阅读:
    数列(codevs 1141)
    Circle(codevs 3134)
    Jam的计数法(codevs 1140)
    水果姐逛水果街Ⅰ(codevs 3304)
    引水入城(codevs 1066)
    Vigenère 密码(luogu 1079)
    铺地毯(luogu 1003)
    SSO之CAS基础及应用视频教程(1)
    Spark高速入门指南(Quick Start Spark)
    python爬虫CSDN文章抓取
  • 原文地址:https://www.cnblogs.com/jiawei-whu/p/5568665.html
Copyright © 2011-2022 走看看