为了账号安全,请及时绑定邮箱和手机立即绑定

写入文本文件时控制文本对齐

写入文本文件时控制文本对齐

Go
慕妹3146593 2023-03-07 13:25:24
我需要创建文本文件并能够使用 Go 控制文本是左对齐还是右对齐。我找到了标签编写器,但我不想要专栏。文本需要自由流动。有什么建议么?
查看完整描述

1 回答

?
HUWWW

TA贡献1874条经验 获得超12个赞


您可以在 ASCII 文本文件中执行的格式化种类非常有限。没有 ASCII 控制字符表示文本块将以某种方式对齐。您要么依赖文本查看器将自定义语法解释为格式(请参阅 Markdown 格式),要么添加空格以在每一行上显式创建所需的格式。


对于后者,可以在每行前插入空格来模拟对齐。为此,您需要选择每行固定数量的字符(例如 40 个字符)作为格式设置的基础。请注意,此最大线宽不一定与用户使用的任何文本查看应用程序中的屏幕大小相匹配。


左对齐算法基本上是一种自动换行算法。请参阅最佳自动换行算法?为了那个原因。


右对齐算法再次是自动换行,但有一个中间步骤:首先让自动换行函数将文本拆分为自动换行。然后用等于最大行宽内剩余的字符数的空格数填充每行的开头。


因此,假设您的源文本是“此声明没有任何理由!” 并且您的最大行宽为 15 个字符。左对齐算法将输出如下:


There is no

justification

for this

statement! 

...右对齐算法将输出:


    There is no

  justification

       for this

     statement! 

如果要更改最大线宽,则需要再次运行算法以使用新的最大线宽重排文本。


查看完整回答
反对 回复 2023-03-07
  • 1 回答
  • 0 关注
  • 62 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信