4.2 启动服务soffice --headless --accept="socket,host=127.0.0.1,port=8100;urp;" --nofirststartwizard &
(进入安装目录:/opt/openoffice4/program
3.移植到linux版本进行测试,解决编码问题 100%
代码:
import java.io.File; import java.net.ConnectException; import java.util.Date; import com.artofsolving.jodconverter.DocumentConverter; import com.artofsolving.jodconverter.openoffice.connection.OpenOfficeConnection; import com.artofsolving.jodconverter.openoffice.connection.SocketOpenOfficeConnection; import com.artofsolving.jodconverter.openoffice.converter.OpenOfficeDocumentConverter; public class DOC2PDFUtil extends java.lang.Thread { private File inputFile;// 需要转换的文件 private File outputFile;// 输出的文件 public DOC2PDFUtil(File inputFile, File outputFile) { this.inputFile = inputFile; this.outputFile = outputFile; } public void docToPdf() { Date start = new Date(); // 链接 一个运行在8100端口的OpenOffice.org 实例 OpenOfficeConnection connection = new SocketOpenOfficeConnection(8100); try { connection.connect(); // 创建一个converter对象并转换格式 DocumentConverter converter = new OpenOfficeDocumentConverter(connection); converter.convert(inputFile, outputFile); } catch (ConnectException cex) { cex.printStackTrace(); } finally { // close the connection if (connection != null) { // 关闭连接 connection.disconnect(); connection = null; } } } /** * 由于服务是线程不安全的,所以……需要启动线程 */ public void run() { this.docToPdf(); } public File getInputFile() { return inputFile; } public void setInputFile(File inputFile) { this.inputFile = inputFile; } public File getOutputFile() { return outputFile; } public void setOutputFile(File outputFile) { this.outputFile = outputFile; } /** * 测试main方法 * @param args */ public static void main(String[] args) { // File inputFile = new File("D:\\officeToPdf\\部门介绍.pptx"); // File outputFile = new File("D:\\officeToPdf\\部门介绍.pdf"); File inputFile = new File("111.pptx"); File outputFile = new File("111.pdf"); DOC2PDFUtil dp=new DOC2PDFUtil(inputFile,outputFile); dp.start(); } }
乱码问题:
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://www.blogbus.com/ericyuen-logs/7650496.html
闲来无事想在Linux下看看原来《嵌入式操作系统》课程的PPT,由于是MS PPT格式的,因此使用Open Office打开时字体部分显示乱码。在网上查找解决方案,发现还是比较容易解决的,方法如下,基本思想是字体替换:
1. 将Windows下的字体C:\Windows\Fonts\simsun.ttc
拷贝到 /usr/lib/openoffice.org1.9.104/share/fonts/truetype/simsun.ttc
2. restart OpenOffice卸载:
rpm -e `rpm -qa |grep openoffice` `rpm -qa |grep ooobasis`
标签: 启动openoffice服务it |
分类:java |
1、安装OpenOffice 4:下载路径:http://www.openoffice.org/download/index.html
2、用以下命令启动OpenOffice服务
cd D:\Program Files (x86)\OpenOffice 4\program
soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;"-nofirststartwizard
linux下:
cd /opt/openoffice4/program
./soffice"-accept=socket,host=localhost,port=8100;urp;StarOffice.ServiceManager"-nologo -headless -nofirststartwizard &