==================================

今天給大家分享一款我借助 AI 開發的開源 Office 檔案預覽 SDK。

圖片

我把它命名為 jit-Viewer,剛好與我們做的 JitWord 協同 AI 文件相呼應。它主要的功能是在瀏覽器中一鍵預覽 .docx、PDF、Excel、PPT、Markdown、Txt 等各種格式的檔案。

圖片

同時只需要 3 行程式碼,就可以輕鬆整合到 Vue、React、Angular、HTML 專案中。話不多說,先上開源位址。

github: github.com/jitOffice/j…
國內鏡像: gitee.com/lowcode-chi…
示範地址: jitword.com/jit-viewer.…

核心功能亮點

圖片

jit-viewer 不依賴後端轉換,而是直接在瀏覽器端解析 Office Open XML 格式(.docx/.xlsx/.pptx 的底層結構),最後透過 jit-viewer 封裝的渲染器渲染成可視化元件。PDF 預覽則是基於 PDF.js 做深度優化。

所以我們完全不依賴後端,目前支持的檔案預覽方式有:

  • 本地上傳檔案
  • 透過 URL 地址直接預覽檔案

這兩種方式基本上是使用者需求最多的方式。

總結幾個核心亮點,方便大家參考評估:

  1. 零後端依賴,純前端渲染:無需設定任何後端服務,靜態站點也能使用
  2. 框架無綁定:一個 SDK 同時支援 Vue/React/Angular,團隊技術棧切換無成本
  3. 隱私安全:檔案解析在瀏覽器本地完成,不上傳伺服器
  4. 效能優異:虛擬滾動 + Web Worker,大檔案不卡主執行緒
  5. 擴充性強:插件化架構,可自訂渲染器、加入浮水印、整合審批流程

這裡補充一條,目前預覽不僅在 PC 端,也支援行動裝置直接預覽:

圖片

充分滿足大家行動辦公的需求。

同時為了提供開發者對預覽樣式的控制,我還支援了預覽工具列:

  • 下載檔案
  • 縮放重置
  • 旋轉功能
  • 全螢幕
  • 主題切換
  • 取得檔案資訊

後續會持續優化更多可控功能供大家使用。

如何在本機使用

我在 jit-viewer 文件中寫了詳細的本機使用教學,接下來示範幾個基本步驟。

第一步,引入 SDK:

<link rel="stylesheet" href="jit-viewer.min.css">
<script src="jit-viewer.min.js"></script>

第二步,建立預覽容器:

<div id="viewer" style="width: 100%; height: 600px;"></div>

第三步,初始化實例:

// 建立預覽器實例
const viewer = JitViewer.createViewer({
  file: 'document.pdf',      // 檔案 URL
  filename: 'document.pdf',  // 檔名(可選)
  toolbar: true,             // 顯示工具列
  theme: 'light',            // 主題
  width: '100%',
  height: '600px',
  onReady: () => console.log('準備就緒'),
  onLoad: () => console.log('載入完成'),
  onError: (err) => console.error('錯誤:', err)
});

// 掛載到 DOM
viewer.mount('#viewer');

是不是非常簡單?只要 3 步,就能快速整合到你的系統中實現 Office 檔案預覽功能。

我在文件中也寫了詳細的 API 介紹,想要客製化 SDK 樣式和互動也可以參考文件:

圖片

文件地址: jitword.com/jit-viewer.…

小小總結一下

圖片

之所以要做這個專案,完全來自於之前客戶的一個需求。為了賦能客戶,我們便做了這個開源 SDK。

後續會繼續迭代優化,實現更多檔案類型的預覽功能,大家有好的建議也歡迎留言區交流回饋~

對於 AI,其實並非全程參與開發(尤其是複雜的業務需求),大家短期內不用過度神化 AI 的能力。

對於 SDK 的工程化方案(腳手架),我是完全交給 AI 來實作,同時從文件撰寫、網站 demo 的設計,也都是交給 AI 來處理,到這裡,AI 大約能替代 40% 左右的工作量。

我提供的是 SDK 的產品需求、設計思路、技術選型與設計風格,同時兼顧測試工程師的角色,這也是目前 AI 與人協作的常態。

所以技術能力仍然很重要,善用 AI 可以更有效率地輔助我們的工作與產品研發。

新的競爭力在於:架構設計的品味、安全風險的嗅覺、人機協作的智慧,以及對自己程式碼的深刻理解

github: github.com/jitOffice/j…


原文出處:https://juejin.cn/post/7618601991490322483


精選技術文章翻譯,幫助開發者持續吸收新知。

共有 0 則留言


精選技術文章翻譯,幫助開發者持續吸收新知。
🏆 本月排行榜
🥇
站長阿川
📝14   💬10   ❤️2
390
🥈
我愛JS
📝2   💬9   ❤️2
87
🥉
💬1  
4
評分標準:發文×10 + 留言×3 + 獲讚×5 + 點讚×1 + 瀏覽數÷10
本數據每小時更新一次
🔧 阿川の電商水電行
Shopify 顧問、維護與客製化
💡
小任務 / 單次支援方案
單次處理 Shopify 修正/微調
⭐️
維護方案
每月 Shopify 技術支援 + 小修改 + 諮詢
🚀
專案建置
Shopify 功能導入、培訓 + 分階段交付