当前位置: 首页 > wzjs >正文

网页设计与制作课程实施报告苏州推广关键词优化

网页设计与制作课程实施报告,苏州推广关键词优化,天津做网站哪个公司好,姑苏区住房建设局网站📊 如何使用 html2canvas 将 ECharts 图表导出为图片 本篇教程将演示如何在 Vue 项目中使用 ECharts html2canvas 实现以下功能: 渲染多个 ECharts 图表使用 html2canvas 将页面指定区域截图导出为高清图片支持导出 PNG 文件(也可以后续插…

📊 如何使用 html2canvas 将 ECharts 图表导出为图片

本篇教程将演示如何在 Vue 项目中使用 ECharts + html2canvas 实现以下功能:

  • 渲染多个 ECharts 图表
  • 使用 html2canvas 将页面指定区域截图导出为高清图片
  • 支持导出 PNG 文件(也可以后续插入 Word 等)

✅ 效果预览

在这里插入图片描述

点击「下载」按钮后,将当前图表区域导出为一张高清图片。


🧱 技术栈

  • Vue 2
  • ECharts
  • html2canvas(用于 DOM 转图片)

📦 安装依赖

使用 npm 安装 html2canvas

npm install html2canvas

💡 页面结构说明

外层容器 #combatTable,控制截图区域,设置了固定宽高

内含两个 ECharts 图表容器 #bar 和 #bar2

下载按钮触发截图并导出 PNG

🧩 完整代码

<template><div><div @click="generateAndDownloadReport">下载</div><div style="height: 800px; width: 1200px" id="combatTable"><divstyle="height: 300px; width: 100px; display: inline-block"id="bar"></div><divstyle="height: 300px; width: 450px; display: inline-block"id="bar2"></div></div></div>
</template>
<script>
import html2canvas from 'html2canvas';
export default {name: '',components: {},mixins: [],props: {},data() {return {};},computed: {},watch: {},mounted() {this.getEcharts();},methods: {getEcharts() {const panCharts = this.$echarts.init(document.querySelector('#bar'));const panCharts2 = this.$echarts.init(document.querySelector('#bar2'));let chartData = [95.65, 96.15, 96.82, 97.45, 97.85, 99.23, 99.79, 100.77, 100.03,101.75, 101.42, 101.54, 101.24, 102.65, 103.08, 103.22, 102.87,101.86, 101.3, 100.04, 101.08, 98.58, 98.42, 99, 98.94, 99.21,99.29, 100.2, 100.41, 100.26, 101.88, 103.26, 105.1, 109.39,108.48, 108.71, 108.18, 109.15, 109.6, 106.76, 107.35, 106.77,105.99, 105.48, 104.52, 104.25, 104.94, 103.35, 103.55,];const xData = Array.from({ length: chartData.length },(_, index) => index);let options = {tooltip: {trigger: 'axis',axisPointer: {type: 'cross',},},xAxis: {type: 'category',data: xData,},yAxis: {scale: true,},series: [{symbolSize: 10,data: xData.map((x, i) => [x, chartData[i]]),type: 'scatter',},],};// 渲染 echartspanCharts.setOption(options, true);panCharts2.setOption(options, true);},generateAndDownloadReport() {try {const targetElement = document.getElementById('combatTable');html2canvas(targetElement, {scale: 1, // 提高分辨率backgroundColor: '#ffffff', // 背景色(可自定义)useCORS: true, // 如果有加载图片或图标}).then((canvas) => {// 生成图片链接const link = document.createElement('a');link.download = 'combat-report.png';link.href = canvas.toDataURL('image/png', 0.0);// 下载图片document.body.appendChild(link);link.click();document.body.removeChild(link);});} catch (error) {console.error('生成报告失败:', error);alert('下载失败:' + error.message);}},},
};
</script>
<style lang="" scoped></style>

🎯 关键参数说明

scale 控制图片清晰度(倍数) 2 或 3
backgroundColor 图片背景色 #ffffff(避免透明)
useCORS 是否启用跨域支持 true(必要时)
canvas.toDataURL() 导出为 Base64 图片 ‘image/png’, 1.0 表示高清

如果图片太大,可以适当压缩或限制 div 尺寸

html2canvas 不能截取视频或 iframe 内容

http://www.dtcms.com/wzjs/782848.html

相关文章:

  • 做餐饮网站价格哪些网站可以接工程做
  • 网站页面是自己做还是使用模板建网站 西安
  • 网站单页模板下载网站标签怎么设置
  • 网站怎么上传模板企业网站制作哪家好
  • 丹徒网站建设代理商营口化工网站建设
  • 佰牛深圳网站建设网站建设的数据导入导出
  • 云虚拟主机和网站建设被跨境电商骗了怎么办
  • 做外贸网站怎么做天津关键词排名推广
  • 找潍坊做网站的网站开发项目安全加固的要求
  • 制作单位网站上海地区网站设计
  • 网站制作成本多少钱网站阴影
  • 高端网站建设专家北京专业网站制作公司
  • 枣庄做网站优化沈阳什么行业做网站的最多
  • 自己做网站帮别人卖东西武威建设银行网站
  • 广东省网站备案系统请别人做网站的缺点
  • 公司网站做的一样算不算侵权访客浏览网站 网站怎么跟踪
  • 品牌型网站开发怎么制作网页页面
  • 网站开发技术简介旅游网站开发近五年参考文献
  • 大场网站建设自己个人网站后台怎么做
  • 传播易网站开发方案wordpress主叶SEO优化
  • 网站布局策划企业网站后台怎么做
  • 品牌网站建设j小蝌蚪j畜牧养殖企业网站源码
  • 有商家免费建商城的网站吗自己可以做网站服务器吗
  • 网站建设优化过程中的优化策略建站平台功能结构图
  • 富阳网站建设洛洛科技办公室装修计入什么费用
  • 网站预付款怎么做会计分录拨号服务器做网站nat123
  • 软件技术去哪个学校南昌网站建设优化公司排名
  • WordPress网站文章导出导入机械加工网入网
  • 免费的网站软件免费网站建设免代码
  • 网站搭建工具修改wordpress热门文章的数量