vue 前端實現pdf下載.npm install html2canvas jspdf --save
npm install html2canvas jspdf --save
// 頁面使用
<div id='pdfDom'>
...........
</div>
<el-button @click="getPdf('#pdfDom')">下載測試</el-button>
// main.js 檔案
import htmlToPdf from './plugins/utils/htmlToPdf';
Vue.use(htmlToPdf);
/**
* 匯出頁面為PDF格式
* */
import html2Canvas from 'html2canvas'
import JsPDF from 'jspdf'
export default {
install(Vue, options) {
Vue.prototype.getPdf = function () {
var title = this.htmlTitle
html2Canvas(document.querySelector('#pdfDom'), {
allowTaint: true
}).then(function (canvas) {
let contentWidth = canvas.width // 獲得該容器的寬
let contentHeight = canvas.height // 獲得該容器的高
let pageHeight = contentWidth / 592.28 * 841.89
let leftHeight = contentHeight
let position = 0
let imgWidth = 595.28
let imgHeight = 592.28 / contentWidth * contentHeight
let pageData = canvas.toDataURL('image/jpeg', 1.0)
let PDF = new JsPDF('', 'pt', 'a4') // A4紙,縱向
if (leftHeight < pageHeight) {
PDF.addImage(pageData, 'JPEG', 0, 0, imgWidth, imgHeight)
} else {
while (leftHeight > 0) {
PDF.addImage(pageData, 'JPEG', 0, position, imgWidth, imgHeight)
leftHeight -= pageHeight
position -= 841.89
if (leftHeight > 0) {
PDF.addPage()
}
}
}
PDF.save(title + '.pdf')
})
}
}
}
相關文章
- jspdf + html2canvas 實現html轉pdf (提高解析度版本)JSHTMLCanvas
- npm install -save 和 -save-devNPMdev
- Javascript 將html轉成pdf,下載,支援多頁哦(html2canvas 和 jsPDF)JavaScriptHTMLCanvasJS
- 報錯:npm install vue-router --save-devNPMVuedev
- npm install -g 和npm install --save-dev的關係NPMdev
- 一文了解npm install -g和npm install --save-dev的關係NPMdev
- vue pdf下載Vue
- npm 引數使用注意事項 :npm install babel-polyfill --save-gNPMBabel
- npm –save-dev –save 的區別NPMdev
- npm install realm --save失敗的問題與解決辦法NPM
- save download pdf
- 前端方式實現excel下載前端Excel
- 前端(vue)匯出pdf前端Vue
- 前端實現點選下載圖片前端
- 前端實現文件預覽(支援word、ppt、pdf)-【@zuiyouliao/vue-file-viewer】前端UIVueView
- npm下載源NPM
- vue小程式專案 pdf下載解決方案Vue
- 前端實現生成條形碼並下載前端
- vue點選下載圖片的實現Vue
- 實現一個vue元件庫釋出到npmVue元件NPM
- 國內npm源映象(npm加速下載) 指定npm映象NPM
- 前端實現檔案下載和拖拽上傳前端
- npm下載速度優化NPM優化
- vue中如何實現pdf檔案預覽?Vue
- vue實現Excel檔案的上傳與下載VueExcel
- vue前端製作圖片,並下載(canvase)Vue前端Canvas
- npm install報錯, npm ERR! code MODULE_NOT_FOUNDNPM
- vue整合pdfjs,實現pdf檔案預覽VueJS
- linux下使用npm install報EACCES的解決方法LinuxNPM
- ionic3 ,win7下 npm install 報operation not permittedWin7NPMMIT
- npm install 出現 npm ERR! Unexpected end of JSON input while parsing near '...ostNPMJSONWhile
- npm install 報錯解決NPM
- Npm install failed with “cannot run in wd”NPMAI
- Cordova+Vue 混合開發實現下載並預覽Vue
- .netcore+vue 實現壓縮檔案下載NetCoreVue
- vue實現前端匯出excel表格Vue前端Excel
- vue/js實現檔案流下載,檔案下載進度監聽VueJS
- 02vue+axios+form實現檔案下載(附Java實現程式碼)VueiOSORMJava