JAVA基础教程————绘图

合集下载

Java绘图之设置字型和颜色_Java教程

Java绘图之设置字型和颜色_Java教程

Java绘图之设置字型和颜色_Java教程Java绘图中,显示文字的方法主要有三种:(1)drawString(String str,int x,int y):在指定的位置显示字符串。

(2)drawChars(char data[],int offset,int length, int x, int y):在指定的位置显示字符数组中的文字,从字符数组的offset位置开始,最多显示length个字符。

(3)drawBytes(byte data[],int offset,int length,int x,int y), 在指定的位置显示字符数组中的文字,从字符数组的offset位置开始,最多显示length个字符。

这里给出的显示位置(x,y)为文字的基线的开始坐标,不是文字显示的矩形区域的左上角坐标。

文字字型有三个要素:∙字体:常用的字体有Times New Roman、Symbol、宋体、楷体等。

∙风格:常用的风格有三种:正常、粗体和斜体;分别用三个常量表示:Font.PLAIN(正常)、Font.BOLD(粗体)和Font.ITALIC(斜体)。

风格可以组合使用,例如,Font.BOLD+Font.ITALIC。

∙字号:字号是字的大小,单位是磅。

在Java语言中,用类Font对象字型。

Font类构造方法有:Font(String fontName,int style,int size),3个参数分别表示字体、风格和字号。

例如,代码:Font fnA = new Font(“细明本”,Font.PLAIN,12)设置的字型的是:细明体、正常风格,12磅字号。

Font类的其他常用方法:1.getStyle(),返回字体风格。

2.getSize(),返回字体大小。

3.getName(),返回字体名称。

4.isPlain(),测试字体是否是正常字体。

5.isBold(),测试字体是否是粗体。

6.isItalic(),测试字体是否是斜体。

Java的Graphics类进行绘图的方法详解

Java的Graphics类进行绘图的方法详解

Java的Graphics类进⾏绘图的⽅法详解Graphics类提供基本绘图⽅法,Graphics2D类提供更强⼤的绘图能⼒。

Graphics类提供基本的⼏何图形绘制⽅法,主要有:画线段、画矩形、画圆、画带颜⾊的图形、画椭圆、画圆弧、画多边形等。

1. 画线在窗⼝画⼀条线段,可以使⽤Graphics类的drawLine()⽅法:drawLine(int x1,int y1,int x2,int y2) 例如,以下代码在点(3,3)与点(50,50)之间画线段,在点(100,100)处画⼀个点。

g.drawLine(3,3,50,50);//画⼀条线段g.drawLine(100,100,100,100);//画⼀个点。

2. 画矩形有两种矩形:普通型和圆⾓型。

(1) 画普通矩形有两个⽅法:drawRect(int x,int y,int width,int height):画线框围起来的矩形。

其中参数x和y指定左上⾓的位置,参数width和height是矩形的宽和⾼。

fillRect(int x,int y,int width,int height):是⽤预定的颜⾊填充⼀个矩形,得到⼀个着⾊的矩形块。

以下代码是画矩形的例⼦:g.drawRect(80,100,40,25);//画线框g.setColor(Color.yellow);g.fillRect(20,70,20,30);//画着⾊块(2)画圆⾓矩形也有两个⽅法:drawRoundRect(int x,int y,int width, int height, int arcWidth, int arcHeight):是⽤线围起来的圆⾓矩形。

其中参数x和y指定矩形左上⾓的位置;参数width和heigth是矩形的宽和⾼;arcWidth和arcHeight分别是圆⾓弧的横向直径和圆⾓弧的纵向直径。

fillRoundRect(int x,int y,int width,int height,int arcWidth,int archeight):是⽤预定的颜⾊填充的圆⾓矩形。

java createdrawingpatriarch 使用实例

java createdrawingpatriarch 使用实例

java createdrawingpatriarch 使用实例Java中的createdrawingpatriarch方法用于创建Sheet的绘图管理器,可以对Sheet进行绘图操作。

绘图管理器中可以添加图形、绘制文本、设置填充颜色等,非常灵活实用。

本文将一步一步回答“java createdrawingpatriarch 使用实例”。

第一步:了解createdrawingpatriarch方法的基本用法在开始实例之前,我们需要了解createdrawingpatriarch方法的基本用法。

