使用aspose进行word转pdf(liunx适用)
这里写自定义目录标题
- 依赖
- 安装到本地maven
- 引用代码示例
- 问题
依赖
无法自动引入,去网上下载一个aspose提取码: nnmr
安装到本地maven
First 配置pom文件
second 执行命令:mvn install:install-file -Dfile=C:\Users\ASUS\Desktop\U盘\word转pdf\aspose-words-15.8.0-jdk16.jar -DgroupId=com.aspose -DartifactId=aspose-words -Dversion=15.8.0 -Dpackaging=jar
<dependency><groupId>com.aspose</groupId><artifactId>aspose-words</artifactId><version>15.8.0</version></dependency>
引用代码示例
/*** @ProjectName: transform* @Package: com.qingyu.transform.utils* @ClassName: Word2PdfUtil* @Author: qingyu* @Description:* @Date: 2020/3/20 10:47* @Version: 1.0*/
import com.aspose.words.Document;
import com.aspose.words.License;
import com.aspose.words.SaveFormat;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;import java.io.*;public class Word2PdfUtil {/*** The constant LOG.**/private static final Logger LOG = LoggerFactory.getLogger(Word2PdfUtil.class);/*** 获取license** @return*/private static boolean getLicense() {boolean result = false;try {// 凭证String licenseStr ="<License>\n" +" <Data>\n" +" <Products>\n" +" <Product>Aspose.Total for Java</Product>\n" +" <Product>Aspose.Words for Java</Product>\n" +" </Products>\n" +" <EditionType>Enterprise</EditionType>\n" +" <SubscriptionExpiry>20991231</SubscriptionExpiry>\n" +" <LicenseExpiry>20991231</LicenseExpiry>\n" +" <SerialNumber>8bfe198c-7f0c-4ef8-8ff0-acc3237bf0d7</SerialNumber>\n" +" </Data>\n" +" <Signature>sNLLKGMUdF0r8O1kKilWAGdgfs2BvJb/2Xp8p5iuDVfZXmhppo+d0Ran1P9TKdjV4ABwAgKXxJ3jcQTqE/2IRfqwnPf8itN8aFZlV3TJPYeD3yWE7IT55Gz6EijUpC7aKeoohTb4w2fpox58wWoF3SNp6sK6jDfiAUGEHYJ9pjU=</Signature>\n" +"</License>";InputStream license = new ByteArrayInputStream(licenseStr.getBytes("UTF-8"));License asposeLic = new License();asposeLic.setLicense(license);result = true;} catch (Exception e) {LOG.error("error:", e);}return result;}/*** Word 2 pdf.** @param pdfFilePath the pdf file path*/public static void word2Pdf( String pdfFilePath) {FileOutputStream fileOS = null;// 验证Licenseif (!getLicense()) {LOG.error("验证License失败!");return;}File inputWord = new File("C:/Users/Administrator/Desktop/测试.docx");try {//此处处理乱码和小方块//如果在本地运行,此处报错,请注释这个这是字体,主要是为了解决linux环境下面运行jar时找不到中文字体的问题FontSettings.getDefaultInstance().setFontsFolders(new String[] {"/usr/share/fonts", "/usr/share/fonts/chinese"}, true);Document doc = new Document(new FileInputStream(inputWord));fileOS = new FileOutputStream(new File(pdfFilePath));// 保存转换的pdf文件doc.save(fileOS, SaveFormat.PDF);} catch (Exception e) {LOG.error("error:", e);} finally {try {if(fileOS != null){fileOS.close();}} catch (IOException e) {LOG.error("error:", e);}}}public static void main(String[] args) {word2Pdf("C:/Users/Administrator/Desktop/测试.pdf");}
}
问题
本地测试正常,Linux还是乱码
原因:
(1)Linux服务器上没有安装对应的中文字体,参考
(2)字体并不是被所有用户通用的
(3)没有构建字体索引,没有刷新字体路径缓存
解决:
百度Linux安装中文字体,之后,运行命令看看是否能看到中文字体
安装了中文字体还是乱码
原因:在Linux上运行Jar无法找到中文字体,可以在代码里面添加路径指向中文字体文件夹
使用aspose进行word转pdf(liunx适用)相关推荐
- Java项目在Linux环境使用aspose把word转pdf乱码问题
Java项目在Linux环境使用aspose把word转pdf乱码问题 一.问题 在项目中有word转pdf并展示的功能,在本地的windows环境下没有问题.但是放在Linux中部署运行,生成的pd ...
- aspose实现word转pdf带书签
aspose实现word转pdf带书签 直接上代码 public static void word2Pdf(String inputUrl, String outUrl) {try {Document ...
- java word转pdf,docx4j转pdf,docx4j导出pdf乱码,docx4j导出pdf丢失插画和图片,aspose将word转pdf 一共两种方法
前言:一共有docx4j转pdf,aspose转pdf两种方式,不需要设置模板!!! java转pdf目前本人使用有两种方法,下面是方法代码 ps:因为本人是云桌面开发,所以只作截图,具体代码需要自己 ...
- 利用aspose转word为PDF实现文档在线预览
原始需求 java-web and 小程序 项目某页面,用户在支付前生成在线合同,并且签订电子签名,并且可以提供PDF在线预览和下载功能. 分析问题 既然是在线合同,肯定就需要靠模板来生成,这里我使用 ...
- java通过aspose实现word转pdf,加水印
引入jar <!-- word转pdf--><dependency><groupId>com.aspose.words</groupId><art ...
- aspose,word转pdf,及破解思路
最近项目里碰到这样一个问题,需要把doc格式的文档转换为pdf,我领导本来是准备先上传到百度云,然后获取百度云的略缩图(其实就是pdf) 搞了几天,各种验证码,校验码,折腾的我头疼,最终查看了百度云的 ...
- aspose将word转为pdf
aspose文件转换功能非常方便,文件也不会出现乱码,内容丢失的情况. 相关jar和license.xml下载地址:https://download.csdn.net/download/qq_3167 ...
- Linux环境aspose插件word转pdf中文乱码解决方案
目录 1 问题描述 2 问题原因 3 解决方案1:环境解决 4 解决方案2:代码解决 1 问题描述 在centos服务器使用aspose.word转换word文件为pdf的时候显示中文乱码,但是在wi ...
- aspose将word转换为pdf[aspose.word.java 18.11]
aspose.words.java for 18.11 前言:由于网上找的aspose.word存在许多问题,主要是存在水印,破解版献上,互相交流学习.有问题可联系我微信(shiguangxuanya ...
最新文章
- TensorRT Samples: MNIST
- Service应用场景分析
- mysql增量备份保留策略_Mysql备份策略-完成备份+增量备份shell
- 协议簇: Media Access Control(MAC) Frame 解析
- 数字滤波器(一)--IIR与FIR的基本结构与MATLAB实现
- pytorch修改tensor数据类型
- 倒计时电路multisim10s_multisim10秒倒计时器
- java bartender_BarTender Web Print Server可用的打印方法
- 程序员吐槽的“面试造火箭、工作拧螺丝”,用应聘司机的场景还原当下奇葩的面试
- android 截屏分享权限,android 截屏+保存图片+权限
- 要写好综述类论文?这几个点你需要注意
- Oracle的SQL注入
- 迪斯尼乐拍通照片抓取
- 钢绞线的弹性模量的计算方法_钢绞线伸长量计算方法.doc
- java将uuid转换成大写,python生成大写32位uuid代码
- linux命令pp,linux命令 $- 是什么意思
- Python基础2——open函数
- 新概念二-非谓语动词
- 中兴通讯:远端射频模块(RRU)关键技术创新及发展趋势
- php框架语法,PHP框架之ThinkPHP框架
热门文章
- 【小程序】如何解决小程左滑删除功能ios的橡皮筋回弹
- springboot基于javaweb校园防疫管理系统毕业设计源码021043
- iOS开发面试知识整理 – OC基础 (二)
- 一文让你搞懂什么是Redis集群
- 电脑有GPU,安装tensorflow-GPU后运行代码,GPU利用率基本为0,而CPU利用流程占满了
- 看这一篇,你还不会Linux吗?
- 遗传算法中交叉方法简介及基于适应度的启发式多点交叉
- VLC播放器在Ubuntu-18.04上的安装
- 用华为模拟器ENSP编写一个电子信息学院数据中心网络及机房规划设计(路由毕业设计)(思科配置电子信息学院数据中心网络及机房规划设计也有)
- 关于代码布局(Coding Layout)