这篇文章主要介绍Java如何将Word转为PDF/Html/图片/XPS/SVG,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
Spire.Cloud.SDK for Java API提供了ConverApi接口支持将Word文档转换为多种文档格式,包括将Word转为PDF、Html、位图Bitmap(JPEG/BMP/ PNG)、矢量图Vectorgraph(支持WMF/SVG)、XPS、PostScript、PCL、dotx、dotm、docm、odt、wordxml、wordml、doc、docx、rtf、epub等等。
步骤一、导入jar文件
创建Maven项目程序,通过maven仓库下载导入。以IDEA为例,新建Maven项目,在pom.xml文件中配置maven仓库路径,并指定spire.cloud.sdk的依赖,如下:
<repositories> <repository> <id>com.e-iceblue</id> <name>cloud</name> <url>http://repo.e-iceblue.cn/repository/maven-public/</url> </repository> </repositories> <dependencies> <dependency> <groupId> cloud </groupId> <artifactId>spire.cloud.sdk</artifactId> <version>3.5.0</version> </dependency> <dependency> <groupId> com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.8.1</version> </dependency> <dependency> <groupId> com.squareup.okhttp</groupId> <artifactId>logging-interceptor</artifactId> <version>2.7.5</version> </dependency> <dependency> <groupId> com.squareup.okhttp </groupId> <artifactId>okhttp</artifactId> <version>2.7.5</version> </dependency> <dependency> <groupId> com.squareup.okio </groupId> <artifactId>okio</artifactId> <version>1.6.0</version> </dependency> <dependency> <groupId> io.gsonfire</groupId> <artifactId>gson-fire</artifactId> <version>1.8.0</version> </dependency> <dependency> <groupId>io.swagger</groupId> <artifactId>swagger-annotations</artifactId> <version>1.5.18</version> </dependency> <dependency> <groupId> org.threeten </groupId> <artifactId>threetenbp</artifactId> <version>1.3.5</version> </dependency> </dependencies>
完成配置后,点击“Import Changes” 即可导入所有需要的jar文件。如果使用的是Eclipse,可参考这里的导入方法。
导入结果:
步骤二、登录冰蓝云账号,创建文件夹,上传文档
步骤三、创建应用程序,获取App ID及App Key
完成以上步骤后,可参考以下代码示例进行文档转换。
步骤四、代码示例
1. Word转为PDF
将Word转为PDF时,可通过convert()方法直接指定转换的格式为PDF格式,或者通过convertToPdf()方法在转换成PDF时嵌入字体文件到PDF。
1.1 直接通过convert()方法转换,这里转换可支持除PDF格式外,其他多种文件格式
import spire.cloud.word.sdk.client.ApiException; import spire.cloud.word.sdk.client.Configuration; import spire.cloud.word.sdk.client.api.ConvertApi; public class WordToPDF { //配置App账号信息 static String appId = "App ID"; static String appKey = "App Key"; static String baseUrl = "https://api.e-iceblue.cn"; static Configuration wordConfiguration = new Configuration(appId, appKey, baseUrl); static ConvertApi convertApi = new ConvertApi(wordConfiguration); public static void main(String[] args) throws ApiException { String name = "Test.docx";//用于测试的Word源文档 String format = "pdf";//转换的目标文档格式,具体可包括多种文档格式,如postScript, pcl, dot, dotx, dotm, docm, odt, wordxml, wordml, pdf, doc, docx, rtf, epub, xps, html String password = null;//源文档密码 String folder = "input";//源文档所在文件夹 String storage = null;//冰蓝云提供的2G免费存储空间 String destFilePath = "output/convertWordToPDF.pdf";//转换后的结果文档路径(这里保存在output文件夹下) //调用方法转换文档格式 convertApi.convert(name, format, destFilePath, password, folder, storage); } }
1.2转换时,嵌入字体文件
import spire.cloud.word.sdk.client.*; import spire.cloud.word.sdk.client.api.ConvertApi; import spire.cloud.word.sdk.client.model.PrivateFont; import java.util.ArrayList; import java.util.List; public class WordToPDF { //配置App账号信息 static String appId = "App ID"; static String appKey = "APP Key"; static String baseUrl = "https://api.e-iceblue.cn"; static Configuration wordConfiguration = new Configuration(appId, appKey, baseUrl); static ConvertApi convertApi = new ConvertApi(wordConfiguration); public static void main(String[] args) throws ApiException{ String name = "Test.docx";//用于测试的Word源文档 String password = null;//源文档密码 String folder = "input";//源文档所在文件夹 String storage = null;//冰蓝云提供的2G免费存储空间 String destFilePath = "output/convertWordToPdf.pdf";//转换后的结果文档路径(这里保存在output文件夹下) //当系统上没有安装Word文档中使用的字体时,可以通过加载字体文件将字体添加到pdf文档中,以便绘制文本 List<PrivateFont> privateFonts = new ArrayList<PrivateFont>(); privateFonts.add(new PrivateFont("华文中宋", "input/STZHONGS.ttf")); privateFonts.add(new PrivateFont("consola", "input/consola.ttf")); //调用方法将Word转为PDF convertApi.convertToPdf(name, destFilePath, password, folder, storage, privateFonts); } }
2. Word转Html
这里转为Html同样也可以通过1.1里面的转换方法,或者通过convertToHtml()方法来转换
import spire.cloud.word.sdk.client.ApiException; import spire.cloud.word.sdk.client.Configuration; import spire.cloud.word.sdk.client.api.ConvertApi; public class WordToHtml { //配置App账号信息 static String appId = "App ID"; static String appKey = "App Key"; static String baseUrl = "https://api.e-iceblue.cn"; static Configuration wordConfiguration = new Configuration(appId, appKey, baseUrl); static ConvertApi convertApi = new ConvertApi(wordConfiguration); public static void main(String[] args) throws ApiException{ String name = "Test.docx";//用于测试的Word源文档 String password = null;//源文档密码 String folder = "input";//源文档所在文件夹 String storage = null;//冰蓝云提供的2G免费存储空间 String destFolder = "output/convertWordToHtml.html";//结果文档路径 //调用方法将Word转为HTML convertApi.convertToHtml(name, destFolder, password, folder, storage); } }
3. Word转图片
转为图片时,支持将Word转为位图convertToBitmap()、矢量图convertToVectorgraph()
import spire.cloud.word.sdk.client.ApiException; import spire.cloud.word.sdk.client.Configuration; import spire.cloud.word.sdk.client.api.ConvertApi; public class WordToImage { //配置App账号信息 static String appId = "App ID"; static String appKey = "App Key"; static String baseUrl = "https://api.e-iceblue.cn"; static Configuration wordConfiguration = new Configuration(appId, appKey, baseUrl); static ConvertApi convertApi = new ConvertApi(wordConfiguration); public static void main(String[] args) throws ApiException { String name = "Test.docx";//用于测试的Word源文档 String imageFormat = "png";//指定转换后的目标文档格式,支持jpeg, bmp, png String password = null;//源文档密码 String folder = "input";//源文档所在文件夹 String storage = null;//冰蓝云提供的2G免费存储空间 Integer startPage = null; Integer pageCount = null; String destFolder = "output/ConvertWordToImage.png";//转换后的文档路径 //调用方法转为位图 convertApi.convertToBitmap(name, imageFormat, destFolder, password, folder, storage, startPage, pageCount); /*String name = "Test.docx";//Word源文档 String imageType = "svg";//指定转换后的目标文档格式,支持wmf, svg String password = null;//源文档密码 String folder = "input";//源文档所在文件夹 String storage = null; Integer startPage = null; Integer pageCount = null; String destFolder = "output/ConvertWordToVectorgraph.svg";//转换后的结果文档路径 //调用方法转为矢量图 convertApi.convertToVectorgraph(name, imageType, destFolder, password, folder, storage, startPage, pageCount);*/ } }
以上是“Java如何将Word转为PDF/Html/图片/XPS/SVG”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。