1湖南农业大学课程设计论文图片尺寸批量修改工具学生姓名:刘彬学号:200841920205年级专业:2008级电子商务专业指导老师:王明宇老师学院:东方科技学院湖南·长沙提交日期:2010年11月目录目录.....................................................................................................................11前言............................................................................................................................22程序设计需求分析....................................................................................................32.1程序设计目的..................................................................................................32.2开发设计思想..................................................................................................32.3开发和运行环境..............................................................................................33概要设计...................................................................................................................33.1应用程序功能..................................................................................................33.2基本设计概念和处理流程..............................................................................44详细设计与实现.......................................................................................................54.1需用到的包......................................................................................................54.2需用到的类......................................................................................................54.3类的方法介绍..................................................................................................54.4程序的测试及在测试中遇到的问题..............................................................54.5程序的测试结果..............................................................................................64.6程序源代码......................................................................................................85总结..........................................................................................................................17参考文献.....................................................................................................................17致谢.......................................................................................................................182图片尺寸批量修改工具作者:刘彬指导老师:王明宇(湖南农业大学东方科技学院2008级电子商务专业2班,长沙410128)摘要:该程序是一个图形界面的简单的图片尺寸批量修改工具,具有良好的界面,使用人员能快捷简单地进行操作。即时准确地获得所需尺寸的图片,充分降低了处理图片的难度和节约了时间,对人们的生活有一定的帮助。此程序,可打开文件夹,自动排除文件夹和非图片格式文件,同时列出所有图片文件,能够一次将所有图片修改成同样的尺寸大小。关键词:java;图片;批量修改1前言随着科学技术的不断发展,计算机已经成为我们工作学习和生活中不可缺少的工具。加上网络技术的成熟,网店盛行,图片修改就是使用最频繁的服务之一了,也有大量的工具可供我们使用,如PS,QQ影像等。但是这些主流的图片编辑工具并不能实现我们所需要所以的功能,或者操作起来非常繁琐。在学习了Java语言之后,我决定使用Java语言编写一个简单的图片[1]批量处理工具,可以实现图片任意尺寸的批量处理,满足日常实际的适用及工作学习的需要。要实现批量修改就得要批量导入图片和导出图片,要是通过手工方式单条进行录入几乎是不可能的,不仅烦琐,而且极易出现错误。所以就要用到[2]基于数据文件的批量数据导入导出方法。Java是由Sun公司开发的新一代纯面向对象的网络编程语言。其目标是[3]建立一种在任意种机器、任一种操作系统的网络环境中运行的软件,实行所谓的“程序写一次,到处运行”的目标。正因为如此,Java已成为当今Internet上最流行、最受欢迎的一种程序开发语言。Java语言是由C++语言发展起而来的,是一种彻底的面向对象的程序设计语言。作为一种纯面向对象的程序设计语言,它非常适合大型软件的开发。Java语言去掉了C++语言的一些容易引起错误的特性。Java语言的特点有:面向对象、跨平台、安全性、多线程和图形功能强。32程序设计需求分析2.1程序设计目的通过开发一个简单的批量处理图片尺寸程序来巩固所学的Java知识。要求程序能自动筛选出文件夹中的图片格式文件,并批量的对图片尺寸进行修改,同时要新生成修改后的图片,为了方便经常要进行图片大小修改的使用者,如网店用户。2.2开发设计思想本应用程序的设计思想:程序应该充分利用课堂所学的知识和自学的知识满足其功能设计的需求;程序采用可视化、模块化程序设计方法,既便于程序功能的各种组合和修改,又便于未参与开发的技术维护人员进行补充、维护;程序应具备维护功能,及时根据用户需求进行数据的修改。程序应该尽量简单。2.3开发和运行环境开发工具:JCreatorLE运行环境:JDK1.6.0_22、Windows73概要设计3.1应用程序功能1、这个图片尺寸修改程序,最基本的功能是对所需图片的大小尺寸进行任意修改,达到期望效果。2、能读取文件夹下的文件,并自动筛选出图片格式文件而排除非图片格式文件,省去挑选的麻烦。3、对读取到的图片文件进行批量修改,这样省去很多时间。43.2基本设计概念和处理流程基本的处理流程如下图所示:开始PicChanger输入源文件夹地址夹检查输入目标文件夹地址夹检查输入转换后X与Y进行修改关闭PicChanger输入转换后的图片文件图3程序处理流程54详细设计与实现4.1需用到的包importjava.io.*;importjavax.imageio.*;importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;importjava.awt.image.*;4.2需用到的类1.publicclassPicChanger此程序就这个主类,它是程序得以运行的入口。在这个主类中定义了主方法,是该程序执行的入口。还定义了多种其他方法,是用来实现各个功能。4.3类的方法介绍1.定义的变量在这个类中,首先定义了面板的大小,所需按钮名称和位置,输入框的大小和位置等一些变量,并且还用到了系统中自带的一些类初使化了一些面板工具对象,用于完成对面板工具、检查、更改、说明、帮助、关于、重置、清空等一些工具按钮的定义。2.actionPerformed(ActionEvente)方法这个方法是处理ActionEvent事件以实现ActionListener接口的对象。ActionListener是事件监听者,actionPerformed(ActionEvente)是成员方法,代表鼠标点击事件。3.windowClosing(WindowEvente)方法这个方法用来实现的功能很简单,就是关闭窗口动作。4.BufferedImageconvert(intw,inth,BufferedImageinput)方法这个方法是设置图片大小,将所需图片转换成期待的尺寸。5.checkNum(Strings)方法这个方法是检查路径6.main(String[]args)方法这个是主方法,程序的执行入口。4.4程序的测试及在测试中遇到的问题6本程序是在JCreatorLE集成开发环境下开发的,并能够在JDK1.6.0_22运行环境中运行。在测试中遇到的问题如下:过程中,有时候输入的数据过大,就会出现意想不到的结果,与真实的结果又很大的区别,我想是跟定义的数据类型和表达式逻辑结果有关,但没有找到错误。4.5程序的测试结果本应用程序设计完成并通过测试后,能提供基本的功能。程序功能调试如下:1、运行程序,出现工具界面2、输入源文件夹和目标文件夹地址,检查将自动筛选出图片文件而排除文件夹和非图片格式文件,列出文件列表。图173、设置转换后的宽和高,更改:如果转换后的文件和目标文件夹的文件同名:如图3如果没有文件同名,则会列出转换成功的文件列表:如图4图3图2图484、说明,帮助,关于5、重置:所有输入框恢复为空;清空:显示框恢复空4.6程序源代码importjava.io.*;importjavax.imageio.*;importjavax.swing.*;importjava.awt.*;图5图6图79importjava.awt.event.*;importjava.awt.image.*;publicclassPicChangerextendsWindowAdapterimplementsActionListener{JFrameframe;JPanelpanel1,panel2,panel3,panel4,panel5,panel6,panel7;JTextFieldtf1,tf2,tf3,tf4;JTextAreata;JLabellabel1,label2,label3,label4,label5,label6,label7;JButtonbutt