项目简介
goFileView是受kkFileView启发而开发的在线文件预览系统,采用Go语言实现,使用kkFileView的前端页面。目前项目处于起步阶段,未来会不断完善。该系统主要支持Word、Excel、PPT和PDF文件的在线预览,适用于文档共享、在线办公等场景。
项目的主要特性和功能
- 支持多种文件格式,包括Word、Excel、PPT和PDF文件。
- 具备文件转码功能,可将Word、Excel、PPT文件转码为PDF,也能把PDF文件转码为图片。
- 支持在网页上直接预览上述格式的文件。
- 部署简单,提供Docker快速部署方案。
- 集成方便,可通过引入Go语言包集成到自己的项目中。
安装使用步骤
前提条件
假设用户已经下载了本项目的源码文件。
使用Docker快速部署
- 拉取镜像:
sudo docker pull leeli73/gofileview
- 访问系统:直接访问
http://127.0.0.1:1180/
即可使用goFileView。
部署编译
Windows版
- 准备工作
- 编译
- 进入项目目录:
cd goFileView
- 执行编译命令:
go build
- 进入项目目录:
- 运行
- 运行可执行文件:
goFileView.exe
- 访问预览链接:
http://127.0.0.1:8089/perview/onlinePreview?url=被预览文件的url
(例如http://127.0.0.1:8089/perview/onlinePreview?url=http://127.0.0.1:88/test.docx
)
- 运行可执行文件:
Linux版
- 准备工作
- 安装Libreoffice:
sudo apt install libreoffice
- 安装ImageMagick:
sudo apt install imagemagick
- 修改ImageMagick的配置,编辑
etc/ImageMagick-6/policy.xml
,将<policy domain="coder" rights="none" pattern="PDF" />
修改为<policy domain="coder" rights="read|write" pattern="PDF" />
,并在下方新增一行<policy domain="coder" rights="read|write" pattern="LABEL" />
,然后保存退出。 - 若出现乱码,需安装字体。打包一台Windows机器的
C:\Windows\Fonts
下的所有文件,发送到Linux机器上,解压后进入Fonts文件夹,依次执行mkfontscale
、mkfontdir
、fc-cache
。
- 安装Libreoffice:
- 编译
- 进入项目目录:
cd goFileView
- 执行编译命令:
go build
- 进入项目目录:
- 运行
- 运行可执行文件:
./goFileView
- 访问预览链接:
http://127.0.0.1:8089/perview/onlinePreview?url=被预览文件的url
(例如http://127.0.0.1:8089/perview/onlinePreview?url=http://127.0.0.1:88/test.docx
)
- 运行可执行文件:
在自己的项目中集成
- 示例代码 ```go package main
import( "net/http" )
func index(w http.ResponseWriter, r *http.Request) { w.Write([]byte("I'm Index")) }
func main(){ perview.Init("/perview/","no") //初始化 http.HandleFunc("/index",index) http.HandleFunc("/perview/",perview.Handle) //绑定到preview的Handle http.ListenAndServe(":80", nil) } ```
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】