java代码画图 用java画图

怎么用java代码模拟一张图片

用java代码模拟一张图片可以这样操作:1.创建BufferedImage类

成都创新互联专业IDC数据服务器托管提供商,专业提供成都服务器托管,服务器租用,西部信息机房西部信息机房,成都多线服务器托管等服务器托管服务。

2.根据BufferedImage类得到一个Graphics2D对象

3.根据Graphics2D对象进行逻辑操作

4.处理绘图

5.将绘制好的图片写入到图片

用Java一个简单的画图程序

下面是我以前做的小程序,希望能给你点帮助!

package menu;

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class DaYin extends JFrame implements ActionListener{

public DaYin() {

Container c=this.getContentPane();

c.setLayout(new BorderLayout());

JMenuBar jmb=new JMenuBar();

JMenu jm=null;

jm=new JMenu("文件");

jmb.add(jm);

jm=new JMenu("编辑");

jmb.add(jm);

jm=new JMenu("打印");

JMenuItem jmi=new JMenuItem("打印预览");

jmi.addActionListener(this);

jm.add(jmi);

jmb.add(jm);

jm=new JMenu("帮助");

jmb.add(jm);

this.setJMenuBar(jmb);

this.setSize(1024,768);

this.setVisible(true);

this.addWindowListener(new WindowAdapter(){

public void windowClosing(WindowEvent e){

System.exit(0);

}

});

}

public static void main(String[] args) {

new DaYin();

}

public void update(Graphics g){

g.setColor(Color.black);

String title[]={"摘要","科目","子目或户名","借方金额","贷方金额"};

String danwei[]={"千","百","十","万","千","百","十","元","角","分"};

int csx=200;//打印x的初始坐标

int csy=200;//打印y的初始坐标

int x=csx;

int y=csy;

int a=x+20;//打印字体x的初始坐标

int b=y+20;//打印字体y的初始坐标

int row=7;//一共打印出几条横线

int cul=5;//一共打印出几条竖线

int hangju=30;//线与线之间的纵向间距

int lieju=100;//线与线之间的横向间距

int yy=hangju*row+y;

int c=yy+20;

g.setFont(new Font("行楷",Font.TYPE1_FONT,24));

g.drawString("记 账 凭 证", x+160, y-40);//打印出记账凭证这几个字

g.drawLine(x+100, y-30, x+340, y-30);//打印出记账凭证下面的那条线

g.setFont(new Font("行楷",Font.TYPE1_FONT,13));

g.drawString("年 月 日 第_______号", x+260, y-10);

//g.drawLine(x+430, y-10, x+470, y-10);

for(int i=0;i=row;i++){

g.drawLine(x, y, cul*lieju+x+25, y);//此循环用于画出表格的行

if(i==0)

y+=hangju*2;

else

y+=hangju;

}

y=csy;

g.drawLine(x+lieju*3, y+hangju, cul*lieju+x, y+hangju);//打印出第一行半的横线

for(int j=0;j=cul;j++){

g.drawLine(x, y, x, row*hangju+y);//此循环用于画出表格的列

x+=lieju;

}

x=csx;

for(int z=0;zcul;z++){

g.setColor(Color.red);//设置颜色

g.setFont(new Font("",Font.TYPE1_FONT,13));//设置表头字体

if(z3)

g.drawString(title[z], a, b+hangju/2);

else

g.drawString(title[z], a, b);//为表格添加表头

a+=lieju;

}//76-89打印出一个表格形状

int xx=lieju*3+x+10;

for(int v=0;v=9;v++){

g.drawLine(xx, y+hangju, xx, row*hangju+y+hangju);//此循环用于画出表格的列

g.setFont(new Font("",Font.TYPE1_FONT,11));

g.drawString(danwei[v], xx-10, y+hangju+20);//为表格添加表头

if(v%2==0)

g.setColor(Color.red);//设置颜色

else

g.setColor(Color.BLUE);//设置颜色

xx+=10;

}

for(int n=0;n9;n++){

g.drawLine(xx, y+hangju, xx, row*hangju+y+hangju);//此循环用于画出表格的列

g.drawString(danwei[n],xx-10, y+hangju+20);//为表格添加表头

if(n%2==0)

g.setColor(Color.red);//设置颜色

else

g.setColor(Color.BLUE);//设置颜色

xx+=10;

}

g.drawString(danwei[9],xx-10, y+hangju+20);

g.setColor(Color.black);//设置颜色

for(int i=0;i=1;i++){

g.drawLine(x,yy , cul*lieju+x, yy);//此循环用于画出表格的行

yy+=hangju;

}

yy=hangju*row+y;

for(int j=0;j=3;j++){

g.drawLine(x, yy, x, (row+1)*hangju+y);//此循环用于画出表格的列

if(j0){

x+=lieju;

}else{

x+=lieju*3;

}

}//112-128打印出表格的最后一行单元格

x=csx;

g.setFont(new Font("",Font.TYPE1_FONT,13));

g.drawString("合 计",x+60, c);

g.drawString("会计主管 记账 出纳 审核 制证", x+30, yy+50);

g.drawLine(cul*lieju+x+25, y, cul*lieju+x+25, (row+1)*hangju+y);//打印出最后一列

g.drawString("记",cul*lieju+x+6, y+15);

g.drawString("账", cul*lieju+x+6, y+35);

g.drawString("√", cul*lieju+x+6, y+55);//134-136为最后一列写入字体

g.drawString("附",cul*lieju+x+35, y+75);

g.drawString("件", cul*lieju+x+35, y+95);

g.drawString("张", cul*lieju+x+35, y+175);//134-136为最后一列后写入字体

}

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

if(e.getActionCommand().equals("打印预览")){

this.repaint();

}

}

}

