肥宅钓鱼网
当前位置: 首页 钓鱼百科

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

时间:2023-07-21 作者: 小编 阅读量: 1 栏目名: 钓鱼百科

=officeManager){officeManager.stop();}logger.info("关闭office转换成功!

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版本

安装流程:

  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

    推荐阅读
  • 睡前坚持4个好习惯有效防水肿 睡觉防水肿

    睡眠时候,人体依然代谢,需要补充一定的水分,否则第二天醒来,身体会出现脱水现象。一般选在睡前敲胆经,但是23点之后不要敲了,23点至1点是气血进入胆经的时候。经络淋巴按摩,不仅可以消除身体不适等症状,还可以瘦身减肥。

  • 11朵粉色玫瑰代表什么意思(11朵粉色玫瑰代表意思介绍)

    下面希望有你要的答案,我们一起来看看吧!粉红色的玫瑰优雅而浪漫,也因此常常代表着初恋。而深浅不同的粉红也有细微的区别,深粉红玫瑰代表感激和赞赏;浅粉红玫瑰代表温柔和钦佩,也可以表达同情之意。让11朵粉玫瑰代表的爱情,不仅一心一意,更百事合意。当爱情没有期限、没有伤感、没有烦恼时,你的她就是幸福女主角。

  • 莲藕的功效与作用(莲藕的功效与作用的功能与主治)

    莲藕即可生食也可以煮来吃,是常见的菜肴之一。莲藕的药用价值同样高,叶子和果实都能够入药。莲藕搭配一些食材一同食用的话可以帮助提升滋补的作用。莲藕的功效与作用一、莲藕的清热凉血功效作用莲藕是寒性食材,可以有清热凉血的作用。莲藕中还有单宁酸这个成分,大量的单宁酸能够帮助收缩血管,及时止血凉血。在出现摔伤,扭伤等问题时,可以吃些莲藕来帮助淤血排出,对身体也是极有好处的。

  • 五福星演员表名字(五福星演员表名字都有谁)

    接下来我们就一起去研究一下吧!五福星演员表名字《五福星组合》是由洪金宝执导的喜剧、动作、犯罪片,由洪金宝、曾志伟、吴耀汉、秦祥林、苗侨伟、冯淬帆主演。香港喜剧电影现在已经在电影界占据不可忽视的位置,已经是影迷贺岁电影不可缺少的一份菜,而无厘头电影的成功不得不让人注视他背后奠定这一结果的英雄,五福星是被大家公认的喜剧之王。

  • 30岁女人干性皮肤用哪种护肤品(到了40岁别太节俭)

    椰子油可以代替护发精华、护发素使用。洗完头之后的发尾,很干燥地涂抹护发精油,虽然在某一时间段看着很柔顺,但是滋润度还是不够,于是我喜欢用更有油性一些的椰子油替代护发精油。洗完头之后先吹干头发,等到头发大概不滴水了之后,再把发尾处涂抹厚厚的椰子油,再用保鲜膜包裹起来。

  • 沈阳交通违章后多久能查到(沈阳电子拍照违章几天可以查到)

    所以结合描述来看,沈阳汽车违章一般10天左右可以查到。交通管理局违章查询为你提供违法车辆及驾驶人违法查询功能,在本系统中用户可通过车辆的车牌号、驾驶人的档案号、驾驶人的驾驶证号等信息进行违法查询,在输入查询后,系统会以列表的形式列出用户查询的车辆或驾驶人的所有未处理违法纪录。

  • 鸭蛋酒糟腌制方法(酒糟腌咸鸭蛋的步骤)

    鸭蛋酒糟腌制方法材料:咸鸭蛋、新鲜的青红酒酒糟、食盐。红酒糟内倒入适量食用粗盐,搅拌均匀。将容器放至干燥通风阴凉处腌制至少1个月后即可食用。腌制时间完毕,将所有咸鸭蛋取出,洗净,煮熟以后放入冰箱冷藏保存,再洗净新鲜鸭蛋,风干水分以后,再加入50克食盐与酒糟调匀后,加入风干好的鸭蛋,继续腌制20-25天,每次完成一批咸鸭蛋都要加入第一次一半量的食盐。

  • 微信漂流瓶怎么加对方(微信漂流瓶加好友怎么使用)

    下面内容希望能帮助到你,我们来一起看看吧!微信漂流瓶怎么加对方打开并登录微信。进入微信主界面点击发现选项。任意进入一个聊天记录,点击右上角人头图标。进入该瓶友详细资料界面,点击打招呼,等待对方确认即可加好友。

  • 大唐王朝悲催的嫡长子(大唐王朝的敲钟人)

    唐宣宗大中十三年,公元859年年底,在离唐朝正式灭亡还有不到五十年的时间节点,我们的主人公抵达了京师,准备参加进士考试。当时在这里,他遇到了一位乐籍歌妓女子云英。罗隐以为以云英的美貌舞姿,是不是也应该早已嫁入富贵人家,不会仍奔波于风尘之中。罗隐用这首诗回答了云英,也同样用这首诗送给了自己一个答案。肆《蜂》不论平地与山尖,无限风光尽被占。黄巢起义失败后,局势渐有稳定。

  • 三叉戟真实三叉戟结局(结局是什么)

    三叉戟真实三叉戟结局结局:夏春生的死让三位退居二线的好友感到焦急,三人重新披挂上阵,当年的三叉戟再次回到战场。经验老到的他们并没有因为经历丰富而少栽跟头,因为这一次对手利用了新型犯罪技巧,三叉戟也是第一次见。三叉戟也曾被嚣张的犯罪分子挑拨离间,三人一度分崩离析,但警察地职责让他们重新合作,并解除了误会,并采取与时俱进的手段,将犯罪分子缉拿归案。