2017-03-07 104 views
1

我使用的是HTML to PDF converter that uses phantomjs和方式來使用它是這樣的:如何在客戶端運行PhantomJS?

npm install -g html-pdf 

var fs = require('fs'); 
var pdf = require('html-pdf'); 
var html = fs.readFileSync('./test/businesscard.html', 'utf8'); 
var options = { format: 'Letter' }; 

pdf.create(html, options).toFile('./businesscard.pdf', function(err, res) { 
    if (err) return console.log(err); 
    console.log(res); // { filename: '/app/businesscard.pdf' } 
}); 

,並在命令行狀html-pdf test/businesscard.html businesscard.pdf

現在我的問題是,如果我想使用的運行它它在客戶端,而不是通過命令行輸入,我可以使用它與一個按鈕或類似的東西。

我已經試過了,但我缺少像child_processfs(webpack problem but fixed)這樣的模塊。

有沒有辦法在客戶端做到這一點?

回答

2

有沒有辦法在客戶端做到這一點?

取決於您對客戶的定義。如果你的意思是瀏覽器,那麼不,不可能*。如果您的業務流程允許創建和分發獨立的桌面應用程序,那麼可以。

我可以使用它與一個按鈕或類似的東西。

您可以使用框架來構建桌面應用程序,如NW.jsElectron。作爲基本的node.js應用程序,它們允許使用任何節點模塊,以及使用HTML和CSS進行簡單GUI構建的好處。


*還有一種方法可以在瀏覽器中實現 - 將其轉化爲web服務。您可以通過一個帶有按鈕的網頁來觸發啓動html-pdf腳本的服務器端腳本。 「

+0

」您可以通過一個帶有按鈕的網頁來觸發啓動html-pdf腳本的服務器端腳本。「你的意思是將運行一個shell腳本的代碼? – FewFlyBy