package com.graphics;
import java.awt.*;
import java.awt.geom.Rectangle2D;
import java.util.Date;
import javax.swing.*;
/**
*
* @author biexiansheng
*
*/
public class DrawString extends JFrame{
private Shape rect;//矩形對象
private Font font;//字體對象
private Date date;//當前日期對象
public DrawString(){
rect=new Rectangle2D.Double(10, 10, 200, 80);
font=new Font("宋體",Font.BOLD,16);
date=new Date();
this.setSize(230,140);//設置窗體的大小
//設置窗體的關閉方式
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
add(new CanvasPanel());//設置窗體面板為繪圖面板對象
this.setTitle("繪圖文本");//設置窗體標題
}
class CanvasPanel extends JPanel{
public void paint(Graphics g){
super.paint(g);
Graphics2D g2=(Graphics2D)g;//強制類型轉換
g2.setColor(Color.CYAN);//設置當前繪圖顏色
g2.fill(rect);//填充矩形
g2.setColor(Color.blue);//設置當前繪圖顏色
g2.setFont(font);//設置字體
g2.drawString("現在的時間是", 20, 30);//繪制文本
g2.drawString(String.format("%tr", date), 50, 60);//繪制事件文本
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
DrawString ds=new DrawString();//
ds.setVisible(true);
}
}
實例運行結果如下

package com.graphics;
import java.awt.Canvas;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.Toolkit;
import java.net.URL;
import javax.swing.JFrame;
import javax.swing.WindowConstants;
/**
* 1:繪制圖片
*繪圖類不僅可以繪制圖形和文本,還可以使用drawImage()方法將圖片資源顯示到繪圖上下文中
*而且可以實現各種特效處理,如圖片的縮放,翻轉等
*語法如下
*drawImage(Image img,int x,int y,ImageObserver observer);
*該方法將img圖片放到x,y指定位置上面,observer是要通知的圖像觀察者
*/
public class DrawImage extends JFrame {
Image img;
public DrawImage(){
URL url=DrawImage.class.getResource("1.jpg");//獲取圖片資源的路徑
img=Toolkit.getDefaultToolkit().getImage(url);//獲取圖片資源
this.setSize(250, 200);//設置窗體的大小
//設置窗體的關閉方式
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
add(new CanvasPanel());//設置窗體面板為繪圖面板對象
this.setTitle("繪圖圖片");
}
class CanvasPanel extends Canvas{
public void paint(Graphics g){
super.paint(g);
Graphics2D g2=(Graphics2D)g;
g2.drawImage(img,0,0,this);//顯示圖片
}
}
public static void main(String[] args) {
DrawImage di=new DrawImage();//
di.setVisible(true);
}
}
繪制圖片實例運行結果如下
