和往常一樣,jsPDF是一個開源的客戶端的PDF解決方案,在之前的文章中已經介紹過幾個Web端和PDF相關的庫,jsPDF同樣是一個不錯的客戶端PDF引 SDK,你可以通過jsPDF在客戶端完成相關操作,它包含了非常豐富的API,幫助你完成一系列的復雜操作!可以說它是相當領先的HTML5客戶端解決方案了!
https://github.com/MrRio/jsPDF
Github star數17k+,可以說相當受歡迎了!
一般情況下我們會考慮使用包管理,常見的就是npm了,因此安裝非常簡單
npm install jspdf --save
或者也可以使用yarn
yarn add jspdf
接下來就是制作你的文件的時候了
默認導出為a4紙張,縱向,使用毫米表示單位
var doc = new jsPDF() doc.text('Hello world!', 10, 10) doc.save('a4.pdf')
如果要更改紙張尺寸,方向或單位,可以執行以下操作:
var doc = new jsPDF({ orientation: 'landscape', unit: 'in', format: [4, 2] }) doc.text('Hello world!', 1, 1) doc.save('two-by-four.pdf')
PDF中的14種標準字體僅限于ASCII代碼頁。如果要使用UTF-8,則必須集成自定義字體,該字體提供所需的字形。jsPDF支持.ttf文件。因此,如果你希望在pdf中使用中文文本,則您的字體必須具有必要的中文字形。因此,請檢查您的字體是否支持所需的字形,否則它將顯示空白而不是文本。
要將字體添加到jsPDF,在/fontconverter/fontconverter.html中使用官網提供的fontconverter。fontconverter將創建一個js文件,其中包含提供的ttf文件的內容作為base64編碼的字符串和jsPDF的附加代碼。你只需將生成的js-File添加到項目中即可。然后,就可以在代碼中使用setFont-method并編寫UTF-8編碼文本。
常規操作
import * as jsPDF from 'jspdf'
有些框架,必須像下面這樣
import jsPDF from 'jspdf';
jsPDF的api非常豐富,在這里就不提供相關地址了,在Github必然找的到,本文重點不在于介紹jsPDF的用法,將部分API截圖展示,通過名稱大致能猜到一些意思,具體用法需要參考官網文檔:
從截圖來看,其文檔特別的詳細,具體到每一個API在js文件的行數,便于閱讀源代碼,包括參數以及返回值都非常明確:
官方提供了一個在線demo,可以直接運行代碼,感興趣的可以先嘗試一下:
jsPDF是筆者見過類似產品中較為突出的,幾乎涵蓋了所有PDF相關操作,非常詳細的文檔也讓開發者,輕松上手,在線demo還能快速學習,如果你的項目對PDF的操作比較多,不妨嘗試下jsPDF,唯一需要注意的就是解決字體問題,但是上文也提到過解決方案,感興趣的可以進行體驗!
里有四種方法能讓你把一個PDF文件轉換為HTML5格式,但選擇哪一種方式就取決于你的優先事項。IDR解決方案已經花費超過四年的時間來處理這個問題了。我們發現相比PDF而言,HTML5包含了不同的特征,因此并不總是直接匹配。
例如,PDF文件格式允許對每個文本字符間距進行單獨的控制。你可以在HTML5中進行效仿,通過把每個字符放到它所屬的DIV標簽中,就可以創建大型的文件。在這種情況下是精確的布局還是更小的文件大小對你來說更重要?
1、制作頁面圖像并在HTML5中把它作為圖像進行展示
優點:外觀相同
缺點:文件太大,不能縮放,文字不可選擇
2、制作頁面圖像并將它作為圖像顯示在HTML5中,隱藏到文本之后
優點:外觀相同并且能進行文本選擇
缺點:文件太大,不能縮放,文本可能被搜索引擎忽略
3、把所有的內容轉換為等效的HTML5。文本還是文本,圖像還是圖像,矢量內容可以放在畫布或圖像中。
優點:較小的文件大小,完美的文本縮放和搜索
缺點:不完全重復的PDF布局,字體轉換的大量工作。
4、將內容轉換成SVG(可在HTML5中顯示出來)
優點:在文本和圖像上,SVG通常會比HTML5看起來更好
缺點:SVG不提供HTML5中類似表格一樣的關鍵功能
在實踐中,我們發現上述的組合是最好的案例情況(如果有更合適的,可以選擇其它模式的選項)
你可以在IDR解決方案的HTML5案例頁面中,看到一些很好的HTML5示例,并能在免費在線轉換器上使用不同的方法進行實踐。
以上哪種模式是最適合你的?
本站文章除注明轉載外,均為本站原創或翻譯
了在你的HMTL5 網站上查看PDF 文件,你要將它們嵌入到HTML5 PDF 查看器中。像Chrome這樣的瀏覽器已經有一個插件可以做到這一點,因此,你的PDF 文件將正確顯示給使用Chrome瀏覽器訪問你網站的人。不過,還有使用插件的替代方法。例如,AdobeInDesign 將幫助你構建交互式pdf。還有其他提示和技巧可用于呈現你的PDF文件,以便每個人都可以查看它們。想了解更多的查看方法,可以考慮報個HMTL5培訓班,有專業導師面授教學,課程緊隨企業需求,培養全棧開發人才。
獲取HTML5 PDF 查看器
網絡上有許多HTML5 PDF 查看器。例如,這些網站都可以提供在你的網站上使用的PDF查看器,并且所有瀏覽器都應該能夠查看你的文件:IDR解決方案、PDF項目、軟紙項目、非常PDF。
你上傳文件并選擇HTML5,然后輸出你需要嵌入網頁的代碼。當有人訪問你的網頁時,他們將能夠在查看器中查看你的PDF 文件,而不是彈出鏈接。這些大多數PDF查看器網站也有出售軟件,這樣你就可以在計算機上擁有它的副本,而不必去他們的網站在線使用它。擁有該軟件的副本可以保護你的PDF副本(如果它受版權保護),并且通常還會為你提供更好的軟件版本。如果你想從事HTML5開發,又不知道從何學起,HMTL5培訓學習就是一個不錯的選擇,不只是學習理論知識,還有實踐項目的操作訓練,讓學生學以致用,提升學員全局性思維和全棧技術能力。
將PDF 文件轉換為HTML5
你可以將PDF 文件轉換為HTML5,以便每個人都能很好地查看你的文件。這樣,你就不必擔心別人看不到文件,因為他們的瀏覽器沒有插件來查看它,或者你的插件不適用于他們的計算機或瀏覽器。所以有人會看不到你的文件。
HTML5– 新方式
除了大多數設計師、Apple和Adobe 使用HTML5來創建他們的東西,使用HTML5 的另一個好處是新改進的頁面標題。你可以使用一些有意義的東西,如
移動設備是在網站上使用HTML5的一個重要原因?,F在每個人都用手機,會產生巨大的訪問量,如果你的網站要接觸到這些移動用戶,那么你就要使用HTML5編寫內容。
有很多方法可以在你的網站上完成HTML5 PDF 查看器。你可以嵌入代碼,也可以使用插件。還有一些網站提供免費的在線代碼生成器,為你編寫代碼,這樣你的PDF文件就會像雜志一樣顯示,用戶可以直接在你的網站上閱讀。如果你想了解有關HTML5的更多信息,可以參加HTML5培訓班學習,能夠快速掌握更系統全面的HTML5知識,讓你在短時間內學有所成。
了解更多
*請認真填寫需求信息,我們會在24小時內與您取得聯系。