使用drawLine()做了一个记账凭证。

执行点击"打印"子菜单"打印预览"就可显示出我们所画的"记账凭证表"

希望这个小程序能够给你点灵感

用java编写一个简单的画图程序。不用复杂

import java.awt.*;

import java.awt.event.*;

import java.awt.geom.*;

import javax.swing.*;

//不规则图形的绘制

public class IrregularShapeDemo extends JFrame {

GeneralPath gPath= new GeneralPath(); //GeneralPath对象实例

Point aPoint;

//构造函数

public IrregularShapeDemo() {

super("不规则图形的绘制"); //调用父类构造函数

enableEvents(AWTEvent.MOUSE_EVENT_MASK|AWTEvent.MOUSE_MOTION_EVENT_MASK); //允许事件

setSize(300, 200); //设置窗口尺寸

setVisible(true); //设置窗口可视

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗口时退出程序

}

public void paint(Graphics g) { //重载窗口组件的paint()方法

Graphics2D g2D = (Graphics2D)g; //获取图形环境

g2D.draw(gPath); //绘制路径

}

public static void main(String[] args) {

new IrregularShapeDemo();

}

protected void processMouseEvent(MouseEvent e) { //鼠标事件处理

if(e.getID() == MouseEvent.MOUSE_PRESSED) {

aPoint = e.getPoint(); //得到当前鼠标点

gPath = new GeneralPath(); //重新实例化GeneralPath对象

gPath.moveTo(aPoint.x,aPoint.y); //设置路径点

}

}

protected void processMouseMotionEvent(MouseEvent e) { //鼠标运动事件处理

if(e.getID() == MouseEvent.MOUSE_DRAGGED) {

aPoint = e.getPoint(); //得到当前鼠标点

gPath.lineTo(aPoint.x, aPoint.y); //设置路径

gPath.moveTo(aPoint.x, aPoint.y);

repaint(); //重绘组件

}

}

}

如何用Java编写一个绘制图形的小程序?

import java.awt.*;

import java.awt.event.*;

import java.awt.geom.*;

import javax.swing.*;

//不规则图形的绘制

public class IrregularShapeDemo extends JFrame {

GeneralPath gPath= new GeneralPath(); //GeneralPath对象实例

Point aPoint;

//构造函数

public IrregularShapeDemo() {

super("不规则图形的绘制"); //调用父类构造函数

enableEvents(AWTEvent.MOUSE_EVENT_MASK|AWTEvent.MOUSE_MOTION_EVENT_MASK); //允许事件

setSize(300, 200); //设置窗口尺寸

setVisible(true); //设置窗口可视

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗口时退出程序

}

public void paint(Graphics g) { //重载窗口组件的paint()方法

Graphics2D g2D = (Graphics2D)g;//获取图形环境

g2D.draw(gPath); //绘制路径

}

public static void main(String[] args) {

new IrregularShapeDemo();

}

protected void processMouseEvent(MouseEvent e) { //鼠标事件处理

if(e.getID() == MouseEvent.MOUSE_PRESSED) {

aPoint = e.getPoint(); //得到当前鼠标点

gPath = new GeneralPath(); //重新实例化GeneralPath对象

gPath.moveTo(aPoint.x,aPoint.y); //设置路径点

}

}

protected void processMouseMotionEvent(MouseEvent e) { //鼠标运动事件处理

if(e.getID() == MouseEvent.MOUSE_DRAGGED) {

aPoint = e.getPoint(); //得到当前鼠标点

gPath.lineTo(aPoint.x, aPoint.y); //设置路径

gPath.moveTo(aPoint.x, aPoint.y);

repaint(); //重绘组件

}

}

}


文章题目:java代码画图 用java画图
新闻来源:http://ybzwz.com/article/ddehejj.html