????????最近恰好有html轉圖片的需要, 大約8年前也有使用過.?時間太久了, 也忘記, 以為有新技術出現(xiàn), 百度了一圈, 都驗證了下, 發(fā)現(xiàn)還是wkhtml功能最好用! 再次記錄下, 方便使用的時候找的到, 也方便需要的小伙伴, 能更好的找到一份完整記錄!
wkhtmltopdf 看網(wǎng)上安裝教程都是老版本的,正好從0.12.5開始安裝發(fā)生了變化,很多百度的都沒用了
現(xiàn)做此記錄:
環(huán)境:centos7、wkhtmltopdf0.12.6
安裝方式:rpm
下載:wkhtml官方網(wǎng)址
下載:?Github下載地址?
wkhtmltopdf0.12.6
wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox-0.12.6-1.centos7.x86_64.rpm
安裝
rpm -ivh wkhtmltox-0.12.6-1.centos7.x86_64.rpm
直接安裝會提示一堆依賴問題,
先安裝依賴:
yum install -y xorg-x11-fonts-75dpi
依賴安裝成功后在使用上面的安裝命令安裝即可
安裝后的路徑:
whereis wkhtmltopdf
或:
which wkhtmltopdf
一般在:
中文方塊字
將windows下的宋體字體復制到文章來源:http://www.zghlxwxcb.cn/news/detail-638805.html
/usr/share/fonts/chinese/TrueType
windows字體目錄:C:Windows/Fonts
最下面宋體 常規(guī) 文件名為:simsunb.ttf文章來源地址http://www.zghlxwxcb.cn/news/detail-638805.html
wkhtmltoimage相關參數(shù)
--no-collat??e打印多個時不進行整理副本
--cookie-jar <path>讀取和寫入cookie,提供的cookie jar文件
--copies <number>要打印到pdf中的份數(shù),文件(默認1)
-d, - dpi <dpi>顯式更改dpi(這沒有對基于X11的系統(tǒng)的影響)(默認為96)
-H, - extended-help顯示更廣泛的幫助,詳細說明不太常見的命令開關
-g, - grayscale PDF將以灰度生成
-h, - help顯示幫助
--htmldoc輸出程序html幫助
--image-dpi <integer>當嵌入圖像時將它們縮小到
這個dpi(默認為600)
--image-quality <integer>當jpeg壓縮圖像時使用它
質量(默認94)
--license輸出許可證信息并退出
--log-level <level>將日志級別設置為:none,error,warn或
信息(默認信息)
-l, - lowquality生成較低質量的pdf / ps。有用的
縮小結果文檔空間
--manpage輸出程序手冊頁
-B, - margin-bottom <unitreal>設置頁面底部邊距
-L, - margin-left <unitreal>設置頁面左邊距(默認為10mm)
-R, - margin-right <unitreal>設置頁面右邊距(默認為10mm)
-T, - margin-top <unitreal>設置頁面上邊距
-O, - 方向<orientation>將方向設置為橫向或縱向
(默認人像)
--page-height <unitreal>頁面高度
-s, - page-size <尺寸>將紙張尺寸設置為:A4,Letter等
(默認A4)
--page-width <unitreal>頁面寬度
--no-pdf-compression不要在pdf上使用無損壓縮
對象
-q, - quiet更加冗長,為倒退而維護
兼容性; 與使用--log-level相同
沒有
--read-args-from-stdin從stdin讀取命令行參數(shù)
--readme輸出程序自述文件
--title <text>生成的pdf文件的標題(如果沒有,則使用第一個文檔的標題指定)
--use-xserver使用X服務器(一些插件和其他插件)沒有X11可能無法正常工作
-V, - version輸出版本信息并退出
大綱選項:
--dump-default-toc-xsl將默認的TOC xsl樣式表轉儲到標準輸出
--dump-outline <file>將大綱轉儲到文件中
--outline將大綱放入pdf(默認)
--no-outline不要在pdf中加入大綱
--outline-depth <level>設置輪廓的深度(默認為4)
頁面選項:
--allow <path>允許指定的文件要加載的文件夾(可重復)
--background打印背景(默認)
--no-background不打印背景
--bypass-proxy-for <value>繞過主機代理(可重復)
--cache-dir <path> Web緩存目錄
--checkbox-checked-svg <path>選中渲染時使用此SVG文件
復選框
--checkbox-svg <path>在未選中呈現(xiàn)時使用此SVG文件復選框
--cookie <name> <value>設置一個額外的cookie(可重復),值應該是url編碼的。
--custom-header <name> <value>設置一個額外的HTTP頭(可重復)
--custom-header-propagation添加指定的HTTP頭- 每個資源請求的自定義標頭。
--no-custom-header-propagation不添加指定的HTTP頭- 每個資源請求的自定義標頭。
--debug -javascript顯示javascript調試輸出
--no-debug-javascript不顯示javascript調試輸出(默認)
--default-header添加一個默認標題,其名稱為
頁面左側,頁碼到
右邊,這是:
--header左= '[網(wǎng)頁]'
--header-right ='[page] / [toPage]' - top 2cm
--header線
--encoding <encoding>設置輸入的默認文本編碼
--disable-external-links不要鏈接到遠程網(wǎng)頁
--enable-external-links建立到遠程網(wǎng)頁的鏈接(默認)
--disable-forms不要將HTML表單字段轉換為pdf格式
字段(默認)
--enable-forms將HTML表單字段轉換為pdf表單字段
--images加載或打印圖像(默認)
--no-images不加載或打印圖像
--disable-internal-links不要建立本地鏈接
--enable-internal-links制作本地鏈接(默認)
-n, - disable-javascript不允許網(wǎng)頁運行javascript
--enable-javascript允許網(wǎng)頁運行javascript
(默認)
--javascript-delay <msec>等待幾毫秒的javascript
完成(默認200)
--keep-relative-links將相對外部鏈接保持為相對
外部鏈接
--load-error-handling <handler>指定如何處理失敗的頁面
load:abort,ignore或skip(默認值
中止)
--load-media-error-handling <handler>指定如何處理媒體文件
無法加載:中止,忽略或跳過
(默認忽略)
--disable-local-file-access不允許轉換本地文件
讀取其他本地文件,除非
明確允許使用--allow
--enable-local-file-access允許將本地文件轉換為read
在其他本地文件中。(默認)
--minimum-font-size <int>最小字體大小
--exclude-from-outline不要在表格中包含該頁面
內容和大綱
--include-in-outline在目錄中包含該頁面
和輪廓(默認)
--page-offset <offset>設置起始頁碼(默認為0)
--password <密碼> HTTP驗證密碼
--disable-plugins禁用已安裝的插件(默認)
--enable-plugins啟用已安裝的插件(插件將
可能不起作用)
--post <name> <value>添加額外的帖子字段(可重復)
--post-file <name> <path>發(fā)布一個附加文件(可重復)
--print-media-type使用print media-type而不是screen
--no-print-media-type不要使用打印介質類型而不是
屏幕(默認)
-p, - proxy <proxy>使用代理
--proxy-hostname-lookup使用代理解析主機名
--radiobutton-checked-svg <path>選中渲染時使用此SVG文件
單選按鈕
--radiobutton-svg <path>在未選中渲染時使用此SVG文件
單選按鈕
--resolve-relative-links將相對外部鏈接解析為
絕對鏈接(默認)
--run-script <js>運行此附加的javascript后
頁面加載完成(可重復)
--disable-smart-shrinking禁用智能收縮策略
由WebKit用來制作像素/ dpi
比率無常數(shù)
--enable-smart-shrinking啟用智能收縮策略
由WebKit用來制作像素/ dpi
比率無常數(shù)(默認)
--ssl-crt-path <path> ssl客戶端證書公鑰的路徑
OpenSSL PEM格式,可選擇后跟
中級ca和可信證書
--ssl-key-password <密碼> ssl客戶端證書私鑰的密碼
--ssl-key-path <path> ssl客戶端證書私鑰的路徑
OpenSSL PEM格式
--stop-slow-scripts停止慢速運行javascripts(默認)
--no-stop-slow-scripts不要停止慢速運行javascripts
--disable-toc-back-links不要從節(jié)頭到toc鏈接
(默認)
--enable-toc-back-links從節(jié)頭到toc的鏈接
--user-style-sheet <url>指定要加載的用戶樣式表
每一頁
--username <username> HTTP身份驗證用戶名
--viewport-size <>如果您有自定義,則設置視口大小
滾動條或css屬性溢出到
模擬窗口大小
--window-status <windowStatus>等到window.status等于this
渲染頁面前的字符串
--zoom <float>使用此縮放系數(shù)(默認值為1)
頁眉和頁腳選項:
--footer-center <text>居中的頁腳文字
--footer-font-name <name>設置頁腳字體名稱(默認Arial)
--footer-font-size <size>設置頁腳字體大?。J為12)
--footer -html <url>添加一個html頁腳
--footer-left <text>左對齊的頁腳文本
- footer-line頁腳上方的顯示行
--no-footer-line不要在頁腳上方顯示行
(默認)
--footer-right <text>右對齊的頁腳文本
--footer-spacing <real>頁腳和內容之間的間距,單位為mm
(默認為0)
--header-center <text>居中的標題文本
--header-font-name <name>設置標題字體名稱(默認Arial)
--header-font-size <size>設置標題字體大小(默認為12)
--header-html <url>添加一個html標題
--header-left <text>左對齊標題文本
--header-line標題下方的顯示行
--no-header-line不在標題下方顯示行
(默認)
--header-right <text>右對齊標題文本
--header-spacing <real>標題和內容之間的間距,單位為mm
(默認為0)
--replace <name> <value>將[name]替換為header和中的值
頁腳(可重復)
TOC選項:
--disable-dotted-lines不要在toc中使用虛線
--toc-header-text <text> toc的標題文本(默認表
內容)
--toc-level-indentation <width>對于toc中的每個標題級別
按此長度縮進(默認為1em)
--disable-toc-links不要從toc鏈接到部分
--toc-text-size-shrink <real>對于toc中每個級別的標題
字體按此因子縮放(默認值
0.8)
--xsl-style-sheet <file>使用提供的xsl樣式表
打印目錄
wkhtmltopdf相關參數(shù)
wkhtmltopdf [OPTIONS]... <input file> [More input files] <output file>
常規(guī)選項
--allow <path> 允許加載從指定的文件夾中的文件或文件(可重復)
--book* 設置一會打印一本書的時候,通常設置的選項
--collate 打印多份副本時整理
--cookie <name> <value> 設置一個額外的cookie(可重復)
--cookie-jar <path> 讀取和寫入的Cookie,并在提供的cookie jar文件
--copies <number> 復印打印成pdf文件數(shù)(默認為1)
--cover* <url> 使用HTML文件作為封面。它會帶頁眉和頁腳的TOC之前插入
--custom-header <name> <value> 設置一個附加的HTTP頭(可重復)
--debug-javascript 顯示的javascript調試輸出
--default-header* 添加一個缺省的頭部,與頁面的左邊的名稱,頁面數(shù)到右邊,例如: --header-left '[webpage]' --header-right '[page]/[toPage]' --header-line
--disable-external-links* 禁止生成鏈接到遠程網(wǎng)頁
--disable-internal-links* 禁止使用本地鏈接
--disable-javascript 禁止讓網(wǎng)頁執(zhí)行JavaScript
--disable-pdf-compression* 禁止在PDF對象使用無損壓縮
--disable-smart-shrinking* 禁止使用WebKit的智能戰(zhàn)略收縮,使像素/ DPI比沒有不變
--disallow-local-file-access 禁止允許轉換的本地文件讀取其他本地文件,除非explecitily允許用 --allow
--dpi <dpi> 顯式更改DPI(這對基于X11的系統(tǒng)沒有任何影響)
--enable-plugins 啟用已安裝的插件(如Flash
--encoding <encoding> 設置默認的文字編碼
--extended-help 顯示更廣泛的幫助,詳細介紹了不常見的命令開關
--forms* 打開HTML表單字段轉換為PDF表單域
--grayscale PDF格式將在灰階產(chǎn)生
--help Display help
--htmldoc 輸出程序HTML幫助
--ignore-load-errors 忽略claimes加載過程中已經(jīng)遇到了一個錯誤頁面
--lowquality 產(chǎn)生低品質的PDF/ PS。有用縮小結果文檔的空間
--manpage 輸出程序手冊頁
--margin-bottom <unitreal> 設置頁面下邊距 (default 10mm)
--margin-left <unitreal> 將左邊頁邊距 (default 10mm)
--margin-right <unitreal> 設置頁面右邊距 (default 10mm)
--margin-top <unitreal> 設置頁面上邊距 (default 10mm)
--minimum-font-size <int> 最小字體大小 (default 5)
--no-background 不打印背景
--orientation <orientation> 設置方向為橫向或縱向
--page-height <unitreal> 頁面高度 (default unit millimeter)
--page-offset* <offset> 設置起始頁碼 (default 1)
--page-size <size> 設置紙張大小: A4, Letter, etc.
--page-width <unitreal> 頁面寬度 (default unit millimeter)
--password <password> HTTP驗證密碼
--post <name> <value> Add an additional post field (repeatable)
--post-file <name> <path> Post an aditional file (repeatable)
--print-media-type* 使用的打印介質類型,而不是屏幕
--proxy <proxy> 使用代理
--quiet Be less verbose
--read-args-from-stdin 讀取標準輸入的命令行參數(shù)
--readme 輸出程序自述
--redirect-delay <msec> 等待幾毫秒為JS-重定向(default 200)
--replace* <name> <value> 替換名稱,值的頁眉和頁腳(可重復)
--stop-slow-scripts 停止運行緩慢的JavaScripts
--title <text> 生成的PDF文件的標題(第一個文檔的標題使用,如果沒有指定)
--toc* 插入的內容的表中的文件的開頭
--use-xserver* 使用X服務器(一些插件和其他的東西沒有X11可能無法正常工作)
--user-style-sheet <url> 指定用戶的樣式表,加載在每一頁中
--username <username> HTTP認證的用戶名
--version 輸出版本信息退出
--zoom <float> 使用這個縮放因子 (default 1)
頁眉和頁腳選項
--header-center* <text> (設置在中心位置的頁眉內容)
--header-font-name* <name> (default Arial) (設置頁眉的字體名稱)
--header-font-size* <size> (設置頁眉的字體大小)
--header-html* <url> (添加一個HTML頁眉,后面是網(wǎng)址)
--header-left* <text> (左對齊的頁眉文本)
--header-line* (顯示一條線在頁眉下)
--header-right* <text> (右對齊頁眉文本)
--header-spacing* <real> (設置頁眉和內容的距離,默認0)
--footer-center* <text> (設置在中心位置的頁腳內容)
--footer-font-name* <name> (設置頁腳的字體名稱)
--footer-font-size* <size> (設置頁腳的字體大小default 11)
--footer-html* <url> (添加一個HTML頁腳,后面是網(wǎng)址)
--footer-left* <text> (左對齊的頁腳文本)
--footer-line* 顯示一條線在頁腳內容上)
--footer-right* <text> (右對齊頁腳文本)
--footer-spacing* <real> (設置頁腳和內容的距離)
./wkhtmltopdf --footer-right '[page]/[topage]' http://www.baidu.com baidu.pdf
./wkhtmltopdf --header-center '報表' --header-line --margin-top 2cm --header-line http://192.168.212.139/oma/ oma.pdf
表內容選項中
--toc-depth* <level> Set the depth of the toc (default 3)
--toc-disable-back-links* Do not link from section header to toc
--toc-disable-links* Do not link from toc to sections
--toc-font-name* <name> Set the font used for the toc (default Arial)
--toc-header-font-name* <name> The font of the toc header (if unset use --toc-font-name)
--toc-header-font-size* <size> The font size of the toc header (default 15)
--toc-header-text* <text> The header text of the toc (default Table Of Contents)
--toc-l1-font-size* <size> Set the font size on level 1 of the toc (default 12)
--toc-l1-indentation* <num> Set indentation on level 1 of the toc (default 0)
--toc-l2-font-size* <size> Set the font size on level 2 of the toc (default 10)
--toc-l2-indentation* <num> Set indentation on level 2 of the toc (default 20)
--toc-l3-font-size* <size> Set the font size on level 3 of the toc (default 8)
--toc-l3-indentation* <num> Set indentation on level 3 of the toc (default 40)
--toc-l4-font-size* <size> Set the font size on level 4 of the toc (default 6)
--toc-l4-indentation* <num> Set indentation on level 4 of the toc (default 60)
--toc-l5-font-size* <size> Set the font size on level 5 of the toc (default 4)
--toc-l5-indentation* <num> Set indentation on level 5 of the toc (default 80)
--toc-l6-font-size* <size> Set the font size on level 6 of the toc (default 2)
--toc-l6-indentation* <num> Set indentation on level 6 of the toc (default 100)
--toc-l7-font-size* <size> Set the font size on level 7 of the toc (default 0)
--toc-l7-indentation* <num> Set indentation on level 7 of the toc (default 120)
--toc-no-dots* Do not use dots, in the toc
輪廓選項
--dump-outline <file> 轉儲目錄到一個文件
--outline 顯示目錄(文章中h1,h2來定)
--outline-depth <level> 設置目錄的深度(默認為4)
頁腳和頁眉
* [page] 由當前正在打印的頁的數(shù)目代替
* [frompage] 由要打印的第一頁的數(shù)量取代
* [topage] 由最后一頁要打印的數(shù)量取代
* [webpage] 通過正在打印的頁面的URL替換
* [section] 由當前節(jié)的名稱替換
* [subsection] 由當前小節(jié)的名稱替換
* [date] 由當前日期系統(tǒng)的本地格式取代
* [time] 由當前時間,系統(tǒng)的本地格式取代
到了這里,關于centos7 安裝wkhtmltopdf 0.12.6的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!