导航:首页 > 文件教程 > tif文件合并java

tif文件合并java

发布时间:2025-10-05 17:09:23

java实现多张图片合成一张tif图片 RenderedImage[] imgs(多张图片), String path(保存路径)

public static void many2one(List<String> bookFilePaths, String toPath,String distFileName) {
if (bookFilePaths != null && bookFilePaths.size() > 0) {
File[] files = new File[bookFilePaths.size()];
for(int i = 0; i < bookFilePaths.size(); i++){
files[i] = new File(bookFilePaths.get(i));
}
if (files != null && files.length > 0) {

try {
ArrayList pages = new ArrayList(files.length - 1);
FileSeekableStream[] stream = new FileSeekableStream[files.length];
for (int i = 0; i < files.length; i++) {
stream[i] = new FileSeekableStream(
files[i].getCanonicalPath());
}
ParameterBlock pb = (new ParameterBlock());
PlanarImage firstPage = JAI.create("stream", stream[0]);
for (int i = 1; i < files.length; i++) {
PlanarImage page = JAI.create("stream", stream[i]);
pages.add(page);
}
TIFFEncodeParam param = new TIFFEncodeParam();
boolean f = makeDirs(toPath);
System.out.println(f);
OutputStream os = new FileOutputStream(toPath + File.separator+ distFileName);
ImageEncoder enc = ImageCodec.createImageEncoder("tiff",
os, param);
param.setExtraImages(pages.iterator());
enc.encode(firstPage);
for (int i = 0; i < files.length; i++) {
stream[i].close();
}
os.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}

Ⅱ java 实现 tif图片(多页的)转换成jpg

多页单个tif文件转换为多个jpg文件
需要官方的一些包支持(具体参考源码),上网找找即可。
源码:
-------------------------
import java.io.*;
import com.sun.media.jai.codec.FileSeekableStream;
import com.sun.media.jai.codec.ImageDecoder;
import com.sun.media.jai.codec.ImageCodec;
import com.sun.media.jai.codec.TIFFEncodeParam;
import com.sun.media.jai.codec.TIFFDecodeParam;
import com.sun.media.jai.codec.JPEGEncodeParam;

import java.awt.image.RenderedImage;
import javax.media.jai.RenderedOp;
import javax.media.jai.JAI;
import java.awt.image.renderable.ParameterBlock;
public class MultiPageRead {
public static void main(String[] args) throws IOException {
new MultiPageRead().doitJAI();
}

public void doitJAI() throws IOException {
FileSeekableStream ss = new FileSeekableStream("./zhaoming.tif");
TIFFDecodeParam param0 = null;
TIFFEncodeParam param = new TIFFEncodeParam();
JPEGEncodeParam param1 = new JPEGEncodeParam();
ImageDecoder dec = ImageCodec.createImageDecoder("tiff", ss, param0);
int count = dec.getNumPages();
param.setCompression(TIFFEncodeParam.COMPRESSION_GROUP4);
param.setLittleEndian(false); // Intel
System.out.println("This TIF has " + count + " image(s)");
for (int i = 0; i < count; i++) {
RenderedImage page = dec.decodeAsRenderedImage(i);
File f = new File("./fk_" + i + ".jpg");
System.out.println("Saving " + f.getCanonicalPath());
ParameterBlock pb = new ParameterBlock();
pb.addSource(page);
pb.add(f.toString());
pb.add("JPEG");
pb.add(param1);
//JAI.create("filestore",pb);
RenderedOp r = JAI.create("filestore",pb);
r.dispose();

//RenderedOp op = JAI.create("filestore", page, "./zhaoming_" + i + ".jpg", "JPEG", param1);
}
}
}

Ⅲ 怎么实现用java 把tif格式的图片转换成jpg

用photoshop打开,另存为jpg格式就可以了。注意很多tif图片都是cmyk四色的(印刷格式),如果想把图片应用于网络上,要转换成rgb三色的。方法就是打开后,点击图像—〉模式—〉rgb颜色。

阅读全文

与tif文件合并java相关的资料

热点内容
心形里面有心跳的小图标是什么app 浏览:260
张家巷程序园工资高吗 浏览:680
访问苹果文件夹吗 浏览:575
2014最新网络病毒 浏览:162
大v店的课程是哪个app 浏览:390
未知死亡在哪个app看 浏览:775
javatcpipsocket编程 浏览:4
程序连接数据库2005失败 浏览:429
phpcms网站地图插件 浏览:977
当前华为手机如何设置数据网络 浏览:235
mac打开软件文件夹 浏览:668
tif文件合并java 浏览:259
pencil用哪些app 浏览:522
做实物编程是什么意思 浏览:581
cad文件夹英文怎么写 浏览:352
微信最大可以发多大的文件 浏览:189
文件夹簧 浏览:451
楚楚街活动页制作教程 浏览:622
少儿编程如何提高成绩 浏览:889
怎么撤销升级大王卡 浏览:92

友情链接