【Unity】 HTFramework框架(六十八)StringEditor字符串复杂编辑器

更新日期:2025年11月20日。

Github 仓库:https://github.com/SaiTingHu/HTFramework

Gitee 仓库:https://gitee.com/SaiTingHu/HTFramework

索引

一、StringEditor字符串复杂编辑器

StringEditor字符串复杂编辑器用于在一个单独展开的窗口 中编辑一个字符串对象,支持一些基础的复杂编辑功能,比如Html标签语法,Markdown语法,Json语法等。

二、使用StringEditor

1.StringEditor窗口简介

StringEditor编辑窗口如下:

①.切换富文本显示模式

点击标题栏RichText可以切换为富文本显示模式:

②.快捷添加、编辑Html标签

点击标题栏Html下拉菜单可以快捷添加、编辑Html标签:

Set Bold:将当前选中文本设置为粗体

Set Italic:将当前选中文本设置为斜体

Set Hyperlink:将当前选中文本设置为超链接

Set Color:将当前选中文本设置为改变文字颜色标签

Set Size:将当前选中文本设置为缩放字体大小标签

Clear selected tags:清除当前选中文本中所有的Html富文本标签;

Clear all tags:清除整个文本中所有的Html富文本标签;

③.快捷添加、编辑Markdown标签

点击标题栏Markdown下拉菜单可以快捷添加、编辑Markdown标签:

Set Bold:将当前选中文本设置为粗体

Set Italic:将当前选中文本设置为斜体

Set Hyperlink:将当前选中文本设置为超链接

Set Strikethrough:将当前选中文本设置为删除线

Set Code Block:将当前选中文本设置为代码块

Set Code Fragment:将当前选中文本设置为代码片段

Set Embedded Image:将当前选中文本设置为嵌入图像

Add Table:添加一个表格 语法块;

Add Object:添加一个引用对象 语法块;

Add Menu:添加一个执行菜单 语法块;

Add Custom Action:添加一个自定义操作语法块;

④.编辑Json格式文本

点击标题栏Json下拉菜单可以编辑Json格式文本:

Format:将整个文本按Json字符串进行格式化。

⑤.保存编辑结果

点击下方Save按钮可保存编辑结果,可自定义保存方式,或保存到剪贴板。

2.自定义编辑任意字符串对象

可将任意字符串对象指定为使用StringEditor打开进行编辑(仅在编辑器环境下),使用如下代码即可:

csharp 复制代码
             if (GUILayout.Button("复杂编辑"))
             {
             	//第一个参数为复杂编辑窗口的宿主窗口,如果没有,可传入 SceneView 窗口等
             	//第二个参数为编辑的目标字符串,这里传入StringValue字段
             	//第三个参数为复杂编辑窗口的标题
             	//第四个参数为点击Save按钮的自定义保存回调,如果为空,将保存至剪贴板
                 StringValueEditor.OpenWindow(this, StringValue, "编辑字符串时的标题", (str) =>
                 {
                 	//将编辑的内容保存回StringValue字段
                     StringValue = str;
                 });
             }

点击复杂编辑按钮后,打开StringEditor窗口:

3.编辑剪贴板内容

也可以编辑剪贴板内容,在如下例子情况,控制台打印了一串Json文本,但看起来并不直观:

①.复制内容到剪贴板

我们选中这串Json文本,按下Ctrl + C复制文本:

②.打开复杂编辑器

然后再按下Alt + S打开StringEditor进行编辑(编辑器会自动获取剪贴板内容):

然后再点击Json → Format格式化字符串(格式化后显著提升可读性):

③.保存编辑内容到剪贴板

最后,点击Save to Clipboard按钮可将编辑后的内容保存回剪贴板,以便于在其他地方粘贴。

目前,框架中一些地方已支持使用StringEditor打开并编辑某些字符串字段。

相关推荐
Var_al1 小时前
抖小Unity WebGL分包命令行工具实践指南
unity·游戏引擎·webgl
天人合一peng3 小时前
unity 通过代码修改button及其名字字体的属性
unity·游戏引擎
徐小夕@趣谈前端5 小时前
拒绝重复造轮子?我们偏偏花365天,用Vue3写了款AI协同的Word编辑器
人工智能·编辑器·word
风一样的航哥5 小时前
标题:从卡顿到流畅:深度剖析 Word 2013 与 Word 2021 处理高清图片文档的性能鸿沟
编辑器
GLDbalala7 小时前
Unity基于自定义管线实现经典经验光照模型
unity·游戏引擎
冬奇Lab9 小时前
一天一个开源项目(第14篇):CC Workflow Studio - 可视化AI工作流编辑器,让AI自动化更简单
人工智能·开源·编辑器
心疼你的一切9 小时前
Unity异步编程神器:Unitask库深度解析(功能+实战案例+API全指南)
深度学习·unity·c#·游戏引擎·unitask
承渊政道11 小时前
Linux系统学习【Linux基础开发工具】
linux·运维·笔记·学习·centos·编辑器
呆呆敲代码的小Y11 小时前
【Unity 实用工具篇】 | Book Page Curl 快速实现翻书效果
游戏·unity·游戏引擎·u3d·免费游戏·翻书插件
AC梦1 天前
unity中如何将UI上的字高清显示
ui·unity