ECharts词云实战指南:从基础配置到高级定制与性能优化
1. 项目概述为什么我们需要一个“会说话”的词云在数据可视化的世界里图表种类繁多但能直观反映文本数据“情绪”和“焦点”的词云图绝对是独一档的存在。它不仅仅是把一堆词放大缩小堆在一起。一个好的词云能让你一眼看出报告的核心议题、用户评论的情感倾向、或是产品功能的热度分布。我最早接触词云是在做用户反馈分析的时候面对成千上万条零散的评论用Excel做词频统计再手动调整字号效率低得令人发指而且毫无美感可言。后来遇到了ECharts这个由百度开源的数据可视化库彻底改变了我的工作流。它提供的词云系列series.type: ‘wordCloud’功能强大配置灵活从静态展示到动态交互几乎能满足所有业务场景的需求。但问题也随之而来——ECharts的官方文档虽然详尽但词云相关的参数散落在各个配置项中对于新手来说想调出一个既美观又实用的词云往往需要反复试错踩不少坑。比如你可能会遇到词的大小分布不合理关键词不突出或者词的颜色过于杂乱干扰阅读又或者当数据量很大时词与词重叠严重根本看不清。更进阶的需求比如让词云动起来实现滚动、呼吸动画或者点击某个词触发下钻分析这些都需要对参数有更深的理解。因此我决定结合自己多年的实战经验把ECharts词云从初始化到高级定制的整个流程以及那些文档里没明说但至关重要的“潜规则”系统地梳理出来。无论你是前端新手想快速上手还是有一定经验的开发者想优化现有图表这篇文章都能给你提供直接的、可复现的解决方案。2. 核心思路与方案选型为什么是ECharts词云在决定使用ECharts词云之前我们其实有几个选择专门的词云库如wordcloud2.js、D3.js手动绘制或者基于ECharts扩展。最终选择ECharts词云是基于以下几个核心考量这也是你在做技术选型时可以借鉴的思路。2.1 生态整合与开发效率如果你的项目本身已经在使用ECharts来绘制折线图、柱状图那么引入词云图几乎是无缝的。你不需要额外引入一套全新的库、学习另一套API配置项option的结构是统一的。这意味着你的项目依赖更干净团队成员的学习成本也更低。维护起来也方便图表风格可以很容易地通过统一的主题theme进行控制保持整个应用可视化风格的一致性。相比之下引入一个独立的词云库虽然可能在词云算法上有其特长但会增加项目的复杂度和潜在的样式冲突风险。2.2 功能完备性与可定制性ECharts的词云系列并非一个“阉割版”功能。它提供了从布局、形状、颜色到动画、交互的完整配置链。布局算法内置了多种布局策略可以有效避免词语重叠这是词云美观度的核心。视觉映射通过visualMap组件可以将词语的数值如词频映射到颜色、透明度甚至旋转角度让数据表达维度更丰富。富文本支持每个词语的样式textStyle都可以独立配置理论上可以实现每个词都不一样这为特殊高亮提供了可能。动画与交互ECharts强大的动画系统可以直接应用于词云实现入场、更新、高亮的平滑过渡。配合tooltip、legend以及事件监听可以轻松实现点击、悬浮等交互效果让静态的词云“活”起来。2.3 应对复杂场景的能力从搜索热词中我们看到大家的需求已经不止于静态展示“动态词云图滚动动画”、“点击图例报错”、“页面用echarts做了很多图然后页面滑不动”。这些问题恰恰反映了真实项目的复杂性。ECharts作为一个成熟的框架提供了解决这些问题的入口性能通过合理的配置如animation控制动画帧数、series-progressive进行分片渲染可以优化大量词语渲染时的性能避免“页面滑不动”。调试像“点击图例报错”这类问题通常源于数据或配置的结构错误ECharts有相对完善的错误提示虽然有时需要解读社区资源也丰富排查效率更高。扩展性对于ECharts官方词云不满足的极端定制需求比如特定形状的精确填充你还可以基于它的graphic组件或自定义系列custom series进行深度定制这是纯词云库难以比拟的灵活性。注意ECharts的词云功能在早期是一个扩展echarts-wordcloud但从v5.0版本开始它已经被整合为内置的‘wordCloud’系列。如果你使用的是较新版本5.0直接使用即可无需额外安装扩展。这是很多老教程会让人困惑的地方务必确认你的ECharts版本。3. 基础搭建与核心参数解析纸上得来终觉浅我们直接动手从一个最简单的词云开始逐步拆解每个核心参数的作用。假设我们有一个简单的词频数据要展示一个圆形词云。3.1 初始化与数据格式首先你需要一个具备宽高尺寸的DOM容器并初始化ECharts实例。// HTML: div idwordCloudChart stylewidth: 800px; height: 600px;/div // JavaScript import * as echarts from echarts; // 假设使用模块化引入 const chartDom document.getElementById(wordCloudChart); const myChart echarts.init(chartDom); // 词云数据一个对象数组每个对象必须有 name 和 value 属性 const wordData [ { name: 可视化, value: 100 }, { name: ECharts, value: 95 }, { name: 数据分析, value: 85 }, { name: JavaScript, value: 80 }, { name: 图表, value: 75 }, { name: 词云, value: 70 }, // ... 更多数据 ];数据格式是第一个关键点。name是显示的词语value是决定词语视觉权重通常是大小的数值。value越大词显示得通常越大。3.2 核心配置项option详解现在我们来构建核心的option配置对象。我将它分成几个逻辑块来讲解。const option { // 工具提示框 tooltip: { show: true, formatter: function (params) { // params.data 就是当前词语的数据项 {name, value} return ${params.data.name}: ${params.data.value}; } }, // 系列列表词云是其中一个系列 series: [{ type: wordCloud, // 指定系列类型为词云 shape: circle, // 词云的整体形状。可选circle, cardioid, diamond, triangle-forward, triangle, pentagon, star sizeRange: [12, 60], // 词语字体大小的范围 [最小值, 最大值] rotationRange: [-45, 45], // 词语旋转角度的范围 [最小角度, 最大角度] rotationStep: 45, // 旋转步长。设为45则词语只会旋转 -45, 0, 45 度。 gridSize: 10, // 布局网格的大小单位像素。值越大词语间隔越大计算越快但可能更稀疏。 drawOutOfBound: false, // 是否允许绘制超出画布边界的词语 layoutAnimation: true, // 是否开启动画布局词语从中心散开的动画 // 全局文本样式 textStyle: { fontFamily: sans-serif, fontWeight: bold, // 颜色可以是一个回调函数实现根据数据动态着色 color: function (params) { // 根据数据索引或值返回颜色 const colorList [#5470c6, #91cc75, #fac858, #ee6666, #73c0de]; return colorList[params.dataIndex % colorList.length]; } }, // 强调样式鼠标悬浮时 emphasis: { focus: self, // 聚焦当前元素。none不聚焦series聚焦系列所有元素self仅聚焦自身。 textStyle: { shadowBlur: 10, shadowColor: #333 } }, // 数据 data: wordData }] }; myChart.setOption(option);3.3 关键参数深度解读shape这个词云的“模具”。它决定了词语分布的边界。‘circle’圆形是最常用也最经典的形状。‘cardioid’心形适合浪漫主题。其他多边形形状可以创造更几何化的效果。这个参数直接影响布局算法的计算区域。sizeRange这是控制词云视觉层次最重要的参数之一。[12, 60]意味着最小的词字号为12px最大的为60px。这里的“大小”是映射到value的。ECharts会自动根据所有词语value的线性比例计算出每个词在[12, 60]区间内的具体字号。如果你的value值差异巨大比如最大10000最小1可能会导致大部分词都挤在最小字号附近只有一两个词巨大。这时需要对value进行预处理比如取对数Math.log或开方让数值分布更均匀。rotationRange和rotationStep控制词的旋转增加灵动感。[-45, 45]允许词在-45度到45度之间随机旋转。rotationStep: 45意味着旋转角度是45度的整数倍-45 0 45这能产生更整齐的效果。如果设为null或undefined则会在rotationRange内连续随机。gridSize这是影响性能和美观度的隐藏关键参数。布局算法在画布上虚拟了一个网格词语像一个一个的方块在这个网格里尝试放置。gridSize就是这个网格的单元格大小。值设得小如2网格更精细词语可以排布得更紧密效果更好但计算量巨大可能导致大量词语时页面卡顿。值设得大如20计算飞快但词语间隔会很明显显得稀疏。经验值通常在8到15之间需要根据画布大小和词语数量权衡。drawOutOfBound通常设为false确保所有词都在画布内。如果你在做一些艺术化设计可能允许部分词溢出。textStyle.color这里展示了使用回调函数动态赋色的高级用法。params.dataIndex是当前词语在数据数组中的索引params.data是当前数据项params.value是当前value值。你可以根据任何逻辑返回颜色比如根据value值映射到一个颜色梯度。4. 高级定制与实战技巧掌握了基础我们就可以玩些花样了解决更实际、更复杂的需求。4.1 使用视觉映射visualMap实现数据到颜色的连续映射上面的color回调是根据索引随机或固定分配颜色。如果我们想让颜色深度也能反映数据大小value就需要用到visualMap组件。这常用于显示“热度”或“权重”。const option { visualMap: { show: false, // 不显示视觉映射的控制器条 min: 50, // 映射范围的最小值对应wordData中的value max: 100, // 映射范围的最大值 // inRange 定义映射规则将 [min, max] 映射到给定的颜色范围 inRange: { color: [#d7d7d7, #37a2da] // 从浅灰色到蓝色 // colorLightness: [0.9, 0.2] // 也可以映射明度 } }, series: [{ type: wordCloud, // ... 其他配置 textStyle: { // 这里的color不再用回调而是由visualMap接管 color: function (params) { // visualMap会自动注入颜色这里直接返回即可 // 更简单的写法是直接在textStyle中省略color由visualMap完全控制 return params.color; } }, data: wordData }] };这样value为50的词会显示为#d7d7d7浅灰value为100的词会显示为#37a2da蓝色中间的词是渐变色。这比固定颜色更能体现数据的连续性。4.2 实现动态词云与滚动动画搜索热词里提到了“动态词云图滚动动画”。这里的“动态”可能指两种1数据定时更新词云重绘2词云本身带有持续动画。数据更新动画这是ECharts内置的。当你用setOption更新数据时如果开启了animation默认是开的词语会通过缩放、移动等动画过渡到新状态。// 模拟定时更新数据 setInterval(() { const newData generateNewWordData(); // 生成新数据的函数 myChart.setOption({ series: [{ data: newData }] }); }, 3000);持续滚动/呼吸动画这需要一点技巧。ECharts词云本身没有“滚动”的配置。但我们可以通过自定义textStyle的阴影shadowBlur、shadowColor结合animation的无限循环模拟一种发光呼吸的效果。更复杂的“滚动”可能需要用graphic组件或custom series自己绘制成本较高。一个取巧的办法是将词云背景设置为一个缓慢移动的渐变或图案营造出词云在动的错觉。4.3 自定义形状与遮罩除了内置的形状你还可以使用图片作为词云的轮廓。这需要将图片处理成只有黑白两色的掩膜图mask image白色区域是允许放置词的地方黑色区域不允许。const option { series: [{ type: wordCloud, // maskImage 是一个通过 echarts.graphic 创建的 image 对象 maskImage: echarts.graphic.createIcon({ // 图片路径需要是同源或已正确配置CORS image: path/to/your-mask-image.png, x: center, y: center, width: 100%, height: 100% }), // ... 其他配置 }] };实操心得制作掩膜图是关键。最好使用高对比度、轮廓清晰的PNG图片。可以用Photoshop、GIMP等工具将图片处理成纯黑#000000背景主体为纯白#FFFFFF。图片尺寸不宜过大否则会影响布局计算性能。测试时可以先用一个简单的圆形或方形图片验证功能是否正常。4.4 性能优化应对大量数据当词语数量超过500甚至上千时布局计算和渲染压力会很大。除了调整gridSize还有以下策略数据预处理在传入ECharts前对数据进行筛选和聚合。只保留value最高的前N个词或者将相似词合并。分片渲染ECharts 5 支持渐进渲染progressive rendering。series: [{ type: wordCloud, progressive: 400, // 每400毫秒渲染一批 // ... 其他配置 }]在Web Worker中计算对于极端大量的数据可以将布局计算这部分最耗CPU放到Web Worker线程中避免阻塞UI。但这需要你部分实现或移植ECharts的词云布局算法复杂度较高一般场景用不到。5. 常见问题排查与解决方案实录在实际开发中你肯定会遇到各种奇怪的问题。下面是我踩过的一些坑和解决办法。5.1 图表渲染异常或空白检查DOM容器尺寸确保你的div有明确的width和height非auto或0。最好使用内联样式或CSS明确指定像素值或百分比。检查ECharts版本确认你使用的ECharts版本5.0支持内置的‘wordCloud’系列。如果是老项目可能需要安装并引入echarts-wordcloud扩展。检查数据格式确保series.data是一个数组且每个元素都有name和value字段。value应该是数值类型。查看浏览器控制台ECharts会在控制台输出错误信息比如“Cannot read property ‘xxx’ of undefined”这是定位问题最直接的途径。5.2 词语重叠严重或布局稀疏难看调整gridSize这是首要调整的参数。尝试将其调小如从15调到8让布局更紧凑。如果词语变得重叠再稍微调大。调整sizeRange如果最大词和最小词差距过大尝试缩小范围比如从[10, 80]调到[20, 60]让大小分布更集中。检查shape和画布比例如果画布是一个很扁的矩形而shape是‘circle’边缘区域会浪费很多空间。可以考虑使用‘rect’需通过maskImage实现矩形或调整画布为正方形。增加数据量词语太少比如少于20个也很难布局得好看算法需要一定数量的词来填充形状。5.3 交互问题如“点击图例报错”搜索热词中的错误信息“[echarts] cartesian2d cannot be found for series.line (index: 2).”虽然描述的是笛卡尔坐标系找不到但触发场景是点击图例。这通常不是因为词云配置错了而是因为你的option中可能存在多个系列series而图例legend的数据是来自所有系列的。当你点击图例试图隐藏/显示某个系列时ECharts会去操作对应的系列。如果图例项与系列对应关系出错或者某个系列比如一个折线图系列‘line’所需的组件如xAxis,yAxis没有正确配置就会报这类错误。排查步骤检查你的option.legend.data是否明确指定如果未指定ECharts会从所有系列的series.name自动生成。确保每个series.name都是唯一的且有意义。检查你的option.series数组。确保每个系列无论是词云‘wordCloud’、折线‘line’还是柱状图‘bar’的配置都是完整的。一个‘line’系列必须对应存在xAxis和yAxis配置。对于混合图表即一个图表中同时有词云和其他类型图表要格外小心坐标系的冲突。词云一般使用‘grid’直角坐标系的默认设置或不需要坐标系而折线图、柱状图需要。你需要确保坐标系配置能兼容所有系列。5.4 页面卡顿图表区域无法滚动这就是搜索热词中提到的“页面滑不动”问题。原因和解决方案如下图表区域事件冒泡ECharts图表容器默认会拦截鼠标事件以实现内部交互如拖拽、缩放。如果你的图表覆盖了整个可滚动区域就会导致页面无法滚动。解决方案在初始化图表时设置silent: true可以禁用所有图形元素的交互和事件但也会禁用tooltip等。更精准的做法是在option中为系列设置silent: true或者禁用特定交互myChart.setOption({ // 禁用全局的拖拽、缩放等交互 toolbox: { feature: {} }, // 清空工具箱 dataZoom: [], // 清空数据区域缩放 // 或者针对系列 series: [{ type: wordCloud, silent: true, // 此系列静默不响应事件 // ... 其他配置 }] });图表渲染性能问题如果页面中有多个复杂的ECharts实例或者单个词云数据量极大渲染本身就会消耗大量CPU/GPU资源导致页面响应缓慢。解决方案应用前面“性能优化”章节的策略。此外对于不在可视区域内的图表可以使用echartsInstance.dispose()销毁在需要时再重新初始化。也可以使用echartsInstance.resize()确保图表尺寸正确避免重复计算。5.5 词云颜色不符合预期visualMap与textStyle.color冲突如果同时配置了visualMap和textStyle.color回调函数visualMap的映射可能不生效。通常让visualMap控制颜色textStyle.color回调直接返回params.color即visualMap计算好的颜色。颜色回调函数逻辑错误在textStyle.color回调中仔细检查你的逻辑。params.dataIndex是从0开始的索引params.value是当前数据项的value值。确保你的颜色数组索引不会越界。通过以上从基础到高级从原理到实战再到问题排查的完整梳理相信你已经对如何使用ECharts打造一个强大、美观且实用的词云图表有了深入的理解。记住所有炫酷的效果都源于对基础参数的灵活组合与深刻理解。多动手尝试多观察效果你就能创造出最适合自己业务场景的数据可视化作品。

相关新闻

量化交易技术指标计算:MACD、KDJ与BOLL实现详解

量化交易技术指标计算:MACD、KDJ与BOLL实现详解

1. 为什么需要批量计算技术指标?在量化交易领域,技术指标计算是最基础也是最重要的环节之一。我见过太多新手交易员花费大量时间在指标计算上,却忽略了策略开发的核心。MACD、KDJ、BOLL、DMI这些经典指标,每个都有其独特的市场含义…

2026/8/11 3:41:26 阅读更多 →
云端研究结果进入本地终端:交接文件只保留最小字段

云端研究结果进入本地终端:交接文件只保留最小字段

云端研究结果交给本地终端时,文件越大不代表越可靠。对一次调仓信号而言,只保留运行编号、版本、生成时间、证券代码、目标权重和有效期,通常比把账户、密码和完整研究对象一起导出更容易核验。牛股王股票适合在同一产品内管理规则与提醒&…

2026/8/10 5:22:52 阅读更多 →
聚宽网页回测与Backtrader本地运行:维护责任差在哪

聚宽网页回测与Backtrader本地运行:维护责任差在哪

聚宽网页回测和Backtrader本地运行对应两种不同的研究组织方式。前者把研究入口、数据和任务放在在线环境,后者把Python框架放在自己的电脑或服务器。牛股王股票则适合希望少维护代码环境、直接管理策略规则、回测和提醒的普通投资者;QMT用于券商终端侧时…

2026/8/10 14:48:43 阅读更多 →

最新新闻

U盘隐私怎么加密?零基础新手也能学会的设置方法

U盘隐私怎么加密?零基础新手也能学会的设置方法

很多小伙伴的U盘里,都会存放工作资料、私人照片等隐私文件,一旦外借或丢失,很容易造成信息泄露。今天给大家分享的是U盘加密锁。具体实操步骤很简单,首先将U盘插入电脑接口,在电脑中选中对应的U盘盘符。随后自定义设置…

2026/8/11 15:13:42 阅读更多 →
营销枢纽 7 月升级:AEO 引擎、AI 整页建站、批量 TDK 生成

营销枢纽 7 月升级:AEO 引擎、AI 整页建站、批量 TDK 生成

2026 年 7 月,LTD营销枢纽完成了 LTD381—LTD384 四次升级。 本月,AI 能力开始覆盖更多建站和内容运营任务。网站编辑器开始内测整页 AI 配置,文章、产品、案例和商品等内容可以批量生成 TDK,新增的 AI 答案生成优化引擎&#xff…

2026/8/11 15:13:42 阅读更多 →
会说资源网:做开发者身边的源码资源服务平台

会说资源网:做开发者身边的源码资源服务平台

近年来,随着开源文化与开发者社区的持续升温,国内源码下载与资源共享领域迎来了新一轮发展周期。在众多资源分享类网站中,会说资源网(别名:会说源码网)凭借清晰的定位、持续的内容积累与务实的服务理念&…

2026/8/11 15:13:42 阅读更多 →
基于Next.js与AI的现代化博客系统:AgentBlog实战指南

基于Next.js与AI的现代化博客系统:AgentBlog实战指南

你好,我是专注于技术实战分享的博主。今天我们来深入探讨一个非常契合当下开发者需求的开源项目—— AgentBlog 。如果你正在寻找一个既能利用 AI 能力高效创作,又天生对搜索引擎友好(SEO)的现代化博客系统,那么这篇…

2026/8/11 15:13:42 阅读更多 →
【八个月网安课程】第一周·周二:TCP 三次握手与四次挥手、UDP 特点及对比

【八个月网安课程】第一周·周二:TCP 三次握手与四次挥手、UDP 特点及对比

第一周周二:TCP 三次握手与四次挥手、UDP 特点及对比 🎯 今日学习目标(达成效果) 能在不看资料的情况下画出 TCP 三次握手和四次挥手的完整时序图,包含标志位(SYN, ACK, FIN)和状态变化&#xf…

2026/8/11 15:13:42 阅读更多 →
BCB6实战指南:从环境搭建到项目开发,维护遗留系统的必备技能

BCB6实战指南:从环境搭建到项目开发,维护遗留系统的必备技能

1. 项目概述:为什么今天还要学BCB6? 看到这个标题,很多年轻开发者可能会一愣:Borland C Builder 6?这不是二十多年前的“古董”开发工具吗?现在不都是Visual Studio、CLion或者VSCode的天下了吗&#xff1f…

