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放在中心和许多这样的字段提前感谢。

编辑我想打印。

c#中	使用了多少个空格?

如果你在模拟制表符在终端上的样子,你应该坚持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

TabTab,它的含义由呈现它的应用程序创建。

想象一个文字处理器,其中Tab表示:

转到下一个制表位

可以定义制表符!

中心输出不使用Tabs,使用正确的StringFormat:

StringFormat fmt = new StringFormat() 
 { Alignment = StringAlignment.Center, LineAlignment = StringAlignment.Center };

这将使文本在两个方向的矩形内居中:

e.Graphics.DrawString(someText, someFont, someBrush, layoutRectangle, fmt);

或类似的…

但是看起来好像你想在文本中嵌入居中。

只有当你真正了解输出过程的一切,即设备,字体和大小以及页边距等,这才会有效。

所以无论你做什么,它都可能根本不可靠。

最好的选择可能是要么放弃纯文本,要么使用固定数量的空格来"表示"居中",然后在渲染时观察这个数字。

如果你不能控制渲染,它将无法工作