自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

HTML5的JavaScript 客戶端PDF解決方案——jsPDF

開(kāi)發(fā) 前端
和往常一樣,jsPDF是一個(gè)開(kāi)源的客戶端的PDF解決方案,在之前的文章中已經(jīng)介紹過(guò)幾個(gè)Web端和PDF相關(guān)的庫(kù),jsPDF同樣是一個(gè)不錯(cuò)的客戶端PDF引 SDK,你可以通過(guò)jsPDF在客戶端完成相關(guān)操作,它包含了非常豐富的API,幫助你完成一系列的復(fù)雜操作!可以說(shuō)它是相當(dāng)領(lǐng)先的HTML5客戶端解決方案了!

介紹

和往常一樣,jsPDF是一個(gè)開(kāi)源的客戶端的PDF解決方案,在之前的文章中已經(jīng)介紹過(guò)幾個(gè)Web端和PDF相關(guān)的庫(kù),jsPDF同樣是一個(gè)不錯(cuò)的客戶端PDF引 SDK,你可以通過(guò)jsPDF在客戶端完成相關(guān)操作,它包含了非常豐富的API,幫助你完成一系列的復(fù)雜操作!可以說(shuō)它是相當(dāng)領(lǐng)先的HTML5客戶端解決方案了!

HTML5 的JavaScript 客戶端PDF解決方案——jsPDF

Github

https://github.com/MrRio/jsPDF

Github star數(shù)17k+,可以說(shuō)相當(dāng)受歡迎了!

安裝使用

一般情況下我們會(huì)考慮使用包管理,常見(jiàn)的就是npm了,因此安裝非常簡(jiǎn)單

  1. npm install jspdf --save 

或者也可以使用yarn

  1. yarn add jspdf 

接下來(lái)就是制作你的文件的時(shí)候了

默認(rèn)導(dǎo)出為a4紙張,縱向,使用毫米表示單位

  1. var doc = new jsPDF() 
  2. doc.text('Hello world!', 10, 10) 
  3. doc.save('a4.pdf'

如果要更改紙張尺寸,方向或單位,可以執(zhí)行以下操作:

  1. var doc = new jsPDF({ 
  2.  orientation: 'landscape'
  3.  unit: 'in'
  4.  format: [4, 2] 
  5. }) 
  6. doc.text('Hello world!', 1, 1) 
  7. doc.save('two-by-four.pdf'

使用UTF-8 / TTF

PDF中的14種標(biāo)準(zhǔn)字體僅限于ASCII代碼頁(yè)。如果要使用UTF-8,則必須集成自定義字體,該字體提供所需的字形。jsPDF支持.ttf文件。因此,如果你希望在pdf中使用中文文本,則您的字體必須具有必要的中文字形。因此,請(qǐng)檢查您的字體是否支持所需的字形,否則它將顯示空白而不是文本。

HTML5 的JavaScript 客戶端PDF解決方案——jsPDF

要將字體添加到j(luò)sPDF,在/fontconverter/fontconverter.html中使用官網(wǎng)提供的fontconverter。fontconverter將創(chuàng)建一個(gè)js文件,其中包含提供的ttf文件的內(nèi)容作為base64編碼的字符串和jsPDF的附加代碼。你只需將生成的js-File添加到項(xiàng)目中即可。然后,就可以在代碼中使用setFont-method并編寫(xiě)UTF-8編碼文本。

HTML5 的JavaScript 客戶端PDF解決方案——jsPDF

Angular/Webpack/React等配置

常規(guī)操作

  1. import * as jsPDF from 'jspdf' 

有些框架,必須像下面這樣

  1. import jsPDF from 'jspdf'
HTML5 的JavaScript 客戶端PDF解決方案——jsPDF

API

jsPDF的api非常豐富,在這里就不提供相關(guān)地址了,在Github必然找的到,本文重點(diǎn)不在于介紹jsPDF的用法,將部分API截圖展示,通過(guò)名稱大致能猜到一些意思,具體用法需要參考官網(wǎng)文檔:

HTML5 的JavaScript 客戶端PDF解決方案——jsPDF

 


HTML5 的JavaScript 客戶端PDF解決方案——jsPDF

 


HTML5 的JavaScript 客戶端PDF解決方案——jsPDF

 


HTML5 的JavaScript 客戶端PDF解決方案——jsPDF

 


HTML5 的JavaScript 客戶端PDF解決方案——jsPDF

 


HTML5 的JavaScript 客戶端PDF解決方案——jsPDF

 


HTML5 的JavaScript 客戶端PDF解決方案——jsPDF

 


HTML5 的JavaScript 客戶端PDF解決方案——jsPDF

 


HTML5 的JavaScript 客戶端PDF解決方案——jsPDF

 


HTML5 的JavaScript 客戶端PDF解決方案——jsPDF

 


HTML5 的JavaScript 客戶端PDF解決方案——jsPDF

從截圖來(lái)看,其文檔特別的詳細(xì),具體到每一個(gè)API在js文件的行數(shù),便于閱讀源代碼,包括參數(shù)以及返回值都非常明確:

 

在線DEMO

官方提供了一個(gè)在線demo,可以直接運(yùn)行代碼,感興趣的可以先嘗試一下:

HTML5 的JavaScript 客戶端PDF解決方案——jsPDF

總結(jié)

jsPDF是筆者見(jiàn)過(guò)類似產(chǎn)品中較為突出的,幾乎涵蓋了所有PDF相關(guān)操作,非常詳細(xì)的文檔也讓開(kāi)發(fā)者,輕松上手,在線demo還能快速學(xué)習(xí),如果你的項(xiàng)目對(duì)PDF的操作比較多,不妨嘗試下jsPDF,唯一需要注意的就是解決字體問(wèn)題,但是上文也提到過(guò)解決方案,感興趣的可以進(jìn)行體驗(yàn)!

 

 

責(zé)任編輯:龐桂玉 來(lái)源: 今日頭條
相關(guān)推薦

2023-12-29 09:04:01

前端文件處理庫(kù)PDF.js

2016-10-25 14:18:59

分頁(yè)javascriptminiui

2012-11-05 10:34:52

IBMdw

2013-05-30 17:52:06

2014-03-10 10:22:40

JavaScriptJS弊端

2012-12-18 09:34:49

2009-12-02 09:11:58

HTML5

2016-01-08 18:54:41

云適配

2009-12-30 15:29:14

2014-06-18 10:25:31

戴爾

2009-06-12 19:18:08

REST客戶端框架JavaScript

2014-08-01 18:26:49

戴爾

2016-01-22 09:47:10

HTML5WebGLBIM模型

2015-06-03 09:27:05

JavaScript客戶端檢測(cè)技術(shù)

2016-12-14 13:41:49

HTML 5瀏覽器VDI

2012-09-04 09:40:01

2021-09-22 15:46:29

虛擬桌面瘦客戶端胖客戶端

2016-11-14 18:02:50

2011-06-08 22:06:04

工作站解決方案

2009-12-21 09:05:22

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)