ActiveReports 13 垂直文本间距
ActiveReports 13 Vertical Text spacing
我正在尝试在 ActiveReports 13 中垂直对齐文本。我正在用代码创建此报告。我要匹配的例子是这样的:
然而,经过我的努力,我的结果是这样的:
尽管数据源中的文本是正确的,但间距似乎在奇怪的地方中断了。我使用的代码是:
for (int i = 0; i < dataTable.Columns.Count; i++)
{
ctl = new GrapeCity.ActiveReports.SectionReportModel.TextBox();
ctl.Name = columnName;
ctl.Text = dt.Columns[i].ColumnName;
ctl.Location = new PointF((0.3f * i) + 1.7f, 0.4f);
ctl.Size = new SizeF(0.3f, 1.0f);
ctl.VerticalText = true;
ctl.VerticalAlignment = GrapeCity.ActiveReports.Drawing.VerticalTextAlignment.Middle;
}
增加宽度没有帮助。如果我缩小 Size 值并调整 CharacterSpacings,文本间距问题会有所改善,但背景会变窄并且文本对齐方式会发生变化 - 字符会旋转 90 度:
有什么建议吗?
我发现解决这个问题的方法是将文本框转换为标签,然后将角度 属性 更改为 2700。将对齐方式设置为“右”也可以按照我想要的方式对齐文本:
ctl = new GrapeCity.ActiveReports.SectionReportModel.Label();
ctl.Angle = 2700;
ctl.Alignment = GrapeCity.ActiveReports.Drawing.TextAlignment.Right;
我正在尝试在 ActiveReports 13 中垂直对齐文本。我正在用代码创建此报告。我要匹配的例子是这样的:
然而,经过我的努力,我的结果是这样的:
尽管数据源中的文本是正确的,但间距似乎在奇怪的地方中断了。我使用的代码是:
for (int i = 0; i < dataTable.Columns.Count; i++)
{
ctl = new GrapeCity.ActiveReports.SectionReportModel.TextBox();
ctl.Name = columnName;
ctl.Text = dt.Columns[i].ColumnName;
ctl.Location = new PointF((0.3f * i) + 1.7f, 0.4f);
ctl.Size = new SizeF(0.3f, 1.0f);
ctl.VerticalText = true;
ctl.VerticalAlignment = GrapeCity.ActiveReports.Drawing.VerticalTextAlignment.Middle;
}
增加宽度没有帮助。如果我缩小 Size 值并调整 CharacterSpacings,文本间距问题会有所改善,但背景会变窄并且文本对齐方式会发生变化 - 字符会旋转 90 度:
有什么建议吗?
我发现解决这个问题的方法是将文本框转换为标签,然后将角度 属性 更改为 2700。将对齐方式设置为“右”也可以按照我想要的方式对齐文本:
ctl = new GrapeCity.ActiveReports.SectionReportModel.Label();
ctl.Angle = 2700;
ctl.Alignment = GrapeCity.ActiveReports.Drawing.TextAlignment.Right;