多媒体技术实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

江苏科技大学

多媒体技术考核报告(2017/2018学年第1学期)

课程名称:多媒体技术

指导教师:***

实验地点:东校区外训楼软件工程实验室

学生姓名:**

学生学号:**********

院系:计算机学院

专业:计算机科学与技术专业

考核得分:

2017年11月日

实验一多媒体图像文件转换

一、实验目的

1.掌握多媒体静态图像的基本概念,技术和获取过程。

2.掌握多媒体图像文件基本格式种类。

3.掌握不同图像文件的数据结构形式,了解不同格式图像文件的具体类型区别。

4.运用高级语言编程实现不同图像文件类型的相互转换。

二、实验环境

1、主流操作系统;

2、高级语言编程环境。

三、实验内容

1、编写程序实现主流图像文件格式之间的相互转换;

2、至少要实现JPG、BMP、GIF、PNG图像文件之间的转换;

3、编程语言不限;

4、根据实验内容撰写对应的实验报告。

四、设计方案

ImageIO 类的静态方法可以执行许多常见的图像 I/O 操作。

此包包含一些基本类和接口,有的用来描述图像文件内容(包括元数据和缩略图)(IIOImage);有的用来控制图像读取过程(ImageReader、ImageReadParam 和 ImageTypeSpecifier)和控制图像写入过程(ImageWriter 和 ImageWriteParam);还有的用来执行格式之间的代码转换(ImageTranscoder) 和报告错误 (IIOException)。

可处理图像格式有:jpg,BMP,bmp,JPG,wbmp,jpeg,png,PNG,JPEG,WBMP,GIF,gif。

另外在加一些输入代码可实现简单的格式转换选择。

五、实验代码

import javax.imageio.ImageIO;

import java.awt.image.BufferedImage;

import java.io.File;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.OutputStream;

import java.util.Scanner;

public class Main {

public static void main(String[] args) {

Scanner scan = new Scanner(System.in);

System.out.println("请输入需要转换的格式[jpg, bmp, png, gif]:");

File out = new File("/Users/14779/Desktop/1.jpg");

//将图片写入ImageIO流

try {

BufferedImage img = ImageIO.read(out);

//将图片写出到指定位置(复制图片)

switch (scan.next()){

case"png":

case"PNG":

OutputStream ops = new FileOutputStream(new

File("/Users/14779/Desktop/1(1).png"));

ImageIO.write(img, "png", ops);

System.out.println("转换完成!");

break;

case"jpg":

case"JPG":

ops = new FileOutputStream(new File("/Users/14779/Desktop/1(1).jpg")); ImageIO.write(img, "jpg", ops);

System.out.println("转换完成!");

break;

case"bmp":

case"BMP":

ops = new FileOutputStream(new File("/Users/14779/Desktop/1(1).bmp")); ImageIO.write(img, "bmp", ops);

System.out.println("转换完成!");

break;

case"GIF":

case"gif":

ops = new FileOutputStream(new File("/Users/14779/Desktop/1(1).gif")); ImageIO.write(img, "gif", ops);

System.out.println("转换完成!");

break;

default:

System.out.println("请输入正确格式!");

break;

}

} catch (IOException e) {

e.printStackTrace();

}

}

}

实验截图

六、实验过程中的问题及对应思考

ImageIO是一个封装好的图像输入输出类, 使用ImageIO 类的静态方法可以执行许多常见的图像I/O 操作。我将图片路径事先写好放入程序里,可以通过键入转换格式来达到想要转换到的格式,为了避免键入出错,我将主程序写在try函数中。

相关文档
最新文档