`
xiaojundream
  • 浏览: 2249 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

aspose-words简易操作word文件转成pdf

    博客分类:
  • java
阅读更多
import com.aspose.words.*;
import com.deepoove.poi.XWPFTemplate;
import com.deepoove.poi.data.PictureRenderData;
import com.deepoove.poi.data.TextRenderData;
import com.deepoove.poi.data.style.Style;
import com.deepoove.poi.util.BytePictureUtils;

public static void main(String[] args) {
        try {
            String str = "/Users/xiaojundream/Desktop/general.docx";
            //XWPFTemplate 模版渲染  word 模板 
            XWPFTemplate template = XWPFTemplate.compile(str)
                    .render(initWordMap());


            ByteArrayOutputStream baos = new ByteArrayOutputStream();

            template.write(baos);

            byte[] bytes = baos.toByteArray();

            baos.close();
            Document doc = new Document(new ByteArrayInputStream(bytes));
           
            //添加 wps fonts字体  转换成PDF
            FontSourceBase[] fontSourceBases = FontSettings.getDefaultInstance().getFontsSources();
            ArrayList<FontSourceBase> fontSources = new ArrayList<>();
            for (int var3 = 0; var3 < fontSourceBases.length; ++var3) {
                fontSources.add(fontSourceBases[var3]);
            }
            FolderFontSource folderFontSource = new FolderFontSource("/Users/xiaojundream/Desktop".concat("/fonts"), true);
            fontSources.add(folderFontSource);
            FontSourceBase[] fonts = new FontSourceBase[fontSources.size()];

            FontSettings.getDefaultInstance().setFontsSources(fontSources.toArray(fonts));
            //将改好的 docx转成PDF
            doc.save("/Users/xiaojundream/Desktop/222.pdf",SaveFormat.PDF);
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }

//world模版操作
    private static Map<String, Object> initWordMap() {

        Map<String, Object> wordData = new HashMap<String, Object>();
       //checkbox :o->未打勾; R->打勾
        wordData.put("c".concat("006").concat("box1"), new TextRenderData("o",new com.deepoove.poi.data.style.Style("Wingdings",10)));
        wordData.put("c".concat("006").concat("box2"), new TextRenderData("R",new com.deepoove.poi.data.style.Style("Wingdings 2",10)));
//
        //普通的变量替换
        wordData.put("memberName", "张三");

        wordData.put("signatureOwnerDate", wordData.put("signatureDate", "____年__月__日"));
        //用于word签字  图片插入
        wordData.put("rentImage", new PictureRenderData(200, 50, ".png", BytePictureUtils.getUrlByteArray("https://xxx.com/9e728e4e-59f9-477a-a21c-442a4a3a0b58.png")));
        return wordData;
    }
分享到:
评论

相关推荐

    aspose aspose-words-23.3-jdk16 aspose-words-23.3-jdk16 aspose-w

    word java 导出 aspose aspose-words-23.3-jdk16word java 导出 aspose aspose-words-23.3-jdk16word java 导出 aspose aspose-words-23.3-jdk16word java 导出 aspose aspose-words-23.3-jdk16word java 导出 ...

    aspose-words-15.8.0_word转pdf_aspose-words15.8_aspose15.8_aspose-

    在实际应用中,Aspose.Words不仅支持基本的转换操作,还能处理复杂的布局、图像、表格和超链接等元素,确保转换后的PDF文件与原始Word文档保持一致。 在使用Aspose.Words进行Word到PDF转换时,需要注意的是,完整...

    aspose-words-15.8.0-jdk1.6

    aspose-words-15.8.0-jdk1.6aspose-words-15.8.0-jdk1.6aspose-words-15.8.0-jdk1.6aspose-words-15.8.0-jdk1.6aspose-words-15.8.0-jdk1.6aspose-words-15.8.0-jdk1.6aspose-words-15.8.0-jdk1.6aspose-words-...

    aspose-words-19.3-jdk17

    aspose-words-19.3-jdk17aspose-words-19.3-jdk17aspose-words-19.3-jdk17aspose-words-19.3-jdk17aspose-words-19.3-jdk17aspose-words-19.3-jdk17aspose-words-19.3-jdk17aspose-words-19.3-jdk17aspose-words-...

    aspose-words-15.8.0

    总的来说,"aspose-words-15.8.0"是面向Java开发者的一个高效、功能全面的解决方案,用于无水印的Word到PDF转换。结合`demo.java`提供的示例代码,开发者可以快速上手并集成到自己的项目中,提升文档处理的效率和...

    Word转PDF aspose-words-21.11-jdk17.jar 和示例

    Word转PDFjar包和使用...2.刷新依赖后,复制提供的java示例代码,修改代码中你要转换的Word的文件的路径,然后直接运行测试,即可到指定路径下看到转换后的PDF文件。 在示例方法中还包含了许可证(License)的设置。

    aspose-cad-19.5-pj.jar aspose-words-15.8.0.jar

    通过Aspose.CAD,开发人员可以轻松地将DWG文件转换为PDF,而Aspose.Words则可以将Word文档转换成高质量的PDF,保持原有的文字、图像和格式不变。 `AsposeUtils.java`工具类很可能是一个封装了Aspose库核心功能的...

    aspose-words-18.6

    在提供的文件列表中,"DocxToPdf.java"是一个示例代码文件,它演示了如何使用Aspose-Words库将DOCX文档转换为PDF。通常,这样的代码会包含初始化Aspose库、加载DOCX文件、配置转换选项以及执行转换的步骤。开发者...

    (java)aspose实现word转pdf,高清无水印.aspose-words-14.9.0-jdk16.jar,已测试正常

    要将Word文档转换为PDF,首先需要在项目中引入Aspose Words的JAR文件,即`aspose-words-14.9.0-jdk16.jar`。这可以通过将JAR添加到项目的类路径或使用构建工具如Maven或Gradle来完成。在Maven中,可以添加以下依赖:...

    aspose-words-15.8.0.rar

    首先,让我们关注一下“aspose-words-15.8.0.pom”文件。这是一个Maven项目对象模型(Project Object Model)文件,通常用于Java项目的构建和依赖管理。在Maven项目中,引入此POM文件意味着我们可以方便地将Aspose....

    去除水印aspose-words-16.8.0-jdk16.jar.zip

    【压缩包子文件的文件名称】"aspose-words-16.8.0-jdk16.jar"是库的核心文件,包含了所有必需的类和方法,开发者可以直接将这个JAR文件添加到他们的Java项目中,通过导入必要的类和方法,实现对文档水印的处理。...

    aspose-words-15.8.0-jdk16.jar

    aspose-words-15.8.0-jdk16.jar是Aspose对Word文档转换PDF所用的Jar包;aspose-words-15.8.0-jdk16.jar是Aspose对Word文档转换PDF所用的Jar包

    aspose-words-21.1-jdk17.jar jar包和示例

    aspose-words-21.1-jdk17.jar 处理word转pdf,无水印无文件大小限制,无使用时间限制,可以用于word编辑处理,转pdf等用途。 。由于aspose调用的时候有点消耗内存,操作大文件的时候可能会堆溢出,所以请先设置好...

    aspose-words-15.8.0-jdk16.jar 带license.xml

    aspose-words-15.8.0-jdk16.jar是Aspose对Word文档转换PDF所用的Jar包;aspose-words-15.8.0-jdk16.jar是Aspose对Word文档转换PDF所用的Jar包

    Java aspose-words jar包实现doc转pdf

    Java aspose-words jar包实现doc转pdf,完美兼容windows和linux系统,

    (java)aspose实现word转pdf,排版好无水印.aspose-words-14.9.0-jdk16.jar

    在给定的资源"(java)aspose实现word转pdf,排版好无水印.aspose-words-14.9.0-jdk16.jar"中,我们看到Aspose.Words的一个特定版本,适用于JDK 16,它不需要任何额外的许可证文件,可以直接去除水印。 Aspose.Words...

    aspose-words的jar

    这个"aspose-words的jar"文件是Aspose.Words库的Java版本,它提供了丰富的API接口,使得开发者可以在Java应用程序中方便地创建、编辑、转换和操作Word文档。 在Java开发中,JAR(Java Archive)文件是一种归档文件...

    aspose-words-15.8.0(jar和xml).zip

    在这个版本15.8.0中,我们关注的是针对Java平台的实现,即“aspose-words-15.8.0-jdk16.jar”文件,以及与之配套的“license.xml”文件,用于授权管理。 一、Aspose.Words for Java的核心功能 1. 文档创建:Aspose...

Global site tag (gtag.js) - Google Analytics