html2pdf,qrcode库及url参数拼接

2024-04-16 18:04

本文主要是介绍html2pdf,qrcode库及url参数拼接,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

概览

此篇文章主要是对html2pdf,qrcode库及url参数拼接的零散整理

一. html2pdf

html2pdf 是一个可以将 HTML 内容转换为 PDF 文件的库。它通常用于前端或服务器端,将网页或 HTML 字符串转换为可打印或可分享的 PDF 格式。这对于需要将网页内容保存为 PDF 或者生成报表等场景非常有用。
用法示例

 function downloadQrCode() {isPrint.value = true;const opt = {margin: 0,filename: qrName.value + '.pdf',image: { type: 'jpeg', quality: 0.98 },loadingnvas: {scale: 5,},jsPDF: {unit: 'in', // 单位设置为英寸  format: 'a1', // 纸张大小设置为 A1  orientation: 'landscape' // 页面方向设置为横向 },};new html2pdf().set(opt).from(qrHTMLRef.value).save().finally(() => {isPrint.value = false;});}
  • 使用 html2pdf 插件创建一个新的实例。
  • 使用 .set(opt) 方法设置 PDF 的选项。
  • 使用 .from(qrHTMLRef.value) 方法指定要转换为 PDF 的 HTML 内容。这里假设 qrHTMLRef.value 是一个 HTML 字符串或元素的引用。
  • 使用 .save() 方法保存并下载 PDF 文件。
  • 使用finally方法设定最后执行的逻辑

二. qrcode

用法示例

import { toDataURL } from 'qrcode';  async function generateQRCode() {  try {  const text = 'Hello, QR Code!'; // 要编码为二维码的文本  const options = {  errorCorrectionLevel: 'H',width: 256, // 二维码宽度  color: {  dark: '#000000', // 二维码中深色部分的颜色  light: '#ffffff', // 二维码中浅色部分的颜色  },  };  const dataURL = await toDataURL(text, options); // 生成二维码的 Data URL  console.log(dataURL); // 打印 Data URL 到控制台  // 可以将 dataURL 设置到 img 元素的 src 属性中显示二维码  const imgElement = document.getElementById('qrcode-img');  imgElement.src = dataURL;  } catch (error) {  console.error('Error generating QR code:', error);  }  
}  generateQRCode();

text参数在qrcode库中不是直接表示页面路径,但你可以将页面路径(URL)作为文本内容传递给toDataURL函数来生成一个指向该页面的二维码。

errorCorrectionLevel 属性在二维码生成中代表纠错级别。在二维码生成库中,纠错级别通常用于确定在二维码中嵌入多少额外的数据,以便在二维码被部分损坏或污损时仍可以读取。

纠错级别通常有以下几种(不同的库可能命名稍有不同,但概念相似):

L (Low) - 低纠错级别。适用于高质量打印或几乎无损坏的二维码。
M (Medium) - 中等纠错级别。适用于一般打印和日常使用。
Q (Quartile) - 四分之一纠错级别。适用于稍微有损坏的二维码。
H (High) - 高纠错级别。适用于损坏较为严重或打印质量较低的二维码。
当你选择一个较高的纠错级别时,二维码会包含更多的冗余数据,这会增加二维码的复杂性和大小。然而,这也意味着二维码在遭受损坏时更有可能成功解码。

三. url参数拼接

代码示例

function setObjToUrlParams(baseUrl, obj) {  if (!obj) return baseUrl;  const paramsArray = Object.entries(obj).map(([key, value]) => {  return `${encodeURIComponent(key)}=${encodeURIComponent(value)}`;  });  // join方法拼接成字符串const newParameters = paramsArray.join('&');  const id = baseUrl.lastIndexOf('?');  if (id < 0) {  // 如果原始 URL 没有查询参数,则直接添加 '?' 和参数  return `${baseUrl}?${newParameters}`;  } else {  console.log(baseUrl.slice(id + 1),'1233')// 如果原始 URL 有查询参数,则保留原有的 '?',并添加新的参数  // 使用 '&' 连接新旧参数,并确保没有多余的斜杠  return `${baseUrl.slice(0, id)}?${baseUrl.slice(id + 1).replace(/\/$/, '')}&${newParameters}`;  }  
}  

这篇关于html2pdf,qrcode库及url参数拼接的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/909509

相关文章

CSS3中使用flex和grid实现等高元素布局的示例代码

《CSS3中使用flex和grid实现等高元素布局的示例代码》:本文主要介绍了使用CSS3中的Flexbox和Grid布局实现等高元素布局的方法,通过简单的两列实现、每行放置3列以及全部代码的展示,展示了这两种布局方式的实现细节和效果,详细内容请阅读本文,希望能对你有所帮助... 过往的实现方法是使用浮动加

Java通过反射获取方法参数名的方式小结

《Java通过反射获取方法参数名的方式小结》这篇文章主要为大家详细介绍了Java如何通过反射获取方法参数名的方式,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1、前言2、解决方式方式2.1: 添加编译参数配置 -parameters方式2.2: 使用Spring的内部工具类 -

css渐变色背景|<gradient示例详解

《css渐变色背景|<gradient示例详解》CSS渐变是一种从一种颜色平滑过渡到另一种颜色的效果,可以作为元素的背景,它包括线性渐变、径向渐变和锥形渐变,本文介绍css渐变色背景|<gradien... 使用渐变色作为背景可以直接将渐China编程变色用作元素的背景,可以看做是一种特殊的背景图片。(是作为背

Java实战之自助进行多张图片合成拼接

《Java实战之自助进行多张图片合成拼接》在当今数字化时代,图像处理技术在各个领域都发挥着至关重要的作用,本文为大家详细介绍了如何使用Java实现多张图片合成拼接,需要的可以了解下... 目录前言一、图片合成需求描述二、图片合成设计与实现1、编程语言2、基础数据准备3、图片合成流程4、图片合成实现三、总结前

CSS自定义浏览器滚动条样式完整代码

《CSS自定义浏览器滚动条样式完整代码》:本文主要介绍了如何使用CSS自定义浏览器滚动条的样式,包括隐藏滚动条的角落、设置滚动条的基本样式、轨道样式和滑块样式,并提供了完整的CSS代码示例,通过这些技巧,你可以为你的网站添加个性化的滚动条样式,从而提升用户体验,详细内容请阅读本文,希望能对你有所帮助...

css实现图片旋转功能

《css实现图片旋转功能》:本文主要介绍了四种CSS变换效果:图片旋转90度、水平翻转、垂直翻转,并附带了相应的代码示例,详细内容请阅读本文,希望能对你有所帮助... 一 css实现图片旋转90度.icon{ -moz-transform:rotate(-90deg); -webkit-transfo

vue基于ElementUI动态设置表格高度的3种方法

《vue基于ElementUI动态设置表格高度的3种方法》ElementUI+vue动态设置表格高度的几种方法,抛砖引玉,还有其它方法动态设置表格高度,大家可以开动脑筋... 方法一、css + js的形式这个方法需要在表格外层设置一个div,原理是将表格的高度设置成外层div的高度,所以外层的div需要

Vue项目中Element UI组件未注册的问题原因及解决方法

《Vue项目中ElementUI组件未注册的问题原因及解决方法》在Vue项目中使用ElementUI组件库时,开发者可能会遇到一些常见问题,例如组件未正确注册导致的警告或错误,本文将详细探讨这些问题... 目录引言一、问题背景1.1 错误信息分析1.2 问题原因二、解决方法2.1 全局引入 Element

详解如何在React中执行条件渲染

《详解如何在React中执行条件渲染》在现代Web开发中,React作为一种流行的JavaScript库,为开发者提供了一种高效构建用户界面的方式,条件渲染是React中的一个关键概念,本文将深入探讨... 目录引言什么是条件渲染?基础示例使用逻辑与运算符(&&)使用条件语句列表中的条件渲染总结引言在现代

Python调用另一个py文件并传递参数常见的方法及其应用场景

《Python调用另一个py文件并传递参数常见的方法及其应用场景》:本文主要介绍在Python中调用另一个py文件并传递参数的几种常见方法,包括使用import语句、exec函数、subproce... 目录前言1. 使用import语句1.1 基本用法1.2 导入特定函数1.3 处理文件路径2. 使用ex