该方法是在Workbook接口中定义的,用于在Sheet中创建一个绘图管理器。

绘图管理器可以通过getCreationHelper().createDrawingPatriarch()方法来获取。

接下来的实例中,我们将使用POI库来操作Excel文件,具体使用步骤如下:1. 创建一个Workbook对象:Workbook workbook = new XSSFWorkbook();2. 创建一个Sheet对象:Sheet sheet = workbook.createSheet("Sheet1");3. 获取绘图管理器对象:Drawing drawing = sheet.createDrawingPatriarch();第二步:创建简单的图形下面我们来创建一个简单的图形,以便更好地理解createdrawingpatriarch方法的使用。

我们将创建一个圆形,并设置其位置和大小,代码如下:1. 创建一个绘图对象:XSSFDrawing drawing = (XSSFDrawing)sheet.createDrawingPatriarch();2. 定义圆形的位置和大小:int x = 100; 圆心的横坐标int y = 100; 圆心的纵坐标int width = 100; 圆的宽度int height = 100; 圆的高度3. 绘制圆形:XSSFClientAnchor anchor = drawing.createAnchor(x, y, x + width, y + height, 0, 0, 0, 0);XSSFSimpleShape circle = drawing.createSimpleShape(anchor); circle.setShapeType(ShapeTypes.ELLIPSE);第三步:绘制文本除了图形,我们还可以在Sheet中绘制文本。

Java标准教程:Java 2D绘图--第3章 基本几何图形

Java标准教程:Java 2D绘图--第3章 基本几何图形

Java标准教程:Java 2D绘图--第3章基本几何图形在之前的课程中,您已经学习了绘图的基本概念,包括坐标系和graphic对象创建的基本信息。

现在,您将了解2D 绘图类的更详细的信息。

本科展示如何使用Graphics2D类绘制基本的几何图形和任意的形状,以及如何使用花哨的轮廓和填充风格展示图形。

这些主题分为以下几个章节。

●绘制基本几何图形:本节展示如何创建标准的集合图形,例如点,线,曲线,圆弧,矩形和椭圆。

●绘制任意图形:本节展示如何直接使用基本几何图形组合绘制任意形状,使用GeneralPath类进行绘制。

●填充和笔画:本节解释如何设置笔画和打印属性,控制应用到Shape对象和文本的轮廓和填充风格。

1.1 绘制基本几何图形Java 2D API提供很多类,定义了基本的几何对象,例如点,线,弧线和矩形。

这些几何类是java.awt.geom包的一部分。

PathIterator接口定义了从路径中获取元素的方法。

Shape接口提供了一组描述和解析几何路径的对象。

这个接口由GeneralPath类和其他几何类实现。

本节的所有例子中创建的几何图形都使用java.awt.geom,然后使用Graphics2D类进行渲染。

要得到Graphics2D对象,可以cast paint()方法的Graphics参数:1.1.1 点Point类创建了位于坐标系中(x, y)位置的点。

子类Point2D.Float和Point2D.Double提供了使用float和double精度存储点。

要创建位于坐标系(0, 0)的点,使用默认的构造函数Point2D.Double()。

您可以使用setLocation方法设按照下面的方法设置点的位置:●setLocation(double x, double y):使用double坐标值设置点的位置。

●setLocation(Point2D p):使用坐标系中的其他点设置位置。

Java程序设计——12图形绘制

Java程序设计——12图形绘制

unitsImage
绘制图像-2
• drawImage(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, ImageObserver observer)
– 将img中的一个矩形区域绘制到当前画布的一个矩形区域,且可拉伸。 – 透明的部分不绘制(gif图片可以指定一个透明色),用于绘制不规则图像。
赵志崑
输出文字
• 将字符串输出到特定位置:
– void drawString(String str, int x, int y)
(x,y) 见TextExample.java g.drawString("Hello World!",50,50); g.drawString("世界你好!",50,100);
150
赵志崑
设置颜色
• void setColor(Color c):将当前画笔颜色设置为c。 • Color getColor():读取当前画笔颜色。 • 颜色的构造: – 构造函数Color(int r, int g, int b):参数为红、绿、蓝的值(0-255)。 – 直接使用Color类中的静态对象:如Color.blue, Color.yellow, Color.orange, ……
– style:字体形式,为Font.PLAIN,Font.BOLD,Font.ITALIC。 – size:字体的高度,单位为像素。
• 这些设置字体的方法同样可以应用于组件上显示的字体。
见FontExample.java public void paintComponent(Graphics g) { super.paintComponent(g); g.setFont(new Font(fontName,fontStyle,fontSize)); g.drawString("Hello World!",50,50); g.drawString("世界你好!",50,100); }

