java图片合并(java图片合并成一张thumbnailtor)

华为云服务器特价优惠火热进行中!

2核2G2兆仅需 38 元;4核4G3兆仅需 79 元。购买时间越长越优惠!更多配置及优惠价格请咨询客服。

合作流程:
1、点击链接注册/关联华为云账号:点击跳转
2、添加客服微信号:cloud7591,确定产品方案、价格方案、服务支持方案等;
3、客服协助购买,并拉微信技术服务群,享受一对一免费技术支持服务;
技术专家在金蝶、华为、腾讯原厂有多年工作经验,并已从事云计算服务8年,可对域名、备案、网站搭建、系统部署、AI人工智能、云资源规划等上云常见问题提供更专业靠谱的服务,对相应产品提供更优惠的报价和方案,欢迎咨询。

今天给各位分享java图片合并的知识,其中也会对java图片合并成一张thumbnailtor进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

微信号:cloud7591
如需了解更多,欢迎添加客服微信咨询。
复制微信号

本文目录一览:

急急!!java中如何将 多个excel文件的sheet合并成 一个excel多sheet(内容中还有图片),求大神解答

创建 Excel.Application 对象

加载两个工作薄:

xlApp.Workbooks(1).Sheets(1).Move xlApp.WorkBooks(2).Sheets(2)

java 如何将多张JPG图片合成视频文件,比如:avi格式 或 mpg格式.

之前有做过图片合成视频的功能,大概代码就是这样,你可以看一下

/**

* 图片合成视频

* @param mp4SavePath 视频保存路径

* @param imageDir 图片地址

* @param rate 这个可以理解成视频每秒播放图片的数量

*/

public static boolean jpgToMp4(String mp4SavePath, String imageDir, double rate) {

FFmpegFrameRecorder recorder = null;

boolean flag = true;

try {

File[] files = FileUtils.fileSort(imageDir);

int [] widthArray = new int[files.length];

int [] heightArray = new int[files.length];

/**

* 获取合成视频图片的最大宽高,避免图片比例不一致最终合成效果差

*/

for (int i = 0; i files.length; i++) {

BufferedImage bufferedImage = ImageIO.read(files[i]);

widthArray[i] = bufferedImage.getWidth();

heightArray[i] = bufferedImage.getHeight();

}

/**

* 这个方法主要是防止图片比例达不到视频合成比例的要求,如果达不到下面条件视频则会无法播放

* 图片宽:必须要被32整除

* 图片高:必须要被2整除

*/

int [] maxWH = getImgMaxWH(widthArray,heightArray);

recorder = new FFmpegFrameRecorder(mp4SavePath,maxWH[0],maxWH[1]);

recorder.setVideoCodec(avcodec.AV_CODEC_ID_H264);

/**

* 视频质量:目前测试出来的是25-30最清晰,视频质量范围好像是0-40,具体可以自己慢慢测

*/

recorder.setVideoQuality(25);

recorder.setFormat("mp4");

recorder.setFrameRate(rate 0 ? rate : 1);

recorder.setPixelFormat(0);

recorder.start();

OpenCVFrameConverter.ToIplImage conveter = new OpenCVFrameConverter.ToIplImage();

/**

* 合成视频

*/

for(int i = 0; i files.length; i++ ){

opencv_core.IplImage image = cvLoadImage(files[i].getPath());

recorder.record(conveter.convert(image));

opencv_core.cvReleaseImage(image);

}

logger.info("合成成功");

} catch(Exception e) {

e.printStackTrace();

flag = false;

logger.error("合成失败");

} finally {

try {

if (recorder != null){

recorder.stop();

recorder.release();

}

} catch (FrameRecorder.Exception e) {

e.printStackTrace();

}

}

return flag;

}

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

public static void many2one(ListString 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图片合并的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java图片合并成一张thumbnailtor、java图片合并的信息别忘了在本站进行查找喔。

发布于 2023-03-31 10:03:37
收藏
分享
海报
40
目录

    忘记密码?

    图形验证码

    复制成功
    微信号: cloud7591
    如需了解更多,欢迎添加客服微信咨询。
    我知道了