国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁 > news >正文

怎么給自己的網(wǎng)站做seo百度賬號查詢

怎么給自己的網(wǎng)站做seo,百度賬號查詢,愛尚網(wǎng)站建設(shè),凡客v 網(wǎng)上商城實際項目中有時會有根據(jù)填寫的表單數(shù)據(jù)或者其他格式的數(shù)據(jù),將數(shù)據(jù)自動填充到pdf文件中根據(jù)固定模板生成pdf文件的需求 文章目錄 利用pdfmake生成pdf文件1.下載安裝pdfmake第三方包2.封裝生成pdf文件的共用配置3.生成pdf文件的文件模板內(nèi)容4.調(diào)用方法生成pdf 利用pdf…

實際項目中有時會有根據(jù)填寫的表單數(shù)據(jù)或者其他格式的數(shù)據(jù),將數(shù)據(jù)自動填充到pdf文件中根據(jù)固定模板生成pdf文件的需求

文章目錄

  • 利用pdfmake生成pdf文件
    • 1.下載安裝pdfmake第三方包
    • 2.封裝生成pdf文件的共用配置
    • 3.生成pdf文件的文件模板內(nèi)容
    • 4.調(diào)用方法生成pdf

利用pdfmake生成pdf文件

1.下載安裝pdfmake第三方包

npm i pdfmake

2.封裝生成pdf文件的共用配置

可以在utils文件夾下新建pdf文件夾,所有的pdf文件模板/共用配置等文件都放在該文件夾下
新建文件pdfUtils.js,該文件是一些公用配置項

import pdfMake from 'pdfmake/build/pdfmake';
pdfMake.fonts={Msyh:{italics: 'https://example.com/fonts/fontFile3.ttf',bold: 'https://example.com/fonts/fontFile4.ttf',}//可以設(shè)置文件的字體
}
export const PdfMake = pdfMake
export const baseDocDefinition={
//pdfmake中margin值的設(shè)置,4個值分別是[左,上,右,下]pageMargins:[40,70,40,40],//文檔邊距,不影響頁眉頁腳pageSize: 'A4', //設(shè)置紙張大小為A4pageOrientation: 'portrait', //portrait:縱向; langscape:橫向,默認(rèn)是縱向的//默認(rèn)文本設(shè)置,這里的屬性都是比較常見的就不贅述了defaultStyle:{font: 'Msyh',color: '#000000',bold: false,fontSize: 12,lineHeight: 1.2}
}
//pdf展示圖片,不能直接展示url,需要對文件進(jìn)行轉(zhuǎn)換
export async function getImageUrl(url){const response=await fetch(url)const blob=await response.blob()return new Promise((resolve,reject)=>{const reader=new FileReader()reader.onload=()=>{const base64data=reader.resultresolve(base64data)}reader.onerror=rejectreader.readAdDataURL(blob)})
}

3.生成pdf文件的文件模板內(nèi)容

新建getPdfDoc.js文件,該文件是具體要生成文件的配置

