c#中 使用了多少个空格?
本文关键字:空格 多少 | 更新日期: 2023-09-27 18:15:20
我正在使用StringBuilder构建一个报告,并且它的细节要适当地预期和对齐我将使用
private static int paperWidth = 55; //it defines the size of paper
private static readonly string singleLine = string.Empty.PadLeft(paperWidth, '-');
StringBuilder reportLayout;
reportLayout.AppendLine("'t" + "Store Name");
我想通过使用't
将Store Name放在中心和许多这样的字段提前感谢。
编辑我想打印。
如果你在模拟制表符在终端上的样子,你应该坚持
8 spaces per tab
。制表符移动到下一个选项卡停止。默认情况下,每8个空格有一个。但在大多数贝壳中你可以很容易地把它编辑成你想要的空格数
您可以通过以下代码实现:
string tab = "'t";
string space = new string(' ', 8);
StringBuilder str = new StringBuilder();
str.AppendLine(tab + "A");
str.AppendLine(space + "B");
string outPut = str.ToString(); // will give two lines of equal length
int lengthOfOP = outPut.Length; //will give you 15
从上面的例子中我们可以说.Net
中的't
的长度为计算为1
Tab
是Tab
,它的含义由呈现它的应用程序创建。
想象一个文字处理器,其中Tab
表示:
转到下一个制表位
您可以定义制表符!
中心输出不使用Tabs
,使用正确的StringFormat
:
StringFormat fmt = new StringFormat()
{ Alignment = StringAlignment.Center, LineAlignment = StringAlignment.Center };
这将使文本在两个方向的矩形内居中:
e.Graphics.DrawString(someText, someFont, someBrush, layoutRectangle, fmt);
或类似的…
但是看起来好像你想在文本中嵌入居中。
只有当你真正了解输出过程的一切,即设备,字体和大小以及页边距等,这才会有效。
所以无论你做什么,它都可能根本不可靠。
最好的选择可能是要么放弃纯文本,要么使用固定数量的空格来"表示"居中",然后在渲染时观察这个数字。
如果你不能控制渲染,它将无法工作