JAVA自学教程(完整版)PPT课件(2024)

JAVA自学教程(完整版)PPT课件(2024)

二分查找
针对有序数组,每次取中间元 素与目标元素比较,缩小查找 范围
12
03 面向对象编程基础
2024/1/27
13
类与对象的概念
类的定义
类是对象的模板,它定 义了对象的属性和方法 。
2024/1/27
对象的概念
对象是类的实例,具有 类定义的属性和行为。
类与对象的关系
类是对象的抽象描述, 而对象是类的具体实现 。
2024/1/27
32
Socket通信原理及示例
Socket通信原理
理解Socket通信的基本原理,掌握Socket 类和ServerSocket类的使用。
TCP编程
学习基于TCP协议的Socket通信,实现客户 端与服务器之间的数据传输。
多线程处理
掌握多线程在Socket通信中的应用,提高服 务器的并发处理能力。
TreeSet类的特点和使用
TreeSet是Set接口的另一个常用实现类,它基于红黑树实 现。TreeSet会对元素进行排序,因此它适用于需要排序的 场景。
26
Map接口及其实现类
01
Map接口的定义和特 点
Map接口表示一种键值对的映射关系 。Map中的每个元素都包含一个键和 一个值,键在Map中是唯一的。
学习ReentrantLock锁的使用,了解 公平锁与非公平锁的区别。
2024/1/27
等待/通知机制
掌握Object类的wait()、notify()和 notifyAll()方法的使用,实现线程间 的通信。
死锁与避免
了解死锁的概念及产生条件,学习如 何避免死锁的发生。
31
网络编程基础
网络编程概述
ArrayList类的特点和使用

javapaint方法

javapaint方法

javapaint方法在Java中,可以使用paint方法来实现对组件进行绘制的功能。

paint方法是Swing组件中的一个方法,用于进行组件的绘制操作。

下面将详细介绍Java的paint方法。

首先,paint方法是在组件需要被重绘时由Java虚拟机自动调用的,应用程序通常无需自己调用paint方法。

在组件首次显示时或需要进行重绘时,paint方法将自动被调用。

paint方法的方法签名如下:```public void paint(Graphics g)```paint方法的参数是一个Graphics对象,它提供了一系列的绘图方法用于完成绘制操作。

在paint方法中,通常需要完成以下几个步骤:1. 获取Graphics对象:用于绘制的Graphics对象可以通过paint方法的参数获取,此时可以使用Graphics对象的各种方法来完成绘制操作。

2. 设置绘图属性:在开始绘制之前,通常需要设置一些绘画属性,比如绘图颜色、线条粗细等。

Graphics对象提供了一系列用于设置绘画属性的方法,比如setColor、setStroke等。

3. 进行绘制操作:在绘制之前,需要确定绘制的内容和位置。

根据需要,可以使用Graphics对象的各种绘图方法,如drawLine、drawRect、fillRect等来绘制需要的图形。

4. 释放资源:绘制操作完成后,通常需要释放绘图资源,以便其他组件或画布进行绘制操作。

可以通过Graphics对象的dispose方法来释放绘图资源。

下面是一个简单的示例代码,展示了如何在一个JPanel类中使用paint方法进行绘制操作:```javaimport javax.swing.*;import java.awt.*;public class MyPanel extends JPanelpublic void paint(Graphics g)super.paint(g);//设置绘图属性g.setColor(Color.RED);//绘制操作g.drawLine(10, 10, 100, 100);g.drawRect(50, 50, 100, 100);g.fillRect(200, 200, 100, 100);//释放资源g.dispose(;}```在上面的代码中,首先继承了JPanel类,并重写了其paint方法。

java入门教程(一)PPT课件

java入门教程(一)PPT课件

