Null.ConsDraw 控制台格式化绘图拓展
bat吧
全部回复
仅看楼主
level 3
SlimeNull 楼主
使用Null.ConsDraw, 你可以简单的在控制台的任意区域进行绘制文本, 你甚至可以使一段文本自动对齐到控制台的右侧或者其他地方, 或者指定一个区域并填充指定的内容.
甚至使用Null.ConsDraw, 你可以做到一些奇葩的操作. 例如设置光标位置, 覆盖控制台显示区域等(使用它, 将比使用'cls'指令更加快速)
下面是一个使用Null.ConsDraw来简单绘制矩形区域的demo
@璐村惂鐢ㄦ埛_000076K馃惥 off
Null.ConsDraw -X 1 -Y 1 -ColSpan -1 -HRepeat Full -Content "-"
Null.ConsDraw -X 1 -Y -2 -ColSpan -1 -HRepeat Full -Content "-"
Null.ConsDraw -X 1 -Y 2 -RowSpan -2 -VRepeat Full -Content "|"
Null.ConsDraw -X -2 -Y 2 -RowSpan -2 -VRepeat Full -Content "|"
Null.ConsDraw -X 3 -Y 3 -Content ""
pause
运行结果是:
稍后将更新下载地址
2020年11月24日 09点11分 1
level 3
SlimeNull 楼主
关于Null.ConsDraw的帮助手册:
Null.ConsDraw : 控制台字符绘图工具
Null.ConsDraw [参数列表] 绘制内容
Null.ConsDraw [-X X坐标] [-Y Y坐标] [-ColSpan 列数] [-RowSpan 行数]
[-HAlign Left/Center/Right] [-VAlign Top/Center/Bottom]
[-HRepeat No/Full/Over] [-VRepeat No/Full/Over] [/Restore]
[-Content] 绘制内容
| X: 指定绘制区域的X坐标 默认是当前X坐标
| Y: 指定绘制区域的Y坐标 默认是当前Y坐标
| ColSpan: 指定绘制区域的水平长度 默认为0
| RowSpan: 指定绘制区域的竖直长度 默认为0
| HAlign: 指定绘制内容在绘制区域中的水平对齐方式
| VAlign: 指定绘制内容在绘制区域中的竖直对齐方式
| HRepeat: 指定绘制内容在绘制区域中的水平重复方式
| VRepeat: 指定绘制内容在绘制区域中的竖直重复方式
| Restore: 指定在绘制后, 是否将光标移动到初始位置
Null.ConsDraw 的绘图方式是, 根据参数指定的绘图区域, 将内容绘制到区域
中. 你可以指定重复方式以简单快捷的绘制出一定长度的水平线或者其他
内容, 指定对齐方式, 可以使内容按照一定方式在绘制区域中停靠.
另外, ColSpan和RowSpan支持指定非正数值, 当指定非正数值时, 该值表示绘
制区域与对应方向边缘的距离. 例如指定ColSpan为-1时, 表示绘制区域
的大小拓展到右侧与边缘的距离为1的大小; 当X和Y指定负值时, 该值以
-1为对应轴的末尾, 例如, 指定X为-1时, 即X坐标为控制台最右端. 同样
的, -2则表示控制台从右侧起, 第二个位置.
当指定内容, 并且内容以'-'起始时, 使用Content强制指定该部分是绘图内容
下面是一些关于使用 Null.ConsDraw 的示例:
1. 在当前位置输出 "示例文本" :
Null.ConsDraw "示例文本"
2. 在当前位置输出两行对齐了的的 "示例文本":
Null.ConsDraw -RowSpan 2 -VRepeat Full "示例文本"
3. 在第三行的末尾放置"示例文本":
Null.ConsDraw -X 0 -Y 2 -ColSpan 0 -HAlign Right "示例文本"
4. 在第二行填充字符'-', 要求两侧距窗口的长度为2:
Null.ConsDraw -X 2 -Y 1 -ColSpan -2 -HRepeat Full -Content "-"
您甚至可以使用Null.ConsDraw来实现一些特殊的操作, 下面是一些例子:
1. 将控制台光标的位置设为 3,5:
Null.ConsDraw -X 3 -Y 5 -Content ""
2. 将控制台光标水平向下移动1个单位长度:
Null.ConsDraw -RowSpan 2 -VRepeat Full -Content ""
关于作者(Null):
电子邮箱: [email protected]
2020年11月24日 09点11分 2
level 3
SlimeNull 楼主
2020年11月24日 09点11分 7
level 3
看起来NB没人看没人用系列[滑稽]
2020年11月26日 13点11分 8
level 11
总所周知,2楼之后是7楼
2020年11月29日 03点11分 9
level 12
这有什么意义
2022年04月28日 08点04分 10
1