天天看點

Java如何實作文檔線上預覽

一、概述

二、java實作文檔線上預覽

2.1 永中dcs簡介

2.2 使用方式

2.3 centos安裝部署dcs服務

編輯java環境

安裝部署tomcat

部署dcs工程

安裝nginx

2.4 接口說明

上傳文檔

url預覽文檔

伺服器本地轉換

converttype參數取值說明

2.5 java實作文檔線上預覽

​ 公司主要負責政府方面的項目,也包括一些oa的項目。oa項目當中,最常見的功能就是需要和各種excel,word文檔打交道,比如需要實作文檔的下載下傳,列印,以及實時預覽功能。現有需求,需要用java實作,word文檔的線上預覽功能,格式包含.doc,.docx,工具不僅word,還要相容國産wps軟體。

​ 該部分内容順理成章的就成為我的任務,負責研究,然後形成一個技術方案來提供給開發人員。

​ 在某度,某oogle上瘋狂了解的相關内容後,最終定位于永中dcs,以此篇文章來提供技術方案。

官網位址:https://www.yozodcs.com/index.html

點選此處跳轉官網:永中dcs

永中文檔線上預覽軟體(document conversion service,簡稱dcs)是通過解析常用辦公文檔的格式,提供不同文檔格式間的互相轉換,實作常用格式文檔的閱讀等服務。 dcs能直接部署在windows或linux網絡作業系統上,與web 伺服器、郵件伺服器等配合,提供office文檔閱讀及批量轉換功能。永中dcs支援閱讀和轉換的文檔格式非常豐富,涵蓋微軟office 97~2016、pdf、uof和ofd等常用文檔格式,同時可根據使用者需求進行特定格式的合作。

我們通過官方的資料可以發現,其能提供的主要功能有:

解析文檔

文檔之間的格式轉換

線上預覽

多平台相容(windows,linux)皆可部署。

良好的擴充性,可相容其他web伺服器,郵件伺服器等。

多方文檔的支援(微軟的office,pdf等多種格式)

​ 永中文檔轉換元件和dcs伺服器兩種使用方式:前者是jar包調用(dcc),主要适合java語言調用;後者為http請求方式調用,支援各種開發語言以标準web服務方式提供調用,如搭配負載均衡伺服器,可部署到多台伺服器上并發使用,實作叢集部署。 在輸出網頁效果方面,新增高清版網頁效果支援。可在網頁中展示與office中顯示一緻的原版式、支援無極縮放和複制文本内容的高清版面效果。

​ 具體支援的格式有:

源格式

目标格式(圖像包括jpg、png、bmp、tiff等)

說明

xls、xlsx

html/pdf/uof/txt/csv/圖像/eio

微軟文檔格式

ppt、pptx

html/pdf/uof/txt/圖像/eio

doc、docx

rtf

rtf文檔格式

eio

html/pdf/uof/txt/圖像/doc/xls/ppt

永中office格式

uof、uos

html/pdf/txt/圖像/doc/xls/ppt

中文辦公軟體文檔标準格式

xml

xml文檔格式

pdf

png

adobe閱讀pdf文檔格式

office文檔

ofd

中文版式文檔格式

由此,我們可以發現,幾乎在日常工作中所使用的文檔,幾乎全部涵蓋在了其中。

了解了此款軟體後,我大呼一口氣,上司交代的任務,這下差不多已經有了交代,接下來就開始實戰了。

​ 因為公司項目主要釋出在centos伺服器上,是以需要在centos部署dcs服務。

首先,伺服器需要jdk環境,至少jdk8版本以上。

在oracle官網下載下傳jdk8到本地,下載下傳完成後,通過ftp方式或者rz 上傳檔案的方式,将jdk-8u60-linux-x64.tar.gz 檔案上傳至伺服器。

然後通過<code>tar -zxvf jdk-8u60-linux-x64.tar.gz</code>解壓檔案。并通過mv指令重命名檔案為jdk8。

此處我解壓在了/opt路徑下。接下來,需要配置java環境。

<code>vi /etc/profile</code>

新增如下内容:

配置檔案生效

檢測是否安裝成功:

若出現如下界面,則證明jdk配置成功!

Java如何實作文檔線上預覽

在tomcat官網下載下傳apache-tomcat-8.0.26.tar.gz檔案。

下載下傳完成後,通過ftp方式或者rz 上傳檔案的方式,将檔案上傳至伺服器。

解壓檔案:

将永中dcs工程目錄複制到tomcat 的webapp目錄下。

修改${tomcat.home}\conf\server.xml檔案.在host節點下增加如下參考代碼:

&lt;context docbase=“指向項目的根目錄所在的路徑” path=“虛拟目錄名” reloadable=“true”/ &gt;

根據需要修改項目中 ${dcs.web}\web-inf\config.properties和log4j.properties的配置。需要在目錄/usr/x11r6/lib/x11/fonts/truetype下加入字型檔案。

啟動tomcat後,通路http://localhost:8080/dcs.web 即可看到“線上文檔預覽示例”頁面。

進入 nginx 檔案夾 cd nginx-1.9.2

執行 ./configure 可能會遇到系統缺少庫

問題:

./configure: err: c compiler cc is not found

缺少gc++庫檔案

等待 complete

./configure: error: the http rewrite module requires the pcre library

等待complete

./configure:error: the http gzip module requires the zlib library

解決所有問題後 再次 解決所有問題後:

安裝完成後對/usr/local/nginx/conf/nginx.conf 配置檔案進行所需配置。

請求位址:

post http://伺服器位址/upload

例如:http://localhost:8080/dcs.web/upload

上傳您要線上預覽的文檔。

參數:

file - 檔案作為multi-part post請求參數,用于上傳本地文檔 (必須)

converttype - 轉換類型參數(必須)

post http://伺服器位址/onlinefile

downloadurl - 文檔url,用于預覽網絡文檔。此url應為編碼(utf-8 url-encoded)後的url。

converttype - 轉換類型參數

post http://伺服器位址/convert

inputdir - 文檔在伺服器上的路徑(相對于配置檔案中input的相對路徑)

mergeinput - 使用文檔合并功能時,需要合并的文檔路徑同inputdir

需要添加相關依賴,附上pom.xml依賴内容:

在idea中,建立test方法進行測試:

執行該test的main方法之後,在控制台會輸出轉換後的位址:

點選該位址後,即可線上預覽word檔案。

繼續閱讀