我找不到任何軟件包來執行此操作。我知道PHP有很多PDF文件的庫(例如http://www.fpdf.org/),但Node有什麼用?我可以使用Node.js讀取PDF或Word文檔嗎?
回答
調用它,您可以輕鬆地將一個到另一個,或使用例如.doc模板來生成.pdf文件,但您可能希望使用現有的Web服務來執行此任務。
這可以使用的Livedocx服務例如
要使用從節點這項服務來完成,見node-livedocx(聲明:我是這個節點模塊的作者)
看起來有一些PDF,但我沒有找到任何的Word。
像這樣的CPU綁定處理無論如何都不是Node的強項(即使用節點來完成任何其他語言,您不會獲得額外的好處)。一個實用的方法是找到一個好工具並從Node中使用它。
我聽到在辦公室好東西docsplit http://documentcloud.github.com/docsplit/
雖然它不是節點,你可以很容易地從節點與http://nodejs.org/docs/latest/api/all.html#child_process.exec
純JS解決方案的優點是它的瀏覽器和節點 – sdgfsdh 2018-01-16 16:51:28
textract是一個偉大的LIB下支持PDF,Doc,Docx等
注意:textract將catdoc用於'.doc'文件,並且在Windows中不起作用。 – Tracker1 2014-12-29 22:23:28
節點辦公室並未處於積極發展階段(npm表示終結),hwile textract正在積極開發,截至2016年9月。 – steampowered 2016-09-11 20:20:20
我建議您查看unoconv爲您的初始轉換,這使用LibreOffice或OpenOffice的實際轉換。這增加了一些開銷。
我最好安裝幾個工人與所有的生活必需品的設置,並使用請求/響應隊列用於處理轉換...(可能要考慮kue或)
一般來說,這是一個應該被卸載的CPU限制和繁重的任務...... Pandoc和其他人特別提到.docx
,而不是.doc
,因此它們可能也可能不是選項。
注:我知道這個問題是舊的,只是想爲別人提供過這個即將到來的電流答案。
爲了解析PDF文件,您可以使用pdf2json節點模塊
它允許你轉換PDF文件,以JSON和原始文本數據。
如果您只需要從Word文檔進行轉換,另一個不錯的選擇是Mammoth.js。
猛獁是設計來轉換的.docx文檔,如Microsoft Word創建 ,並將其轉換爲HTML。猛獁象旨在通過使用文檔中的語義信息生成簡單且乾淨的HTML ,並忽略其他細節。例如,猛獁象將任何 段落的樣式標題1轉換爲h1元素,而不是 試圖完全複製標題的樣式(字體,文本大小,顏色等) 。
.docx所使用的結構與HTML結構之間存在很大的不匹配,這意味着轉換不太可能是對於更復雜的文檔而言完美的 。如果只有 使用樣式在語義上標記文檔,則猛獁象效果最佳。
您可以使用PDF文件的pdf文件。它會將文本從pdf中提取到文本「塊」的數組中。用於對結構化pdf文本進行模糊分析。
var pdfText = require('pdf-text')
var pathToPdf = __dirname + "/info.pdf"
pdfText(pathToPdf, function(err, chunks) {
//chunks is an array of strings
//loosely corresponding to text objects within the pdf
//for a more concrete example, view the test file in this repo
})
var fs = require('fs')
var buffer = fs.readFileSync(pathToPdf)
pdfText(buffer, function(err, chunks) {
console.log(chunks)
})
對於docx文件你可以使用猛獁象,它會從.docx文件中提取文本。
var mammoth = require("mammoth");
mammoth.extractRawText({path: "./doc.docx"})
.then(function(result){
var text = result.value; // The raw text
console.log(text);
var messages = result.messages;
})
.done();
我希望這會有所幫助。
這裏是展示瞭如何下載和使用PDF.js提取從PDF文本的示例:
import _ from 'lodash';
import superagent from 'superagent';
import pdf from 'pdfjs-dist';
const url = 'http://unec.edu.az/application/uploads/2014/12/pdf-sample.pdf';
const main = async() => {
const response = await superagent.get(url).buffer();
const data = response.body;
const doc = await pdf.getDocument({ data });
for (const i of _.range(doc.numPages)) {
const page = await doc.getPage(i + 1);
const content = await page.getTextContent();
for (const { str } of content.items) {
console.log(str);
}
}
};
main().catch(error => console.error(error));
- 1. 使用c讀取Word文檔#
- 2. 是否可以使用ColdFusion將Microsoft Word文檔轉換爲PDF?
- 3. 我們可以使用php閱讀pdf文件的內容嗎?
- 4. 使用c#.net我們可以從word文件中讀取一行或符號
- 5. 帶Yii的PDF或Word創建文檔?
- 6. 我可以使用Win32 COM替換word文檔中的文本嗎?
- 7. Java Jsp - 我們可以將輸出保存爲PDF或Word文件嗎?
- 8. 我可以在siverlight中查看word文檔嗎?
- 9. 我可以在C#中修改一個Word '97文檔嗎?
- 10. 如何使用asp.net預覽word文檔或PDF?
- 11. 可以pdfbox或itextsharp或pdfsharp讀取損壞的pdf文件
- 12. Word/PDF - 合併文檔
- 13. 可以逐漸讀取使用FlateDecode過濾器的PDF流嗎?
- 14. 使用PHP從Word文檔創建可編輯的PDF
- 15. 我可以通過文檔對象將PDF上傳到SugarCRM嗎?
- 16. 我可以爲pdf文檔創建個人書籤嗎?
- 17. 我可以使用從文件中讀取的testng組嗎?
- 18. 我可以使用MPI中的API讀取遠程文件嗎?
- 19. 我可以使用Webassembly從磁盤讀取文件嗎?
- 20. 以只讀模式打開word文檔
- 21. 是否可以使用Perl讀取pdf文件中的文本?
- 22. 如何在matlab中讀取word文檔
- 23. VBA代碼讀取word文檔頁腳
- 24. 如何在asp.net中讀取word文檔
- 25. 在PHP中讀取word文檔
- 26. 讀取Word文檔的代碼
- 27. node.js可以取代Ruby嗎?
- 28. 使用VBA創建Word或XML文檔
- 29. 我可以將兩個Microsoft Word文檔可靠地與Subversion合併嗎?
- 30. 我可以使用Perl從PDF中提取表格嗎?
沒關係之間移植,這是緊張兒子。做得很好。 – Alan 2013-08-09 00:42:09