跳到主要内容
OhMyMC
文章书架工具种子汉化导航
OhMyMC

用最清晰的方式,学会 Minecraft。

Copyright © 2024-2026 suixinio. All rights reserved.|京ICP备2024096958号-1

本网站与 MOJANG 或 MICROSOFT 无任何关联

首页工具/tellraw 编辑器

/tellraw 编辑器

富文本消息编辑:颜色、加粗、悬浮、点击事件。

免费在线

正在加载工具…

JSON 文本组件字段速查表

文本组件的字段

/tellraw、/title、告示牌、成书、物品名称用的是同一套 「文本组件」结构。掌握这张表,这几个功能就都会写了。

字段类型作用
textstring直接显示的文本
translatestring用语言文件里的翻译键,配合 with 填参数
scoreobject显示计分板分数:{name:"@s",objective:"kills"}
selectorstring显示选择器匹配到的实体名,多个用逗号连接
keybindstring显示玩家实际绑定的按键,如 key.jump
nbtstring读取实体/方块/存储的 NBT 显示出来,需配 entity/block/storage
extraarray后续的子组件;子组件继承父级的样式
colorstring16 个命名色之一,或 1.16+ 的 #RRGGBB
bold / italicboolean粗体 / 斜体
underlined / strikethroughboolean下划线 / 删除线
obfuscatedboolean混淆(随机字符)
fontstring字体资源,如 minecraft:uniform(等宽)、minecraft:alt(附魔文)
shadow_colorint1.21.4+ 单独指定阴影色;省略时按文字色亮度的 25%
insertionstringShift + 点击时插入聊天框的文本
clickEventobject点击事件,见下表
hoverEventobject悬停事件,见下表

点击事件与悬停事件

clickEvent action效果注意
open_url打开网址客户端会弹出确认框
run_command以玩家身份执行指令玩家没权限的指令照样执行不了
suggest_command把指令填进聊天框但不发送做半自动指令时常用
copy_to_clipboard复制到剪贴板1.15+
change_page成书翻页只在成书里有效
hoverEvent action效果
show_text显示一段文本(本身也是文本组件)
show_item显示一个物品的完整 tooltip
show_entity显示实体的名称、类型与 UUID

1.21.5 起 hoverEvent 的内部字段名从 value/contents 改成了按 action 命名的具体字段,跨版本抄要留意。

16 个命名颜色

命名色对应 § 代码命名色对应 § 代码
black§0dark_gray§8
dark_blue§1blue§9
dark_green§2green§a
dark_aqua§3aqua§b
dark_red§4red§c
dark_purple§5light_purple§d
gold§6yellow§e
gray§7white§f

文本组件里推荐用命名色或 #RRGGBB,不要在 text 里塞 § 代码 —— 那属于两套体系,混用时样式继承规则会变得难以预测。

可直接复制的例子

# 最简单的一条
tellraw @a {"text":"服务器将在 5 分钟后重启","color":"red","bold":true}

# 多段拼接:extra 里的子组件继承父级样式
tellraw @a {"text":"[公告] ","color":"gold","extra":[{"text":"欢迎新玩家","color":"white","bold":false}]}

# 显示计分板分数
tellraw @a {"text":"你的击杀数:","color":"gray","extra":[{"score":{"name":"@s","objective":"kills"},"color":"yellow"}]}

# 可点击的传送按钮
tellraw @a {"text":"[点我传送到主城]","color":"aqua","underlined":true,"clickEvent":{"action":"run_command","value":"/spawn"},"hoverEvent":{"action":"show_text","contents":"回到出生点"}}

# 1.16+ 的十六进制颜色
tellraw @a {"text":"渐变色标题","color":"#FF5500"}

# 用数组一次发多段(最外层是数组时第一个元素的样式会影响后面)
tellraw @a ["",{"text":"A","color":"red"},{"text":"B","color":"blue"}]

常见问题

用数组时开头写一个空字符串。["",{…},{…}] —— 数组的第一个元素会成为其余元素的父级, 它的样式会被继承下去。放一个空串当占位可以避免第一段的颜色污染后面所有段。
子组件会继承父组件的样式。父级写了 bold:true,子组件不显式写 bold:false 就会跟着变粗。 这是最常见的「为什么后面也粗了」。
斜体默认值不总是 false。物品的 custom_name 默认带斜体(这是重命名的视觉标记), 要去掉必须显式写 italic:false。
1.21.5 起告示牌与成书改用 SNBT。此前告示牌的每一行是一个 JSON 字符串,1.21.5 之后统一成 SNBT 复合标签。 在 1.20.1 / 1.21.1 这类常见服务端版本上,仍然要用 JSON 字符串写法。

相关工具

物品指令生成器选物品、加附魔与自定义名称,生成 /give 指令。召唤指令生成器可视化配置实体 NBT,生成 /summon 指令。标题指令生成器生成 title / subtitle / actionbar 的 /title 指令。目标选择器编辑器拼装 @a、@e 等选择器参数:距离、分数、标签、NBT。命令方块速查命令方块类型、条件、链式的完整速查与示例。颜色代码表全部格式代码与颜色代码速查,可点击复制 §。

常见问题

›tellraw 指令怎么做鼠标悬浮显示文字?

在文本段里加 hover_event。1.21.5 起写 "hover_event":{"type":"show_text","value":"提示内容"};1.21.4 及更早写 "hoverEvent":{"action":"show_text","contents":"提示内容"}。字段名和结构都变了,照旧版教程抄会报错,本页切版本即可。

›tellraw 怎么让文字可以点击执行指令?

用 click_event,type 填 run_command 表示直接执行、suggest_command 表示填进聊天框、open_url 表示打开网页。注意 run_command 会以玩家权限执行,服务器要执行 OP 指令得配合 /execute 或数据包函数,不能直接写在里面。

›为什么我的 tellraw 后半句也跟着变粗/变色了?

extra 里的子文本会继承父节点的颜色和格式,而且只能覆盖不能取消。规范做法是根节点写成 {"text":"","extra":[…]},把每段都放进 extra,这样各段互不影响。本页生成的 JSON 已按这个结构输出。