运算符与控制流语句
运算符
Java支持多种运算符,如算术运算符(+、-、*、/、% )、关系运算符(==、!=、>、<、>=、<=)和逻辑 运算符(&&、||、!)等。
控制流语句
Java提供了多种控制流语句,如if语句、switch语句和 循环语句(for、while、do-while)等,用于控制程序 的执行流程。
1995年,Java正式发布,并成为一种独立的开发 平台。
2004年,Java SE 5.0版发布,引入了新特性如泛 型、for-each循环和自动装箱等。
java的应用领域
Web应用程序 开发
Java的Web开发技术, 如Servlet和JSP等,可 以轻松构建高效的Web 应用程序。
企业级应用
05
java开发环境配置
jdk的安装与配置
总结词
JDK是Java开发的核心工具包,需要安装并正确配置。
详细描述
JDK是Java Development Kit的缩写,是Java开发的核 心工具包,需要从Oracle官方网站下载并安装。在安装 过程中,需要选择适合自己系统的版本,并按照提示完 成安装过程。安装完成后,需要通过环境变量设置,将 JDK添加到系统路径中,以便在命令行或者其他IDE中直 接调用Java命令。
2023
java入门教程(一)ppt课件
目录
• java概述 • java基础知识 • java核心技术 • java常用类库 • java开发环境配置 • java入门案例——简易学生信息管理系统的实现
01
java概述
java的定义与特点
1
于开发跨平台应用程序和服务端应用程序等。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