import { PdfMake } from './pdfUtils.js'
import { baseDocDefinition, getImageUrl } from './pdfUtils.js'
//由于文件中某些數(shù)據(jù)是自動填充上去的,所以調(diào)用生成pdf的方法時要傳填充的數(shù)據(jù)
export function getDocPDF=async(data){const docDefinition={...baseDocDefinition,//獨有配置,這里可以參考文檔最后content:[//獨有的配置...]}PdfMake.createPDF(docDefinition).open()//生成pdf文件并打開,可以進(jìn)行預(yù)覽/導(dǎo)出
}

在這里插入圖片描述

4.調(diào)用方法生成pdf

在需要的地方進(jìn)行調(diào)用
例如:

<template>
...
<el-button @click='exportDoc'>導(dǎo)出PDF文件</el-button>
...
</template>
import { getDocPDF } from '@/utils/getPdfDoc.js'
<script>
export default {data(){return {form:{}}},methods:{async exportDoc(){await getDocPDF(this.form)}}
}
</script>

pdfmake的文檔沒有中文版的,這里我列舉一些我用過的也是比較常用的配置

export function getDocPDF=async(data){const docDefinition={...baseDocDefinition,//頁眉header: {absolutePosition: { x: 40, y: 10 },stack: [{ text: `${data.fullName}`, fontSize: 10, absolutePosition: { x: 0, y: 13 }, alignment: 'center' },{canvas: [{type: 'line',x1: 0,y1: 30,x2: 515,y2: 30,lineWidth: 1,absolutePosition: { x: 0, y: 10 }}]},// 分割線],},//頁腳footer: function (currentPage, pageCount) {return [{canvas: [{type: 'line',x1: 40, y1: 0,x2: 555, y2: 0,lineWidth: 1}]},{text: `${data.fullName}\n` + currentPage,alignment: 'center',fontSize: 10,margin: [0, 10]}];},content:[//獨有的配置...,//文本段落{text:'***',fontSize:16,//該段text的字體大小bold:true,//該段字體加粗lendingIndent: 25//首行縮進(jìn)},//表格{layout:{paddingTop: () => 5,paddingBottom: () => 5,paddingLeft: () => 5,paddingRight: () => 5},table: {widths: ['10%', '22%', '20%', '30%', '20%'],body: [[//第一行的數(shù)據(jù),即表格的表頭{ text: '序號', alignment: 'center' },{ text: '姓名', alignment: 'center' },{ text: '手機號', alignment: 'center' },{ text: '性別', alignment: 'center' },],//后面的數(shù)據(jù)行,如果不是靜態(tài)的數(shù)據(jù),傳入的數(shù)據(jù)展示我們可能還需要進(jìn)行一下轉(zhuǎn)換,轉(zhuǎn)換成這里展示需要的數(shù)據(jù)格式[{ text: '1', alignment: 'center' },{ text: '張三', alignment: 'center' },{ text: '18888888888', alignment: 'center' },{ text: '男', alignment: 'center' },],]}},//左右布局{alignment: 'justify',margin: [0, 20, 0, 5],columns: [{//text可以直接是字符串,也可以是字符串?dāng)?shù)組text: ['簽字日期:','\u00A0\u00A0\u00A0\u00A0','年','\u00A0\u00A0\u00A0\u00A0','月','\u00A0\u00A0\u00A0\u00A0','日'//這里的\u00A0是導(dǎo)出來展示是空格],fontSize: 12},{text: '簽字日期:','\u00A0\u00A0\u00A0\u00A0','年','\u00A0\u00A0\u00A0\u00A0','月','\u00A0\u00A0\u00A0\u00A0','日',fontSize: 12}]},//如果需要換頁,即下面的內(nèi)容為新起一頁的內(nèi)容,可以通過給文本塊加上pageBreak屬性{text:' ',pageBreak:'after',//表示該文本塊后換頁},//如果需要展示像圖片,或者文本塊較多,要放在stack中,圖片不能直接展示url,要進(jìn)行格式轉(zhuǎn)換stack:[{image: await getImageUrl(data.url)width: 200,}]]}PdfMake.createPDF(docDefinition).open()//生成pdf文件并打開,可以進(jìn)行預(yù)覽/導(dǎo)出
}

頁眉效果
在這里插入圖片描述
頁腳效果
在這里插入圖片描述

http://aloenet.com.cn/news/47849.html

相關(guān)文章:

  • 室內(nèi)在線設(shè)計網(wǎng)站網(wǎng)站推廣手段
  • 湖北省建設(shè)廳造價官方網(wǎng)站網(wǎng)站seo優(yōu)化總結(jié)
  • 太原建網(wǎng)站的公司深圳搜索排名優(yōu)化
  • 國家城鄉(xiāng)建設(shè)部投訴網(wǎng)站福州網(wǎng)站開發(fā)公司
  • 網(wǎng)站安全狗 攔截301網(wǎng)絡(luò)推廣公司哪家做得好
  • 0基礎(chǔ)的怎么轉(zhuǎn)行互聯(lián)網(wǎng)太原seo排名優(yōu)化公司
  • 土豆做視頻在線觀看網(wǎng)站網(wǎng)絡(luò)營銷策劃包括哪些內(nèi)容
  • 電子商務(wù)概念seo關(guān)鍵詞有話要多少錢
  • 如何做電商網(wǎng)站成都seo的方法
  • 鄭州的做網(wǎng)站公司有哪些好搜搜索
  • 做網(wǎng)站即墨鄭州競價托管公司哪家好
  • 賀卡制作優(yōu)化資訊
  • 榆次建設(shè)局網(wǎng)站普通話手抄報簡單又漂亮
  • 個人網(wǎng)站建站指南他達(dá)那非片能延時多久
  • php做網(wǎng)站的好處寧波seo外包推廣渠道
  • 購物網(wǎng)站圖片的放大怎么做的seo網(wǎng)絡(luò)推廣教程
  • html5網(wǎng)站下載建站模板哪個好
  • 網(wǎng)絡(luò)營銷應(yīng)該這樣做seo優(yōu)化交流
  • 保定企業(yè)網(wǎng)站制作電商數(shù)據(jù)統(tǒng)計網(wǎng)站
  • 目前流行的網(wǎng)站開發(fā)技術(shù)浙江專業(yè)網(wǎng)站seo
  • 高端網(wǎng)站定制策劃長沙官網(wǎng)seo技巧
  • 可以做書的網(wǎng)站全國疫情最新公布
  • 站長平臺有哪些交換友情鏈接的方法
  • 談?wù)勀銓W(wǎng)站建設(shè)有什么樣好的建設(shè)意見做一個簡單的網(wǎng)站需要多少錢
  • 一般做網(wǎng)站需要的js有哪些網(wǎng)絡(luò)營銷的方法
  • web前端開發(fā)視頻教學(xué)seo排名是什么
  • 真正能約拍的app做好的網(wǎng)站怎么優(yōu)化
  • p2p做網(wǎng)站貴州二級站seo整站優(yōu)化排名
  • 機關(guān)事業(yè)單位網(wǎng)站備案谷歌瀏覽器下載
  • ibm網(wǎng)站導(dǎo)航特效代碼信息流廣告投放平臺