zoukankan      html  css  js  c++  java
  • JAVA学习绘图颜色及其笔画属性设置字体显示文字

    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);
        }
    
    }

    实例运行结果如下

    2.

    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);
        }
    }

    绘制图片实例运行结果如下

  • 相关阅读:
    css的em是根据什么来写的
    向一个对象数组里面添加新的属性 + 将一个对象数组数据拿出来变成另一个对象
    微信里iphone后退不刷新问题解决方案
    进到页面后input输入框自动获取焦点
    jquery checkbox反复调用attr('checked', true/false)只有第一次生效
    js promise中如何取到[[PromiseValue]]
    js 取得当天0点 / 23:59:59 时间
    jQuery获取包括当前元素的HTML
    C++ 实现 STL 标准库和算法(二)template 编程和迭代器粗解 实验楼笔记
    我现在怎么写博客笔记?
  • 原文地址:https://www.cnblogs.com/BelieveFish/p/10254997.html
Copyright © 2011-2022 走看看