libreoffice如何导入文本(基于libreOffice的docdocxppt)

1、安装LibreOffice

2、代码实现

package com.szoa.util.pdf; import java.io.File; import java.util.regex.Pattern; import org.jodconverter.OfficeDocumentConverter; import org.jodconverter.office.DefaultOfficeManagerBuilder; import org.jodconverter.office.OfficeException; import org.jodconverter.office.OfficeManager; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class PDFConvert { private static String officeHomeDir = null; private final static Logger logger = LoggerFactory.getLogger(PDFConvert.class); /** * *@name 文档转换为pdf工具类 *@description 相关说明 支持:xls,xlsx,ppt,pptx,txt,其中doc,docx转换与原文件有较大差异,libreOffice 默认安装路径 *Linux:/opt/libreoffice6.0 *Windows:C:/Program Files (x86)/LibreOffice *Mac:/Application/openOfficeSoft *@time 创建时间:2018年9月17日下午1:49:18 *@param sourceFile 需要转换的原文件 *@param tarPdfFile 转换后的目标pdf文件 *@return *@throws OfficeException *@author myflea@163.com *@history 修订历史(历次修订内容、修订人、修订时间等) */ public static String doDocToFdpLibre(String sourceFile, String tarPdfFile) throws OfficeException { File inputFile = new File(sourceFile); String libreOfficePath = getOfficeHome(); DefaultOfficeManagerBuilder builder = new DefaultOfficeManagerbuilder(); builder.setOfficeHome(new File(libreOfficePath)); // 端口号 builder.setPortNumber(8100); builder.setTaskExecutionTimeout(1000 * 60 * 5L); // 设置任务执行超时为5分钟 builder.setTaskQueueTimeout(1000 * 60 * 60 * 24L); // 设置任务队列超时为24小时 OfficeManager officeManager = builder.build(); startService(officeManager); OfficeDocumentConverter converter = new OfficeDocumentConverter(officeManager); File outputFile = new File(tarPdfFile); converter.convert(inputFile, outputFile); stopService(officeManager); String pdfPath = outputFile.getPath(); return pdfPath; } private static String getOfficeHome() { if (null != officeHomeDir) { return officeHomeDir; } else { String osName = System.getProperty("os.name"); if (Pattern.matches("Windows.*", osName)) { officeHomeDir = "C:/Program Files (x86)/LibreOffice"; return officeHomeDir; } else if (Pattern.matches("Linux.*", osName)) { officeHomeDir = "/opt/libreoffice6.0"; return officeHomeDir; } else if (Pattern.matches("Mac.*", osName)) { officeHomeDir = "/Application/openOfficeSoft"; return officeHomeDir; } return null; } } private static void stopService(OfficeManager officeManager) throws OfficeException { if (null != officeManager) { officeManager.stop(); } logger.info("关闭office转换成功!"); } private static void startService(OfficeManager officeManager) { try { // 准备启动服务 officeManager.start(); // 启动服务 logger.info("office转换服务启动成功"); } catch (Exception ce) { logger.error("office转换服务启动失败!详细信息:{}", ce); } } /** * *@name 设置libreOffice安装目录 *@description 相关说明:如果libreOffice安装目录为默认目录,则不需要设置,否则需要设置 *@time 创建时间:2018年9月17日下午1:52:36 *@param officeHome *@author 作者 *@history 修订历史(历次修订内容、修订人、修订时间等) */ public static void setOfficeHome(String officeHome) { officeHomeDir = officeHome; } }

3、pom.xml 依赖

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.szoa</groupId> <artifactId>szoa-pdf-util</artifactId> <version>1.0.0</version> <packaging>jar</packaging> <name>soze-pdf-util</name> <url>http://maven.apache.org</url> <properties> <project.build.sourceencoding>UTF-8</project.build.sourceEncoding> </properties> <dependencies> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.8.0-alpha2</version> </dependency> <dependency> <groupId>org.jodconverter</groupId> <artifactId>jodconverter-core</artifactId> <version>4.0.0-RELEASE</version> </dependency> </dependencies> <build> <finalName>szoa-pdf-util-${project.version}</finalName> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>1.7</source> <target>1.7</target> <encoding>UTF-8</encoding> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <version>2.5.5</version> <configuration> <archive> <manifest> <mainClass>com.szoa.util.pdfmain.PdfDomain</mainClass> </manifest> </archive> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> </configuration> <executions> <execution> <id>make-assembly</id> <phase>package</phase> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin> </plugins> </build> </project>

4、安装libreOffice

  1. 下载 版本6.0.6windows版本

安装流程:

libreoffice如何导入文本(基于libreOffice的docdocxppt)(1)

libreoffice如何导入文本(基于libreOffice的docdocxppt)(2)

libreoffice如何导入文本(基于libreOffice的docdocxppt)(3)

libreoffice如何导入文本(基于libreOffice的docdocxppt)(4)

  1. 下载linux版本

rpm安装方式安装

tar -zxvf LibreOffice_6.0.6_Linux_x86-64_rpm.tar.gz

cd LibreOffice_6.0.6

cd LibreOffice_6.0.6.2_Linux_x86-64_rpm/

cd RPMS/

rpm -ivh *.rpm

[root@bogon RPMS]# rpm -ivh *.rpm

Preparing... ########################################### [100%]

1:libreoffice6.0-ure ########################################### [ 2%]

2:libobasis6.0-core ########################################### [ 5%]

3:libobasis6.0-base ########################################### [ 7%]

4:libobasis6.0-impress ########################################### [ 10%]

5:libobasis6.0-writer ########################################### [ 12%]

6:libobasis6.0-calc ########################################### [ 15%]

7:libobasis6.0-draw ########################################### [ 17%]

8:libobasis6.0-en-US ########################################### [ 20%]

9:libobasis6.0-images ########################################### [ 22%]

10:libreoffice6.0 ########################################### [ 24%]

11:libobasis6.0-math ########################################### [ 27%]

12:libobasis6.0-pyuno ########################################### [ 29%]

13:libobasis6.0-librelogo ########################################### [ 32%]

14:libreoffice6.0-math ########################################### [ 34%]

15:libreoffice6.0-base ########################################### [ 37%]

16:libreoffice6.0-calc ########################################### [ 39%]

17:libreoffice6.0-dict-en ########################################### [ 41%]

18:libreoffice6.0-dict-es ########################################### [ 44%]

19:libreoffice6.0-dict-fr ########################################### [ 46%]

20:libreoffice6.0-draw ########################################### [ 49%]

21:libreoffice6.0-en-US ########################################### [ 51%]

22:libreoffice6.0-impress ########################################### [ 54%]

23:libreoffice6.0-writer ########################################### [ 56%]

24:libobasis6.0-ogltrans ########################################### [ 59%]

25:libobasis6.0-postgresql########################################### [ 61%]

26:libobasis6.0-extension-########################################### [ 63%]

27:libobasis6.0-extension-########################################### [ 66%]

28:libobasis6.0-extension-########################################### [ 68%]

29:libobasis6.0-extension-########################################### [ 71%]

30:libobasis6.0-extension-########################################### [ 73%]

31:libobasis6.0-extension-########################################### [ 76%]

32:libobasis6.0-firebird ########################################### [ 78%]

33:libobasis6.0-gnome-inte########################################### [ 80%]

34:libobasis6.0-graphicfil########################################### [ 83%]

35:libobasis6.0-kde-integr########################################### [ 85%]

36:libobasis6.0-onlineupda########################################### [ 88%]

37:libobasis6.0-ooofonts ########################################### [ 90%]

38:libobasis6.0-ooolinguis########################################### [ 93%]

39:libobasis6.0-python-scr########################################### [ 95%]

40:libobasis6.0-xsltfilter########################################### [ 98%]

41:libreoffice6.0-freedesk########################################### [100%]

/usr/bin/update-desktop-database

/usr/bin/update-mime-database

mkdir: 无法创建目录"/usr/share/icons/hicolor/icon-theme.cache": 不是目录

mkdir: 无法创建目录"/usr/share/icons/hicolor/index.theme": 不是目录

/usr/bin/gtk-update-icon-cache

/usr/bin/gtk-update-icon-cache

/usr/bin/update-desktop-database

/usr/bin/update-desktop-database

默认安装目录:/opt/libreoffice6.0

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页