簡體   English   中英

wkhtmltopdf在OSX上打開一個應用程序,直到我專注於此應用程序后,它才完成工作

[英]wkhtmltopdf opens an application on OSX and doesn't finish its job till I focus this application

據我所知wkhtmltopdf使用的是Qt的修補版本,因此它可以不使用圖形服務器(例如Xorg等)執行,但是當我在OSX中運行它時,它會打開一個應用程序,它會在Dock中顯示,並且當我按Command-Tab鍵,在顯示的應用程序列表中可見,該應用程序的圖標是黑色背景下的文本“ exec”。 一旦我專注於此應用程序,它就會關閉並且wkhtmltopdf完成其工作,但是如果我不關注它,它根本就無法完成其工作。 有什么想法我該怎么辦? 我希望它在后台運行並自動響應,每次發送請求時,我都不能坐在系統和Command-Tab后面。

更新:我在Ubuntu Server上嘗試過,它引發了以下錯誤:

wkhtmltopdf: cannot connect to X server localhost:10.0

當我嘗試直接在命令行中運行wkhtmltopdf時。 這不是為了修補Qt而不需要X服務器的全部目的嗎?

我在Ubuntu中遇到問題后,它就解決了,通過搜索Ubuntu中引發的錯誤,我可以找到這篇文章wkhtmltopdf:無法連接到X服務器 ,這似乎導致我從sourceforge(在OSX和Ubuntu中都)安裝了軟件包,並且解決了我的問題(在OSX和Ubuntu中)

您必須將其復制到目錄: / usr / local / bin ,使其成為可執行文件,並添加wkhtmltopdf.sh的符號鏈接, 如下所示:

1-命令:

 brew cask install wkhtmltopdf 

2-將二進制文件插入目錄/ usr / bin中,以便瀏覽器無權在此目錄中執行。 您必須將wkhtmltopdf.sh復制到目錄/ usr / local / bin,因為瀏覽器對該目錄具有權限,例如:

 sudo cp /usr/bin/wkhtmltopdf.sh /usr/local/bin/wkhtmltopdf.sh 

3-使二進制文件具有執行權限后,如:

 sudo chmod a+x /usr/local/bin/wkhtmltopdf.sh 

4-現在您可以測試,它的工作方式如下:

 /usr/local/bin/wkhtmltopdf.sh http://www.google.com google.pdf 

它將pdf下載到您終端的當前目錄中

5-現在可選,您可以在目錄/ usr / local / bin中添加符號鏈接,例如

 ln -s /usr/local/bin/wkhtmltopdf.sh /usr/local/bin/wkhtmltopdf 

6-復制到/ usr / bin / wkhtmltoimage/ usr / local / bin / wkhtmltoimage中,如下所示:

 sudo cp usr/local/wkhtmltoimage usr/local/bin/wkhtmltoimage 

8-使這也是可執行的:

 sudo chmod a+x /usr/local/bin/wkhtmltoimage 

希望對您有幫助

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM