Cadence Allegro器件组创建与打散:PCB布局批量操作实战指南
相信很多刚接触 Cadence Allegro 的工程师都有过这种经历一块 PCB 上有 DDR、电源、连接器、主控等多个功能模块每个模块由十几个甚至几十个器件组成。想把这几十个器件整体挪到另一个区域只能一个一个去点选点着点着就漏了一个电阻或电容等移动完才发现角落里的那颗器件还孤零零地留在原位置。重新框选、重新移动反复折腾几次时间就白费了。Allegro 的器件组功能就是解决这类批量操作问题的最佳方案。本篇文章来自“小哥Cadence Allegro X 24.1中文界面PCB设计视频教程”中关于创建与打散器件组的实战讲解我会把完整操作流程、命令位置、组合与打散机制、常见坑点一次性梳理清楚。无论你用的是 Allegro X 24.1还是常见的 17.4 / 16.6只要原理一致操作思路完全通用。1. 为什么需要器件组1.1 什么是器件组器件组Component Group也可以叫 Symbol Group本质上是把多个器件符号临时捆绑成一个整体对象。在 Allegro 中器件是最小操作单位每次用 Move、Copy、Rotate 命令时默认只能操作一个器件。当你需要对“某个功能模块的整组器件”做批量位置调整时如果逐个移动不仅工作量大还容易因为选中遗漏导致内部相对位置被破坏。创建器件组之后这组器件就变成了一个可以被整体选择、整体移动、整体旋转、整体对齐的操作对象。组内器件的相对位置被锁定移动过程中不会散架。这个功能在以下场景中非常有用预布局阶段把 DDR、电源、接口等模块整体摆放到 PCB 的不同区域。结构约束阶段螺钉孔附近的器件组需要整体避让结构件。位号调整阶段同一模块的位号需要统一方向。模块复用阶段一套电路布局被复制到另一块设计中使用。1.2 器件组与 Room、Module 的区别初学者容易把器件组和 Room、Module 搞混因为三者都涉及“多个器件一起管理”。这里做一个对比对比项器件组GroupRoomModule模块复用创建入口PCB Editor 内创建原理图或 PCB 中创建原理图或 PCB 中定义是否跟随原理图同步否是是典型用途布局阶段临时批量操作区域约束和布局分区相同电路模块的复用与派生是否影响网表不影响影响约束区域影响模块实例生命周期可随时创建、打散一直保留在设计中长期保留并可更新简单理解Room 是给器件划分“地盘”Module 是让多块相同电路共享一套布局而器件组只是你在布局阶段随手创建的“临时组合”灵活性最高改动成本也最低。1.3 器件组的本质在 Allegro 底层数据中器件组并不会改变网络的连接关系也不会改变位号的归属。它只是一个引用集合用来告诉系统“这几个 Symbol 属于同一个组”。因此创建组和打散组是纯布局操作对原理图、网表、DRC 规则都没有破坏性。这也是为什么很多工程师说器件组是 Allegro 里“性价比”最高的布局辅助工具因为它几乎没有任何副作用。2. 环境准备与版本说明2.1 Allegro X 24.1 中文界面环境设置本文基于 Cadence Allegro X 24.1 中文界面讲解。Allegro X 是 Cadence 新一代设计平台相比传统版本启动界面、菜单组织、面板交互都有明显变化但底层 PCB 设计逻辑与经典 Allegro 一脉相承。如果你打开的是英文界面可以通过以下方式切换中文在 Allegro X 主窗口右上角或“偏好设置Preferences”中找到界面语言选项。将界面语言切换为“中文Chinese”。重启 Allegro X 生效。不同小版本的具体设置入口可能略有差异。如果在偏好设置里找不到可以打开“帮助Help”搜索“language”关键字定位到对应的设置项。2.2 本文操作的前提条件在开始创建器件组之前需要先完成以下准备工作已经完成原理图设计并且成功导出网表。原理图网表已经成功导入 Allegro PCB Editor。板框已经绘制完成并且确定了原点位置。PCB 上的器件已经完成初始放置器件的位号、封装显示正常。如果你还没有导入网表需要先在原理图工具中执行“生成网表”再到 PCB Editor 中执行“导入逻辑/网络”本文不展开后续视频教程会有专门章节。2.3 版本兼容性说明“创建组”和“打散组”在 Allegro 16.6、17.4、Allegro X 24.1 中都属于基础功能操作逻辑一致只是菜单位置和中文翻译略有区别。例如在 Allegro 16.6 中可能叫“Symbol Group”在 Allegro X 24.1 中文界面中可能叫“器件组”或“组件组”。如果你看完本文后在你的版本里找不到完全一致的菜单不要着急按英文菜单名定位即可。3. 创建器件组完整实操3.1 规划分组方案创建器件组之前先想清楚这组器件的划分边界。推荐按以下维度划分功能模块主控 晶振 去耦电容 复位电路。电源域3.3V 相关的所有滤波电容和磁珠。接口模块USB 座子 ESD 防护 共模电感 终端电阻。结构装配模块螺钉孔附近的定位柱、缓冲器件。一个组内部的器件数量建议控制在 50 个以内超过了容易误操作也不利于后期打散和管理。3.2 第一步框选需要编组的器件在 Allegro X 24.1 中打开你的 PCB 文件执行以下操作在右侧“Find”面板中把过滤对象设置为“符号Symbols”。确认“组Groups”选项也处于可勾选状态。在绘图区按住鼠标左键拖出选择框框选目标器件。这里有一个非常容易踩的坑Allegro 的框选方向不同选中逻辑也不同。顺时针方向拖拽是“窗口选择”只有完整包含在框内的器件会被选中。逆时针方向拖拽是“交叉选择”只要与框边界相交的器件都会被选中。如果你希望“碰到的也选上”就逆时针拖拽如果希望严格选中矩形区域内的器件就顺时针拖拽。框选完成后可以通过“显示Display”菜单下的“高亮Highlight”先看一眼选中的器件。确认没有多选、漏选之后再进行下一步。3.3 第二步执行创建组命令在 Allegro X 24.1 中文界面中创建组的菜单路径一般位于“编辑Edit - 组Group - 创建组件组Create Component Group”如果找不到可以在菜单栏顶部的搜索框里直接输入“Group”快速定位创建组的命令。也有一部分版本支持右键快捷菜单框选器件后在器件上点击右键。在弹出的快捷菜单中寻找“创建组Create Group”选项。点击创建组命令后系统会弹出对话框输入组名。设置组的显示颜色。选择组类型默认是器件组。点击“确定OK”。命名建议使用“功能前缀_序号”的格式例如DDR_MODULE_01 PWR_DEC_02 USB_PORT_03使用规范名称而不是默认的 Group1、Group2在后续打散和管理时能省很多力气。3.4 第三步验证组是否创建成功创建完成后需要验证组是否真正生效。验证方法在“Find”面板中把对象类型切换为“组Groups”。在绘图区点击你刚才创建的组。观察整个组内所有器件是否被一起高亮。如果所有器件同时高亮说明创建成功。此时你可以执行移动命令点击任意组内器件整个组会跟随鼠标移动。需要注意的是如果“Find”面板中没有勾选“Groups”点击组内器件时系统只会选中单个器件而不是整组。很多新手在这里产生困惑以为是组没有创建成功其实是过滤选项没有打开。4. 器件组的进阶应用4.1 整体移动器件组创建好器件组之后最常用的操作就是整体移动。操作步骤在命令窗口输入move并回车。在“Find”面板中勾选“Groups”。在绘图区点击组内任意器件。整个器件组会进入待移动状态。把组移动到目标位置左键单击确定。右键选择“完成Done”结束移动命令。示例命令代码如下Command move 选择元素点击组内任意器件 移动完成左键确定位置移动过程中组内所有器件的相对位置保持不变。这一点对 DDR 等时序敏感模块来说非常关键因为模块内部的信号相对位置一旦乱掉后期布线工作量会成倍增加。4.2 整体旋转与镜像在一些 PCB 设计中同一个功能模块可能需要放置在不同角度例如 USB 接口在板边两侧时器件的方向需要镜像或旋转 90 度。整体旋转的操作方式在命令窗口输入rotate。选择器件组。输入旋转角度例如 90、180、270。确认旋转后的器件组位置。Allegro 的旋转中心默认是器件组的原点你也可以在命令执行时手动指定旋转中心点。如果模块内有定位孔或安装孔建议旋转前先记录孔坐标旋转后复核坐标是否仍在板框结构件允许范围内。4.3 复制器件组在模块复用场景中经常需要把一组器件复制到另一个通道。例如四路独立的模拟采集电路每一路的电路完全一样。就可以先把第一路的器件创建成组然后复制整个组。操作方式在命令窗口输入copy。点击器件组。指定复制的目标位置。系统会复制整组器件。复制出来的新器件组位号可能带有后缀需要回到原理图更新网表或者手动重定位号。复制操作不会自动更新逻辑连线这一点务必注意。4.4 组与约束区域配合器件组创建之后如果再把一个 Room 约束区域与这个组关联就可以实现“模块区域固定”的效果。具体思路在布局前把一组器件创建成组。在 PCB 中创建一个 Room。把该组器件的 Room 属性设置为同一个 Room 名。执行“Placement - Room - 放置”命令Allegro 会自动把所有属于该 Room 的器件摆放到对应区域内。这是从“临时组合”升级到“区域约束”的常用做法尤其适合大规模 FPGA、DDR、电源模块的布局。5. 打散器件组完整实操5.1 打散的含义“打散器件组”就是把之前创建的组解散让组内器件重新变回独立对象。打散组不会删除器件不会改变位号不会改变器件坐标也不会影响已经完成的走线。它只是删除“组”这个逻辑集合。很多工程师在布局阶段创建了一堆组到了布线阶段想单独调整某一颗滤波电容的位置却发现一移动就会带动整组。这时候不需要重新建板直接把组打散即可。5.2 解散单个器件组在 Allegro X 24.1 中文界面中解散单个器件组的操作如下在“Find”面板中勾选“组Groups”。点击需要解散的器件组。执行菜单命令编辑Edit - 组Group - 解散组Ungroup / Delete Group在确认对话框中点击“确定”。命令执行后原组的高亮颜色标识消失组内器件恢复为独立对象。再次点击器件时只会选中单个器件。如果你希望保留组但临时只移动某个器件也可以不急着打散而是使用 Allegro 的“临时选择忽略组”功能。不过最彻底、最不容易误操作的方式还是先打散再对单个器件进行调整。5.3 批量解散全部器件组当设计中创建了多个器件组并且已经不需要继续保护组内相对位置时可以批量解散。批量解散的方式如下方法一逐个选中删除。这种方式适合组数量较少的情况缺点是效率低。方法二使用按下“显示全部组”功能然后逐个高亮处理。方法三使用 Skill 脚本批量处理。下面是一个 Skill 脚本的核心思路示例注意不同版本的 AllegroAPI 名称可能不同运行时请以你的版本帮助文档为准; 示例思路遍历当前设计中的组对象并解散 ; 不同版本 API 存在差异请按实际环境调整 axlClearSelSet() axlSetFindFilter(?enabled (NOALL GROUPS) ?onButtons (NOALL GROUPS)) axlAddSelectAll() foreach(grp axlGetSelSet() when(grp-type GROUP axlDeleteObject(grp) ) ) axlSaveDesign()脚本执行前建议先备份一份.brd文件防止误操作后无法恢复。5.4 与“分散放置Disperse”的区别很多初学者会把“打散器件组”理解成“把器件散开”在 Allegro 里还有一个独立的命令叫“Disperse Placement”中文可以翻译为“分散放置”。两者的区别在于操作对组的影响对器件位置的影响解散器件组删除组集合不改变器件位置分散放置不删除组集合把器件分散到板框边缘所以如果你把一组器件执行了“打散组”会发现器件还在原位只是组没了。如果你执行了“分散放置”器件会飞到板框外面需要重新布局。这两个命令不要搞混否则可能导致辛苦布局的位置全部丢失。6. 常见问题与排查思路在实际操作中创建与打散器件组经常会遇到一些问题。我把高频问题整理成下表方便你快速定位并解决。问题现象常见原因解决思路选中多个器件后创建组命令是灰色不可点当前正处于其他命令执行状态或选中的对象不全是器件符号先右键“完成Done”退出当前命令再重新框选器件移动组时只有单个器件跟随鼠标Find 面板中没有勾选“组Groups”在 Find 面板中勾选 Groups再重新执行移动命令无法在 Find 面板里找到 Groups 选项过滤方式选择了“全部不选NOALL”将 Find 面板对象类型切换为“全部ALL”或手动勾选 Groups打散后器件全部都还在原位打散只解散组集合不改变坐标这是正常现象不需要处理执行分散放置后器件全部消失把打散组与分散放置混淆了重新执行“放置Placement- 分散Disperse”或直接返回上一步撤销器件组保存后重新打开不见了创建组后没有保存更新的 PCB 文件检查创建组后是否执行了“保存Save”操作组内器件移动后相对位置发生偏移创建组后对组内单个器件执行过独立移动进入组编辑模式重新对齐或删除组后重新创建4K 屏幕上中文菜单显示被截断高 DPI 缩放设置不合理右键 Allegro 启动图标进入“属性 - 兼容性 - 更改高 DPI 设置”勾选“替代高 DPI 缩放行为”Allegro X 24.1 里找不到“编辑- 组”菜单汉化翻译不同菜单位置有小版本差异在顶部搜索框输入“Group”或切回英文界面定位除了表格中的问题这里再补充两个比较隐蔽的坑。第一个坑创建组时不小心选了“Room”属性导致组和 Room 绑定。当你删除 Room 的时候组也一起被解散了。创建组时要注意看对话框里的“组类型”字段默认应该选择“器件组Component Group”。第二个坑复制组之后复制出来的组和原组共享同一个组名。后续如果你只想打散其中一组系统可能会提示“已存在同名 Group”。遇到这种情况最好在复制之前修改组名或者在复制完成后立即重命名新组。7. 最佳实践与工程建议7.1 创建组的最佳时机我在实际项目中总结下来的经验是器件组最好在“预布局阶段”创建。具体时机是完成网表导入之后。正式布线之前。功能模块的初步位置确定之后。在这个阶段创建组可以用来做大区域的模块摆放效率非常高。一旦开始正式布线器件之间的关系已经固定继续保留组反而会干扰布线调整这时候就可以考虑打散。7.2 命名规范不能省“Group1”“Group2”这种命名方式在只有七八个组的兼职项目里还能忍在几十个组的复杂项目里完全是一场灾难。推荐命名规范[功能模块]_[电源域/信号类型]_[序号]例如DDR_3V3_DEC_01 USB_ESD_02 PWR_5V_FILTER_01 CPU_BYPASS_03命名越规范查找组、修改组、打散组的速度越快尤其是配合 Find 面板搜索时优势非常明显。7.3 打散组之后做什么打散组之后不要马上开始随意移动器件。建议按以下顺序检查查看整板器件分布确认打散组没有影响其他模块的位置。重新执行一次“数据库检查Database Check”确认没有产生异常数据。如果对这次打散操作有后悔的可能性先保存一个带组结构的备份文件。在布线的关键阶段建议关掉组的显示颜色减少视觉干扰。7.4 结合快捷键提高效率Allegro 完全支持通过命令窗口输入命令下面是几个和组操作相关的常用命令Command move Command copy Command rotate Command mirror Command ungroup如果你用的是经典版本也可以直接放入自定义的快捷键文件env 文件中。例如alias GM move alias GR rotate alias GU ungroup这样在命令窗口输入 GM就能直接启动移动命令。不过要注意alias 设置不同版本存在差异建议先阅读你的 Allegro 版本说明文档。7.5 安全与备份意识虽然创建和打散器件组属于轻量级操作但任何一次批量操作都有误选、误删的风险。这里提醒三个底线原则重大操作前先另存一份.brd副本。涉及生产环境或多人协作时不要直接修改出图主文件先在一份测试副本中验证。删除组之前务必确认组名是否与其他设计资源绑定。做到以上三点绝大多数由于误操作导致的问题都可以快速挽回。8. 总结与后续学习方向创建器件组与打散器件组是 Allegro 布局阶段使用频率很高的基础操作。掌握这个功能最大的收获不是省下几次鼠标点击而是让你在预布局阶段敢于对模块位置做大胆尝试觉得布局不满意就把整组器件移到一边重新摆觉得模块间距太大就整体推进几个毫米。有了组这个临时“容器”批量操作不再是一件提心吊胆的事。本文提到的功能在 Allegro X 24.1 中文界面中操作最直观但所有思路在 17.4、16.6 中同样适用。你只需要找到对应版本的菜单入口剩下的逻辑完全一致。下一步可以继续学习如何利用 Room 实现分区布局把器件组与约束区域绑定。如何通过模块复用Module让多通道相同电路共享一套布局。如何制作可复用的布局模板导入到新项目中。如果这篇文章对你有帮助建议先收藏备用。等下次实际布局时按照第三步和第五步的操作流程走一遍你会发现器件组这个功能比想象中简单也比想象中好用。

相关新闻

AI眼镜线路板厂家排名怎么选?从PCB技术到供应商验证全拆解

AI眼镜线路板厂家排名怎么选?从PCB技术到供应商验证全拆解

搜“AI眼镜线路板生产厂家排名”这个关键词,会刷出来一大堆榜单。但先泼一盆冷水:这些榜单十篇里八篇是招商平台、元器件贸易商和SEO站拿来引流的内容,排名口径五花八门——有的按上市公司全年营收排,有的直接抄了一遍全球PCB百强…

2026/10/9 6:29:07 阅读更多 →
Agent-Reach实战:从工具调用到安全护栏的Agent开发指南

Agent-Reach实战:从工具调用到安全护栏的Agent开发指南

做了一年多 AI Agent 开发,我越来越认同一个判断:Agent 的真正差异不在模型多强,而在它“够得着”多少东西。模型再聪明,如果连浏览器都没法打开、文件没法读写、外部服务没法调用,那它充其量是个高级聊天框。我最近在…

2026/10/9 14:12:17 阅读更多 →
AXI valid-ready握手机制中的ready打拍方案与时序收敛实践

AXI valid-ready握手机制中的ready打拍方案与时序收敛实践

干过总线协议验证或者写过IP核的朋友,应该都跟AXI的valid-ready握手机制打过交道。这套机制看起来就两个信号的事——valid拉高表示数据有效,ready拉高表示接收方就绪,两边同时为高就算握手成功——但实际工程里一旦开始关心时序收敛、吞吐率…

2026/10/9 14:11:06 阅读更多 →

最新新闻

多个传感器如何协同作战?World2Agent多传感器组合与fanout传输完整指南

多个传感器如何协同作战?World2Agent多传感器组合与fanout传输完整指南

【免费下载链接】world2agent World2Agent(W2A) is an open protocol that standardizes how Al agents perceive the real world. 项目地址: https://gitcode.com/gh_mirrors/wo/world2agent 点击查看 免费下载 World2Agent(W2A)是一个开放…

2026/10/15 19:45:41 阅读更多 →
PASCAL-5i 小样本语义分割数据集复现要点与踩坑指南

PASCAL-5i 小样本语义分割数据集复现要点与踩坑指南

简介:Pascal-5i数据集是面向小样本学习研究的标准化数据集,源自PASCAL VOC,将20个类别划分为基础类与新类,支持5-way 1-shot和5-way 5-shot任务,适合需要验证原型网络、元学习或知识迁移方法的科研人员与算法工程师使用…

2026/10/15 19:45:41 阅读更多 →
c9-python-getting-started 系列:用 asyncio 与 async/await 编写 Python 异步操作

c9-python-getting-started 系列:用 asyncio 与 async/await 编写 Python 异步操作

示例工程教程 【免费下载链接】c9-python-getting-started Sample code for Channel 9 Python for Beginners course 项目地址: https://gitcode.com/gh_mirrors/c9/c9-python-getting-started 点击查看 免费下载 本指南围绕 more-python-for-beginners 课程中「As…

2026/10/15 19:45:41 阅读更多 →
高光谱数据加载实战:从HDF5到PyTorch DataLoader的完整路径

高光谱数据加载实战:从HDF5到PyTorch DataLoader的完整路径

简介:面向使用PyTorch框架处理高光谱图像的研究者,这份资源精准解决高光谱数据在深度学习训练中批量读取与预处理的效率问题。高光谱图像通常包含数百个光谱通道,数据量庞大,因此加载策略直接影响模型训练速度与稳定性。压缩包共七…

2026/10/15 19:45:41 阅读更多 →
昇腾910B/910C 多模态模型私有化部署实战:11 个模型 + Nginx 统一 API 网关

昇腾910B/910C 多模态模型私有化部署实战:11 个模型 + Nginx 统一 API 网关

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 19:45:41 阅读更多 →
协处理器系统集成实战:架构设计、接口实现与性能调优

协处理器系统集成实战:架构设计、接口实现与性能调优

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 19:44:39 阅读更多 →

日新闻

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

1. 为什么选择容器化方式部署 LoRa 网络服务LoRa 物联网项目落地时,网络服务器是整个链路的核心枢纽。它负责接收网关上报的数据包、完成去重与解密、再把有效载荷分发给上层应用。早期大家习惯把网络服务器直接装在物理机上,依赖一堆系统库和特定版本的…

2026/10/15 0:00:46 阅读更多 →
共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

1. 共享推理服务里,扩缩容到底难在哪做过大模型推理服务部署的人,大概都经历过这样的场景:一个团队共用一套推理集群,A 业务跑的是 7B 的小模型,B 业务跑的是 72B 的大模型,C 业务白天流量高、晚上几乎归零…

2026/10/15 0:00:46 阅读更多 →
Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

1. 引子:一次内核恐慌引发的追查先从一个真实场景说起。某次我给一台老旧的嵌入式设备折腾系统裁减,为了把启动时间压进两秒以内,我手贱地把一串自认为“没用”的 systemd 服务给 disable 了,其中就包括systemd-remount-fs.servic…

2026/10/15 0:00:46 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/15 16:18:54 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/15 19:41:51 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/15 13:48:15 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 0:14:36 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 22:45:47 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 9:49:14 阅读更多 →