echarts引入自定义字体不起作用问题记录

echarts引入自定义字体不起作用问题记录

1、问题描述

初始化界面字体不作用,当界面更新后字体样式正常显示

2、原因描述

这通常是由于字体文件加载延迟导致的。ECharts 在初始化时可能还没有加载完字体文件,因此无法正确应用字体样式

3、解决方案

<template><div class="map_layout" ref="chartRef"></div>
</template>
<script setup>
import * as echarts from 'echarts'
import { ref, watch, onUnmounted, onBeforeMount } from 'vue'
import mapData from '@/utils/mapData.json'
import { fontSizeRatio } from '@/utils'const chartRef = ref(null)
let chart = nullonBeforeMount(() => {echarts.registerMap('聊城', mapData)let renderData = mapData.features.map((item) => {return {name: item.properties.name}})let options = {geo: [{map: '聊城',aspectScale: 1,zoom: 0.65,layoutCenter: ['50%', '50%'],layoutSize: '140%',show: true,roam: false,label: {emphasis: {show: false}},itemStyle: {normal: {borderColor: 'white',borderWidth: 1,shadowColor: '#8cd3ef',shadowOffsetY: 10,shadowBlur: 30,areaColor: 'rgb(59, 168, 226)'}}},// 重影{type: 'map',map: '聊城',zlevel: -1,aspectScale: 1,zoom: 0.65,layoutCenter: ['50%', '51%'],layoutSize: '140%',roam: false,silent: true,itemStyle: {normal: {borderWidth: 1,borderColor: 'white',shadowColor: 'rgb(0, 126, 208)',shadowOffsetY: 5,shadowBlur: 15,areaColor: 'rgb(0, 126, 208)'}}}],series: [{name: '聊城市数据',type: 'map',map: '聊城', // 自定义扩展图表类型aspectScale: 1,zoom: 0.65, // 缩放showLegendSymbol: true,label: {normal: {show: true,textStyle: {color: '#286ADC',fontSize: '0.24rem',letterSpacing: '0.03rem',fontFamily: 'YouSheBiaoTiHei',textBorderColor: 'white', // 文本边框textBorderWidth: fontSizeRatio(4) // 文字边框大小}},emphasis: {show: true,color: '#286ADC',fontSize: '0.24rem',letterSpacing: '0.02rem',fontFamily: 'YouSheBiaoTiHei',textBorderColor: 'white',textBorderWidth: fontSizeRatio(4)}},itemStyle: {normal: {areaColor: {type: 'linear-gradient',x: 0,y: 0,x2: 0,y2: 1000,colorStops: [{offset: 0,color: 'rgba(78, 201, 242)' // 0% 处的颜色},{offset: 0.5,color: 'rgba(27, 115, 199, 1)' // 50% 处的颜色},{offset: 1,color: 'rgba(27, 115, 199, 1)' // 100% 处的颜色}],global: true // 缺省为 false},borderColor: '#fff',borderWidth: fontSizeRatio(2)},emphasis: {show: false,areaColor: {type: 'linear',x: 0,y: 0,x2: 0,y2: 1, // 渐变方向从上到下colorStops: [// 颜色停靠点{ offset: 0, color: '#E86632' }, // 开始颜色{ offset: 0.5, color: '#F6CB55' },{ offset: 1, color: '#E86632' } // 结束颜色],globalCoord: true // 是否为全局坐标}}},layoutCenter: ['50%', '50%'],layoutSize: '140%',markPoint: {symbol: 'none'},data: renderData}]}setTimeout(() => {chart = echarts.init(chartRef.value)options && chart.setOption(options)window.addEventListener('resize', resizeHandler)document.fonts.ready.then(() => {resizeHandler()})}, 0)
})function resizeHandler() {chart &&chart.resize({animation: {duration: 300,easing: 'quadraticIn'}})
}onUnmounted(() => {chart && chart.dispose()window.removeEventListener('resize', resizeHandler)
})watch(chartRef, (newContainer, oldContainer) => {if (newContainer && newContainer !== oldContainer) {resizeHandler()}
})
</script><style scoped lang="less">
@import '@/assets/styles/fonts.css';.map_layout {margin-top: -6%;margin-left: 8%;height: 100%;
}
</style>
// 确保字体加载完成后重新渲染图表
document.fonts.ready.then(() => {resizeHandler()
})

4、效果图
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/12889.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

UE5.4 PCG 生成藤蔓墙体

一、新建Actor&#xff0c;添加Spline组件&#xff0c;挂上PCG组件&#xff0c;设置“墙体”和“植被”为静态网格体变量 二、编写PCG_Wall 1.生成墙体 2.生成墙体植被

【网络】子网掩码

> 作者&#xff1a;დ旧言~ > 座右铭&#xff1a;松树千年终是朽&#xff0c;槿花一日自为荣。 > 目标&#xff1a;了解什么是子网掩码&#xff0c;并且能熟练掌握子网掩码的相关计算。 > 毒鸡汤&#xff1a;有些事情&#xff0c;总是不明白&#xff0c;所以我不会…

Worldly平台更新Higg FEM 2024模块价格及购买指南

近日&#xff0c;LEVERAGE供应链管理从美国可持续服装联盟&#xff08;Cascale&#xff09;验证官方Worldly平台模块订阅更新中获悉&#xff0c;FEM2024模块价格更新的重要信息。此次更新涉及工厂环境模块&#xff08;FEM&#xff09;和工厂社会劳工模块&#xff08;FSLM&#…

Rocky9通过Docker-compose部署zabbix 7.0.5

Rocky9通过Docker-compose部署zabbix 7.0.5 1. 实验环境架构2. Zabbix-Server准备工作2.1 更新仓库2.2 安装docker-ce2.3 安装docker-compose 3. 安装Zabbix项目3.1 克隆项目3.2 预下载镜像3.3 启动Zabbix 4. 启动web管理端4.1 登录web管理页4.2 修改时区和语言 5. Agent安装配…

企业内训系统

在当今这个竞争激烈的市场环境中&#xff0c;企业的持续发展不仅依赖于外部市场的拓展&#xff0c;更离不开内部团队能力的提升。企业内训系统&#xff0c;作为提升企业竞争力、促进员工成长的重要工具&#xff0c;正逐渐成为现代企业管理中不可或缺的一环。本文将深入探讨企业…

QT自定义控件封装

QT自定义控件封装 1.概述 这篇文章介绍如何创建UI文件&#xff0c;通过自定义方式将两个控件联动起来&#xff0c;实现自定义功能。 2.创建UI文件 新建一个widget的普通项目&#xff0c;然后在项目名称上右键选择And New... 新建文件&#xff0c;然后选择QT 再选择Qt Desig…

物联网(RFID)全景:被装信息化监控应用与挑战

一、被装物联网信息化建设的动因 信息化改革在20世纪80年代中期启航&#xff0c;旨在提升被装保障的效率。随着时间的推移&#xff0c;硬件的广泛运用和软件的快速迭代&#xff0c;装备业务在规划、制造、分发以及战时支援等核心环节&#xff0c;已经与信息系统深度融合&#x…

屏幕解析工具——OmniParser

0 引言 OmniParser是微软开源的一种屏幕解析工具&#xff0c;提供了一种将用户界面截图解析为结构化元素的综合方法&#xff0c;通过此方法可以对UI界面进行可交互元素的提取和描述&#xff0c;然后将此结构化信息和任务指令&#xff0c;输入到大模型中&#xff0c;以增强大模…

衡石分析平台系统分析人员手册-嵌入样式定制化指南­

发布页面嵌入样式定制化指南​ 使用衡石智能分析平台制作好 Dashboard 和 Chart 以后&#xff0c;可以通过 iframe 的方式嵌入到已有系统中。为了达到风格统一&#xff0c;嵌入 iframe 的时候支持丰富的定制化选项。 定制 Dashboard 的 iframe​ 参数列表​ 仪表盘嵌入时支持…

Nginx更换ssl证书不生效

一.场景 在用的ssl证书要过期了&#xff0c;申请了新的ssl证书下来&#xff0c;在nginx配置上更换上去后&#xff0c;打开系统地址&#xff0c;一依然是使用原来的旧证书&#xff0c;以前有更换过别的域名证书&#xff0c;重启nginx服务后立马就生效了。 这次没生效&#xff…

基于python和Django的用户管理接口开发

1.异步用户登录\登出接口开发 1.设计公共响应数据类型 文件地址&#xff1a;utils/response404.py from django.http import JsonResponseclass BadRequestJsonResponse(JsonResponse):status_code 400def __init__(self, err_list, *args, **kwargs):data {"error_c…

Docker--Docker是什么和对Docker的了解

Docker 的本质 Docker的本质是LXC&#xff08;Linux容器&#xff09;之类的增强版&#xff0c;它本身不是容器&#xff0c;而是容器的易用工具。 Docker通过虚拟化技术&#xff0c;将代码、依赖项和运行环境打包成一个容器&#xff0c;并利用隔离机制来使得容器之间互相独立、…

Window下PHP安装最新sg11(php5.3-php8.3)

链接: https://pan.baidu.com/s/10yyqTJdwH_oQJnQtWcwIeA 提取码: qz8y 复制这段内容后打开百度网盘手机App&#xff0c;操作更方便哦 (链接失效联系L88467872) 1.下载后解压文件&#xff0c;将对应版本的ixed.xx.win文件放进php对应的ext目录下&#xff0c;如图所示 2.修改ph…

C# yolo10使用onnx推理

一、前言 本篇总结C#端使用yolo10的onnx文件做模型推理&#xff0c;主要使用Microsoft.ML.OnnxRuntime.Gpu这个库。需要注意的是Microsoft.ML.OnnxRuntime 和 Microsoft.ML.OnnxRuntime.Gpu 这2库只装1个就行&#xff0c;CPU就装前者&#xff0c;反之后者。然后需要注意系统安装…

MNIST数据集下载与保存为图片格式

深度学习 文章目录 深度学习下载数据集 下载数据集 https://github.com/geektutu/tensorflow-tutorial-samples/tree/master/mnist/data_set t10k-images-idx3-ubyte.gz t10k-labels-idx1-ubyte.gz train-images-idx3-ubyte.gz train-labels-idx1-ubyte.gz 解压后&#xff0c;…

Oracle In子句

Oracle IN 运算符可以用来确定值是否与列表或子查询中的任何值相匹配 Oracle IN语法&#xff1a; 确定表达式是否与值列表匹配的 Oracle IN 运算符的语法如下所示&#xff1a; expression [NOT] IN (v1,v2,...)并且表达式的语法与子查询匹配&#xff1a; expression [NOT] I…

华为OD机试 - 查找舆情热词(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 2024E卷题库疯狂收录中&#xff0c;刷题点这里 专栏导读 本专栏收录于《华为OD机试真题&#xff08;Python/JS/C/C&#xff09;》。 刷的越多&#xff0c;抽中的概率越大&#xff0c;私信哪吒&#xff0c;备注华为OD&#xff0c;加入华为OD刷题交流群&#xff0c;…

从容应对蓝屏:必知原因与对策

电脑蓝屏&#xff0c;即“蓝屏死机”或“蓝屏错误”&#xff0c;是计算机用户在日常使用中可能遇到的一种较为严重的系统错误状态。当屏幕突然变成蓝色&#xff0c;并显示错误代码和信息时&#xff0c;这通常意味着系统遇到了无法处理的问题&#xff0c;了解电脑蓝屏的原因及解…

每日小练:Day1

1.牛牛冲钻五 题目链接&#xff1a;A-牛牛冲钻五_牛客小白月赛38 题目描述&#xff1a; 代码如下&#xff1a; import java.util.*;public class Main{public static void main(String[] args){Scanner scannernew Scanner(System.in);int tscanner.nextInt();while(t--!0){…

springboot汽车租赁智慧管理-计算机设计毕业源码96317

目 录 第 1 章 引 言 1.1 选题背景 1.2 研究现状 1.3 论文结构安排 第 2 章 系统的需求分析 2.1 系统可行性分析 2.1.1 技术方面可行性分析 2.1.2 经济方面可行性分析 2.1.3 法律方面可行性分析 2.1.4 操作方面可行性分析 2.2 系统功能需求分析 2.3 系统性需求分析…