JAVA语言课程设计
设计题目:图像放大缩小器
任务目标:做一个用户图形界面的图像放大缩小器,可以对符合格式的图像文件进行放大与缩小。
目录
JAVA语言课程设计 1
目录 2
1 设计要求 1
1.1 程序要求 1
1.2 运行效果 1
1.2.1主界面 1
1.2.2打开文件选择对话框 2
1.2.3载入文件 2
1.2.4放大图片 3
1.2.4缩小图片 3
2 程序整体设计说明 3
2.1程序中所使用的类 3
2.2.主要成员方法 4
2.3内部类 4
2.3异常处理说明 4
2.4算法 5
2.4.1扫描图像文件 5
2.4.2放大与缩小 5
2.4.3过滤图像 5
2.4.4 在面板上画图 6
2.5程序中所涉及的包 6
2.6源代码 6
参考文献 12
致谢 13
1 设计要求
1.1 程序要求
本程序是一个图形用户界面程序,可一对图像文件进行放大与缩小,刚载入的文件显示原始尺寸,图像的内设格式是.jif、.jpg、.jpeg。
1.2 运行效果
1.2.1主界面
图 1-1主界面
1.2.2打开文件选择对话框
图 1-2打开文件选择对话框
1.2.3载入文件
图 1-3载入文件
1.2.4放大图片
图 1-4放大图片
1.2.4缩小图片
图 1-5缩小图片
2 程序整体设计说明
2.1程序中所使用的类
类名:public class ScaleImageDemo
作用:主类
继承的父类:JFrame
类名:class ButtonActionListener
作用:按钮事件处理
实现接口:ActionListener
类名:class ScalePaner
作用:显示图像的面板
继承的父类:Jpanel
2.2.主要成员方法
public ScaleImageDemo() 构造方法
public void fileSelect() 图像文件选择器
public static void main(String[] args) 驱动
public void actionPerformed(ActionEvent e) 按钮事件处理
public void loadImage(String fileName) 载入图像
public void paint(Graphics g) 重载容器的paintComponent()方法
2.3内部类
类名:class ButtonActionListener
作用:按钮事件处理
实现接口:ActionListener
类名:class ScalePane
作用:显示图像的面板
继承:Jpanel
2.3异常处理说明
异常处理源码:
try {
mt.waitForAll();
} catch (Exception ex)
{
ex.printStackTrace();
}
作用:等待图片加载、输出出错信息
2.4算法
2.4.1扫描图像文件
public boolean accept(File file)
{String name = file.getName().toLowerCase(); //获取文件名
Return name.endsWith(".gif")|| name.endsWith(".jpg")|| name.endsWith(".jpeg")|| file.isDirectory();}
作用:判断文件是否可以接受。
2.4.2放大与缩小
放大图像:if(button==jbZoomIn)
showImagePane.scaleX *= 1.25; //图像x轴方向放大图片
showImagePane.scaleY *= 1.25; //图像y轴方向放大图片
缩小图像:if(button==jbZoomOut)
showImagePane.scaleX *= 0.8; //图像x轴方向缩小图片
showImagePane.scaleY *= 0.8; //图像y轴方向缩小图片
还原图像:
相关热词:javaJAVA 图片 浏览器 论文