图5.2 裁剪后的图形界面
Java实用教程
5.4 Color类
Color类是用来封装颜色的,在上面的例子中多次用到。使 用Color对象较为简单的方法是直接使用Color类提供的预定义的 颜色,像红色Color.red、橙色Color.orange等;也可以使用RGB
颜色模式进行定义。所谓RGB颜色模式是指使用三种基色:红、
public void paint(Graphics oldg)
{ Graphics2D g = (Graphics2D)oldg;
Java实用教程
g.setColor(Color.blue);
g.fill(new Ellipse2D.Float(50,50,150,150)); g.setColor(new Color(255,0,0,0)); g.fill(new Ellipse2D.Float(50,50,140,140)); g.setColor(new Color(255,0,0,64)); g.fill(new Ellipse2D.Float(50,50,130,130)); g.setColor(new Color(255,0,0,128)); g.fill(new Ellipse2D.Float(50,50,110,110)); g.setColor(new Color(255,0,0,255)); g.fill(new Ellipse2D.Float(50,50,90,90)); g.setColor(new Color(255,200,0)); g.fill(new Ellipse2D.Float(50,50,70,70)); } }
Java实用教程
5.2 Paint方法、Update方法和Repaint方法
1. Paint方法 public void paint(Graphics g) 以画布为参数,在画布上执行画图方法。在Applet中,不显 式地调用paint方法。
2. Repaint方法
Applet重画时系统自动调用paint方法。 3. Update方法 public void update(Graphics g) 更新容器,向Repaint发出刷新小应用程序的信号,缺省的 Update方法清除Applet画图区并调用Paint方法。
Java实用教程
通过指定的name、style和size创建字体实例。name指字体
名,像“隶书”、“TimesRoman”等,字体风格为粗体、斜体, size指字号大小。 例如: Font f = new Font("TimesRoman",Font.BOLD + Font.ITALIC, 12); 创建了具有粗斜体风格的12磅的TimesRoman字体。
正常显示;当alpha分量为0时,表示完全透明,前三个分量不
起作用,而介于0~255之间的值可以制造出颜色不同的层次效 果。
Java实用教程
【例5.2】测试Color对象,界面如图5.3所示。源程序代码如下:
//程序文件名UseColor.java import java.awt.*; import java.applet.*; import java.awt.geom.*; public class UseColor extends Applet {
Java实用教程
Java绘图
5.1 Java图形 5.2 Paint方法、Update方法和Repaint方法 5.3 Graphics类
5.4 Color类
5.5 Graphics2D类 习 题
Java实用教程
5.1 Java图形
抽象窗口化工具(AWT)为图形用户界面编程提供API编程接
口,使得Java可以提供较好的图形用户界面。AWT把图形处理
g.drawString("图形显示",180,30);
g.drawLine(20,20,100,50); g.drawLine(20,20,50,100); //矩形 g.drawRect(40,40,40,40); g.fillRect(60,60,40,40); g.setColor(Color.red); //3D矩形
Java实用教程 【例5.1】设置Graphics对象画图,显示结果如图5.1所示。源 程序代码如下: //程序文件名SimpleGUI.java
import java.awt.*;
import java.applet.*; public class SimpleGUI extends Applet { Image samImage;
public void init()
{ samImage=getImage(getDocumentBase(),"sample.gif");
Java实用教程 } public void paint(Graphics g) { //g.clipRect(50,50,180,180); //画线
g.drawLine(0,0,20,30);
int yC[] = {240,243,290,300,270};
g.drawPolygon(xC,yC,5); //图片 g.drawImage(samImage,250,50,this); }
}
Java实用教程
图5.1 简单的图形界面
Java实用教程 将例5.1注释的程序语句 // g.clipRect(50,50,180,180); 的注释符号去掉,重新编译执行,可以看见如图5.2所示的结果。
Java实用教程
ቤተ መጻሕፍቲ ባይዱ
图5.3 颜色测试界面
Java实用教程
5.5 Graphics2D类
Graphics2D类继承于Graphics类,提供几何学、坐标变换、 颜色管理以及文本排列等的更高级控制。Graphics2D类是Java平 台上渲染二维图形、文字、以及图片的基础类,提供较好的对绘 制形状、填充形状、旋转形状、绘制文本、绘制图像以及定义颜 色的支持。
Graphics类提供画各种图形的方法,其中包括线、圆和椭圆、矩
形和多边形、图像以及各种字体的文本等。这些方法具体如下: public abstract void clipRect(int x, int y, int width, int height) 指定的区域切分。
Java实用教程
public abstract void drawLine(int x1, int y1, int x2, int y2)
//输出字符串 g.drawString("图形显示",100,30);
//设置颜色
Color c = new Color(255,200,0); g.setColor(c); //设置字体
Java实用教程 Font f = new Font("TimesRoman",Font.BOLD+ Font.ITALIC,24); g.setFont(f);
绿、蓝,通过三种颜色的调整得出其它各种颜色,这三种基色 的值范围为0~255。例如Color c = new Color(255,200,0);定义橙 色。表5.1给出常用颜色的RGB值以及对应的类预定义参数。
Java实用教程 表5.1 常用颜色的RGB值以及对应的类预定义参数
颜色名 白色 浅灰色 灰色 深灰色 黑色 红色 粉红色 橙色 黄色 绿色 品红色 深蓝色 蓝色 预定义颜色值 Color.white Color.lightGray Color.gray Color.darkGray Color.black Color.red Color.pink Color.orange Color.yellow Color.green Color.magenta Color.cyan Color.blue 红色值 255 192 128 64 0 255 255 255 255 0 255 0 0 绿色值 255 192 128 64 0 0 175 200 255 255 0 255 0 蓝色值 255 192 128 64 0 0 175 0 0 0 255 255 255
Java实用教程
5.3 Graphics类
Graphics类是所有图形上下文的抽象基类,允许应用程序在 各种设备上实现组件的画图。图形对象封装了Java支持的基本渲 染操作的状态信息,包括画图的组件对象、渲染区域的坐标 (coordinates)、区域(clip)、颜色(color)、字体(font)、画图模式等。
g.setColor(Color.blue);
//圆角矩形
g.drawRoundRect(180,180,40,40,20,20); g.fillRoundRect(200,200,40,40,20,20);
Java实用教程 //多边形 int xC[] = {242,260,254,297,242};
Java实用教程 Color还有一个构造函数,它构造的Color对象用于是否透 明显示颜色。 public Color(int red, int green, int blue, int alpha) 其中:前三个分量即RGB颜色模式中的参数,第四个alpha 分量指透明的程度。当alpha分量为255时,表示完全不透明,
Java实用教程 public abstract void setColor(Color c)
设置图形上下文的当前颜色。
public abstract void setPaintMode() 设置画模式。 public abstract boolean drawImage(Image img, int x, int y, ImageObserver observer) 画特定图。 public abstract void setFont(Font font) 设置特定的font字体。使用时首先得到font对象的一个实例, Font类常用构造函数为: public Font(String name, int style, int size)
相关文档
最新文档