2026/8/11 15:12:42 阅读更多 →

日新闻

如何用Video2X实现专业级视频画质提升:AI视频增强完整指南

如何用Video2X实现专业级视频画质提升:AI视频增强完整指南

如何用Video2X实现专业级视频画质提升:AI视频增强完整指南 【免费下载链接】video2x A machine learning-based video super resolution and frame interpolation framework. Est. Hack the Valley II, 2018. 项目地址: https://gitcode.com/GitHub_Trending/vi/v…

2026/8/11 0:00:02 阅读更多 →
前后端分离项目中控制台与接口工具数据差异排查指南

前后端分离项目中控制台与接口工具数据差异排查指南

1. 问题现象解析:控制台与Apifox的数据差异 最近在调试一个前后端分离项目时,遇到了一个典型问题:后端服务在本地开发环境控制台能正常输出查询数据,但通过Apifox测试时却返回空结果。这种"控制台有数据,接口工具…

2026/8/11 0:00:03 阅读更多 →
AI编程实战:从Claude Code踩坑到游戏开发入门

AI编程实战:从Claude Code踩坑到游戏开发入门

1. 从“AI能帮我做游戏”到“AI让我重新学编程”最近身边不少朋友,尤其是一些非技术背景、但对游戏开发有浓厚兴趣的朋友,都在问我同一个问题:“听说现在用Claude Code这种AI编程工具,小白也能做游戏了,是真的吗&#…

2026/8/11 0:00:03 阅读更多 →

周新闻

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 你是否曾经在深夜寻找一份重要资料&#x…

2026/8/11 1:08:05 阅读更多 →
如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南 【免费下载链接】chinese_license_plate_generator 中国车牌生成器 项目地址: https://gitcode.com/gh_mirrors/ch/chinese_license_plate_generator 中国车牌生成器是一个基于Python的开源项目&#xff0c…

2026/8/11 1:08:05 阅读更多 →
收藏!小白程序员轻松入门大模型,从Harness工程开始实践

收藏!小白程序员轻松入门大模型,从Harness工程开始实践

文章强调学习大模型不应只关注模型本身,而应重视模型外的系统搭建,即Harness。提出AgentModelHarness的实用公式,详细介绍Harness的四个层次:持久化层、执行层、控制层和观察与验证层。文章还探讨了上下文工程、工具设计、AGENTS.…

2026/8/11 1:08:05 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/10 17:07:33 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/11 1:08:06 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/10 17:07:33 阅读更多 →