整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          24-跨平臺導PDF,結合wkhtmltopdf很順手

          好東西要分享,之前一直在使用wkhtmltopdf進行pdf文件的生成,常用的方式就是先安裝wkhtmltopdf,然后在程序中用命令的方式將對應的html生成pdf文件,簡單而且方便;但重復的編碼使得想在wkhtmltopdf基礎上進行封裝,偶然間發現有小伙伴已經封裝的還不錯啦,常用的功能都已經實現,源碼地址:https://github.com/fpanaccia/Wkhtmltopdf.NetCore。

          作者將其打包成Nuget包(Wkhtmltopdf.NetCore),直接引入使用即可;

          正文

          既然用到了.NetCore,肯定就要考慮到跨平臺兼容性,對于wkhtmltopdf之前一直是在Windows上使用,還沒有在其他平臺嘗試;這個包封裝的行不行,拉出來遛遛就知道啦,接下來就試試:

          1. 建個API項目,引入包和兼容對應平臺的wkhtmltopdf執行文件



          注: 默認依賴的wkhtmltopdf執行文件需要存放在Rotativa目錄下,可以自定義名稱,如果自定義,需要再注冊服務時指定對應的文件名;這里的wkhtmltopdf已經根據不同平臺進行編譯打包了,無需安裝,這些文件在源碼那就有;

          2.創建PDFTestController控制器,添加如下接口進行測試

          首先把生成pdf的服務注入進來,后續直接使用就可以啦:



          接下來就開始寫接口啦,這里只是測試,代碼冗余沒有考慮,在實際項目中小伙伴可以根據自己需求進行封裝;

          • ExportPDFByHtml 接口,用html直接生成pdf文件,但這里沒有保存,以文件流的形式訪問,通過瀏覽器查看文件,可以自行下載;html模板在實際開發過程中可以單獨用文件存儲;



          • SavePDFByHtml接口,直接保存文件,文件名可以根據需要進行自定義;



          • TestMarginAndPageSize接口,設置Margin和PageSize參數,其他參數也可以設置;



          ConvertOptions默認封裝了以下屬性,小伙伴也可以自定義擴展,只要繼承IConvertOptions即可,這里就不演示的,因為官方有對應的案例,下伙伴下去搞搞,wkhtmltopdf的參數挺多的,都可以進行封裝使用。



          • ExportByRazorView使用Razor視圖的方式進行pdf文件生成,此庫已經支持cshtml文件的讀取



          根據指定視圖生成對應的pdf效果,如下:



          • ExportByRazorViewData數據動態綁定,既然支持視圖,那就應該支持Razor語法,一般常用的就是數據綁定了,上面是靜態的,接下來來個動態綁定的。



          根據指定視圖生成對應的pdf效果,如下:



          如上基本的使用演示就說那么多,使用還是很簡單,小伙伴后續可以根據自己的需要進行相關擴展;當然還有其他功能,比如設置頁眉/頁腳等,作者提供有對應的案例;這里不說那么多,不然又是長文。

          3. 小伙伴用的時候可能會遇到的問題

          • 在開發調試運行項目時,會報找不到wkhtmltopdf文件,那是因為運行時的確找不到對應的文件,將對應Rotativa下的文件設置為始終復制即可:



          • 在Windows下怎么玩都沒問題啦,開始發布到Linux(我用的centos 7),我擦,莫名其妙的錯。



          看見這個錯我懵的,一頓搜索猛如虎,還是沒找到答案;冷靜下來,重新捋捋,原來是自己在犯傻;

          兩個問題需要解決,1.上傳到Linux下的wkhtmltopdf沒有給執行權限;2.可能環境缺少對應的依賴庫;

          設置可執行權限

          在Linux環境下,可以通過ll命令查看權限,剛開始是沒有權限的,只需要執行chmod 777 wkhtmltopdf命令,執行權限就有了,如下圖中紅框中的x就是可執行權限;關于Linux常用命令后續單獨整理一篇分享吧,這里先不延伸。



          安裝缺少的依賴庫

          可執行權限開啟之后,別急著去訪問頁面,這樣可能還是錯誤。因為可能缺少依賴庫,那咋知道缺少呢,我是直接執行wkhtmltopdf,執行成功就沒啥,不成功就會報缺少相關依賴,然后直接安裝就行啦;執行./wkhtmltopdf https://www.baidu.com ./test.pdf試試就知道啦,因為wkhtmltopdf本身是可以單獨運行的,并不依賴我們寫的程序。

          • 當執行成功之后,然后開始訪問接口導出功能,如果不出意外,遇到中文就產生亂碼啦,那是因為Linux環境下缺少相關的字體文件,將對應的字體文件拷貝到Linux上即可,字體我找好了,下載地址如下:

          鏈接: https://pan.baidu.com/s/1jikC0DUkpEzpXL5ysjEQPA 提取碼: tn4j

          將下載下來的字體解壓,然后拷貝到Linux下的 /usr/share/fonts目錄下即可

          最后這樣應該就沒啥問題啦,剩下的就交給小伙伴自己摸索搞實踐吧;

          此文源碼地址:https://github.com/zyq025/DotNetCoreStudyDemo

          wkhtmltopdf官網地址:https://wkhtmltopdf.org/

          總結

          使用還是很簡單的,常規的需求沒啥問題,如果需要功能定制化,小伙伴可以參考源碼,自己封裝一個(封裝思路不難的); 如果小伙伴有比較好的導出庫,免費開源的那種,一起分享出來玩玩。

          感謝小伙伴的:點贊收藏評論,下期繼續~~~

          一個被程序搞丑的帥小伙,關注"Code綜藝圈",跟我一起學~~~

          然你點進來了?是不是想看一些與眾不同的東西?(*▼?(?-_-?)你一定是想看……怎么找一些實用的學習資料吧!!!好啦~不逗你,今天整理了五個資源滿滿的黑科技網站,相信一定夠你用的了!

          1.ED 2000

          這是一個資源共享的平臺,我們平時可能會用網盤來資源分享,所以這個網站就是一個集大成者,這里提供了最新的綜藝、動漫、音樂、游戲、圖書等等資源的共享,每天有數以萬計的網友在這里分享資源,所以找資源,來這里就對了!

          2.萬盤搜索

          萬盤是一款網盤搜索網站,網站首頁飛劍簡潔清晰,你可以直接在搜索框搜索你想要的資源,例如電影、動漫、港劇等等,同時下面還有推薦的功能,可以在推薦的內容里面點擊直接進入去下載。

          3.超高無損音樂

          現在想找一首喜歡的歌并且下載來聽并不是一件簡單的事情,可能因為版權問題,你需要下好多個APP才能聽,或者不夠優質等等。那么這個網站就特別適合喜歡音樂的人了,這里只生產無損音樂,而且可以免費下載,實在是太貼心啦~

          4.辦公資源

          平時工作的時候總是要找一些辦公資源,這個網站或許可以幫你~除了一些好看精美的PPT模板之外,這個網站還免費提供Excel模板和PPT音效素材下載,各種辦公資源應有盡有,感興趣的朋友可以去網站逛一逛。

          5.資源貓

          資源貓是一個資源整合的網站,簡單來說,這里更像是一個網站的導航,你可以在這里直接找到你想要的資源類別,例如喜歡看書的可以查找閱讀網,各種各樣的閱讀網站足以讓你煙花繚亂,找資源,一個網站就夠了。

          好啦~以上就是今天要介紹的資源網站了,感興趣的可以自己搜搜看~如果你還有別的更有用的資源網站,歡迎在評論里留言!筆芯喲!

          歡看電影的朋友有福了,今天分享一款專屬私人影院網站源碼,自己的電腦就能看大片!再也不用為找片發愁了,因為涉及到版權問題,這里提醒大家不要違規搭建分享,自己看就好了。

          下面是截圖和使用方法

          使用方法

          1.下載安裝軟件phpStudy:http://phpstudy.php.cn/phpstudy/PhpStudy20180211.zip

          phpstudy使用說明教程:http://www.php.cn/phpstudy-377909.html

          2.下載源碼解壓放到phpstudy(網站根目錄)WWW目錄下進行安裝:

          3.瀏覽器地址欄訪問http://localhost/install

          數據庫名稱:test

          數據庫用戶名和密碼:root

          其他配置項默認

          4.安裝完成后訪問后臺登錄:http://localhost/admin

          默認密碼賬號都是:admin

          請務必登錄后臺設置替換域名,否則網站沒法觀看!

          如下圖:修改域名為http://localhost/后底部點擊提交保存即可。

          5.打開你的任意瀏覽器,輸入地址訪問http://localhost/就可以觀看電影了!

          此開源版本更新內容:

          主文件大型修復文件(更新修復影視、綜藝頻道不能播放,展示問題、修復采集360規則更新

          修復綜藝,動漫更新,加入美化陰影CSS效果)

          米酷模板新增加功能采集插件:

          1.大量嘗鮮影視資源網整合采集,加入m3u8視頻快速解析插件

          2.增加酷狗MV視頻采集

          3.音悅臺MV視頻采集

          4.YY視頻采集

          5.播放頁優化,提示說明

          6.修復更新內置手動采集資源嘗鮮api

          修復手動采集嘗鮮不自動播放問題

          7.站外資源搜索影片優化

          8.電視直播優化,可打開文件添加其他播放源,文件(zhibo.php)

          9.更新搞笑娛樂小視頻采集,其他功能采集插件簡單優化修復

          10.請登錄后臺設置,點擊基本設置,關閉手機版,可體驗最新功能,默認為米酷模板,其他模板沒有功能體驗

          ###后臺資源采集片源請選用m3u8或mp4后綴音頻,可增加片源,但不支持直鏈片源,因增加了m3u8解析,加速播放!具體查看后臺樣式設置!

          ###二維碼圖片替換(images/ew.png 、images/ewm.png)

          ###MKCMS模板默認背景圖片路徑文件(style/bg.jpg)可打開更換背景圖

          源碼搭建推薦 LINUX系統 SQL5以上 php5.4 Apache或Nginx

          1、PHP+MYSQL架構

          2、自動采集VIP影視,VIP電影免費看

          3、視頻管理系統,可自主采集添加視頻分類及視頻

          5、會員管理系統,可自定義分組,可設置會員級別價格,一鍵生成卡密,支持批量功能

          6、廣告管理系統,支持多布局廣告位

          7、電腦手機自適應,可生成APP,附贈APP一鍵生成軟件安卓版

          8、內置多條播放接口

          9、友情鏈接鏈接系統

          10、熱門視頻排行榜

          11、支持頁面緩存

          12、SEO系統,后臺輕松設置SEO

          13、對接微信公眾號,實現微信直接看電影

          14、首頁幻燈輪播

          15、支持生成頁面二維碼,掃碼手機觀看

          提示:本套影視源碼建議空間切換PHP版本5.4至5.6(建議PHP版本設置5.4或5.5)

          基于米酷5.0版本(二次開發品優)

          源碼下載地址

          https://www.lanzous.com/i3x0msb 密碼:hu9z


          主站蜘蛛池模板: 国产精品高清一区二区三区不卡 | 国产高清一区二区三区四区| 国产视频一区二区在线播放| 天天爽夜夜爽人人爽一区二区| 国产未成女一区二区三区 | 亚洲AV成人一区二区三区在线看 | 亚洲综合在线一区二区三区| 国产福利一区二区三区在线观看| 日日摸夜夜添一区| 亚洲AV无码一区二区三区电影 | 一区二区中文字幕在线观看| 亚洲日韩国产一区二区三区| 激情内射亚州一区二区三区爱妻| 人妻无码一区二区三区四区| 久久久国产一区二区三区| 成人无码AV一区二区| 久久国产精品无码一区二区三区| 精品一区二区三区在线播放视频 | 无码午夜人妻一区二区不卡视频 | 中文字幕在线观看一区二区三区| 久久精品人妻一区二区三区| 国产精品特级毛片一区二区三区| 人妻无码一区二区三区AV| 亚洲国产成人精品无码一区二区| 天堂一区人妻无码| 日本精品少妇一区二区三区 | 久久国产一区二区三区| 国产精品一区二区不卡| 国产精品无码一区二区三区免费| 精品国产一区二区三区AV性色| 国产亚洲福利精品一区| 亚洲综合av一区二区三区| 精品一区二区三区免费毛片| 国产婷婷色一区二区三区| 国产乱人伦精品一区二区| 一区二区三区AV高清免费波多| 高清国产AV一区二区三区| 在线|一区二区三区| 日韩制服国产精品一区| 国产一区二区久久久| 精品乱子伦一区二区三区|