当前位置: 首页 > news >正文

做网站学响应式网站建设模板

做网站学,响应式网站建设模板,淘宝购物网站,温州外发加工网该方法可以选择多个图片是否合并为一个pdf输出#xff0c;也可以选择图片为横向或者纵向输出#xff0c;也可以选择pdf页面为A3或者A4 第一步 dependencygroupIdorg.apache.pdfbox/groupIdartifactIdpdfbox/artifactIdversion…该方法可以选择多个图片是否合并为一个pdf输出也可以选择图片为横向或者纵向输出也可以选择pdf页面为A3或者A4  第一步 dependencygroupIdorg.apache.pdfbox/groupIdartifactIdpdfbox/artifactIdversion2.0.24/version/dependency 第二步 package com.example.demo.file.pdf;import org.apache.pdfbox.pdmodel.PDDocument; import org.apache.pdfbox.pdmodel.PDPage; import org.apache.pdfbox.pdmodel.PDPageContentStream; import org.apache.pdfbox.pdmodel.common.PDRectangle; import org.apache.pdfbox.pdmodel.graphics.image.PDImageXObject;import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.Arrays; import java.util.List;public class ImageConditionToPdfConverter {private static final ListString SUPPORTED_IMAGE_SUFFIXES Arrays.asList(png, jpg, jpeg, gif, bmp, tiff);public static void main(String[] args) {String imagesFolder C:\\Users\\EDY\\Desktop\\测试图片; // 图片文件夹路径String outputFolder C:\\Users\\EDY\\Desktop\\output; // 输出PDF文件夹路径boolean mergePdf true; // 是否将所有图片合并到同一个PDF文件中boolean landscape false; // 图片布局方向横向为true纵向为falseString pageSize A4; // 页面大小可以是A3或A4ListFile imageFiles getImageFiles(imagesFolder, SUPPORTED_IMAGE_SUFFIXES);ensureOutputDirectoryExists(outputFolder); // 确保输出目录存在try {if (mergePdf) {// 如果合并到同一个PDF创建一个文档并添加所有页面PDDocument document new PDDocument();for (File imageFile : imageFiles) {PDPage page createPage(pageSize, landscape);document.addPage(page);PDImageXObject pdImage PDImageXObject.createFromFile(String.valueOf(imageFile), document);PDPageContentStream contentStream new PDPageContentStream(document, page);drawImage(contentStream, pdImage, page.getMediaBox(), landscape);contentStream.close();}document.save(outputFolder \\output.pdf);document.close();} else {// 如果不合并到同一个PDF为每个图片创建一个文档for (File imageFile : imageFiles) {PDDocument document new PDDocument();PDPage page createPage(pageSize, landscape);document.addPage(page);PDImageXObject pdImage PDImageXObject.createFromFile(String.valueOf(imageFile), document);PDPageContentStream contentStream new PDPageContentStream(document, page);drawImage(contentStream, pdImage, page.getMediaBox(), landscape);contentStream.close();document.save(outputFolder \\output_ imageFiles.indexOf(imageFile) .pdf);document.close();}}System.out.println(PDF created successfully!);} catch (IOException e) {e.printStackTrace();}}private static PDPage createPage(String pageSize, boolean landscape) {PDRectangle mediaBox A3.equalsIgnoreCase(pageSize) ? PDRectangle.A3 : PDRectangle.A4;PDPage page new PDPage(mediaBox);if (landscape) {page.setRotation(90);}return page;}private static void drawImage(PDPageContentStream contentStream, PDImageXObject pdImage, PDRectangle mediaBox, boolean landscape) throws IOException {float imageWidth pdImage.getWidth();float imageHeight pdImage.getHeight();float pageWidth mediaBox.getWidth();float pageHeight mediaBox.getHeight();if (landscape) {float temp pageWidth;pageWidth pageHeight;pageHeight temp;}float scale Math.min(pageWidth / imageWidth, pageHeight / imageHeight);imageWidth * scale;imageHeight * scale;// Center the image on the pagefloat x (pageWidth - imageWidth) / 2;float y (pageHeight - imageHeight) / 2;contentStream.drawImage(pdImage, x, y, imageWidth, imageHeight);}private static ListFile getImageFiles(String folderPath, ListString supportedSuffixes) {File folder new File(folderPath);File[] files folder.listFiles();if (files ! null) {ListFile imageFiles new ArrayList();for (File file : files) {if (file.isFile() isImage(file, supportedSuffixes)) {imageFiles.add(file);}}return imageFiles;}return new ArrayList();}private static boolean isImage(File file, ListString supportedSuffixes) {String fileName file.getName().toLowerCase();return supportedSuffixes.stream().anyMatch(fileName::endsWith);}private static void ensureOutputDirectoryExists(String directoryPath) {File directory new File(directoryPath);if (!directory.exists()) {directory.mkdirs();}} }
http://www.w-s-a.com/news/528043/

相关文章:

  • 用三权重的网站做友链有好处没企业年金怎么查询
  • 工行网站跟建设网站区别wordpress加入地图
  • 网站的风格对比信息表广告门
  • 教育网站建设毕业设计说明书门户网站模式
  • 洛阳霞光建设网站html做分模块的网站
  • 域名建议网站wordpress 伪静态html
  • 网站风格化设计方案免费模式营销案例
  • 凤翔网站建设农村建设自己的网站首页
  • 怎样用网站做单笔外贸建筑设计公司合作加盟
  • 建网站买的是什么网站开发三层结构
  • wordpress图纸管理网站2345网址导航智能主版
  • 想调用等三方网站数据该怎么做培训课程
  • 高端营销网站建设wordpress咨询
  • 网站搜索框如何做创业怎么做网站
  • 网站手机版管理链接产品推广找哪家公司
  • vuejs 可做网站吗蜘蛛互联网站建设
  • 沈阳网站备案查询17zwd一起做业网站
  • 石家庄大型公司建站广州设计网站培训学校
  • 如何让百度收录中文域名网站wordpress前台管理评论
  • 铁岭 建筑公司网站 中企动力建设佛山app开发公司
  • 网站开发用的电脑深圳专业网站建设服务
  • 内容营销价值wordpress博客优化插件
  • 最优惠的郑州网站建设淘宝网商城
  • 做封面网站企业网站优化服务商
  • 电子商务网站设计是什么蚌埠铁路建设监理公司网站
  • .name后缀的网站做房产网站多少钱
  • 手机上传网站源码网站app封装怎么做
  • 做的网站放在阿里云网站建设投标书范本
  • 做文化传播公司网站wordpress仿简书
  • 什么网站有题目做西宁网站制作哪里好