Crystal Reports中的垂直文本对齐方式?

时间:2009-09-21 18:47:36

标签: crystal-reports

在Visual Studio(2008)附带的Crystal Reports编辑器中,是否可以将文本与文本框的中心对齐而不是顶部?

我无法在任何地方找到该选项,Google搜索并不令人鼓舞,但我不能让自己相信他们不会包含这样一个明显的功能。

5 个答案:

答案 0 :(得分:22)

我找不到水晶报告的垂直对齐方式。一种潜在的解决方法是编程换行符。

答案 1 :(得分:2)

答案 2 :(得分:1)

您可以使用字符串来实现此目的,因为在进入 FORMAT FIELD 菜单时,您会看到一个 paragraph 标签,而不是 number 标签。 。要使您的数字成为字符串,应将其格式化为公式字段:

chr(13) + chr(10) + totext(mynumber,0)

然后在 FORMAT FIELD 菜单中选择-行距: 倍数 ,其中: 0.2

您可能需要使用0.2值进行实验,直到找到正好位于框中间的数字(即带有回车符的字符串)。

干杯, 寒冷

答案 3 :(得分:0)

与编程换行符垂直对齐。一个单元格的算法:

  1. 计算数据中的字符数(iTextLen)。
  2. 查找单元格(iLineNum)中的文本行数。凭经验计算。
  3. 以字符(iLineLen)查找行长度。凭经验计算。
  4. 按公式(iLineNum — 1) — (iTextLen / iLineLen)计算半衰期的数量。

    晶体语法中的

    @formula

    Local NumberVar iLineNum:= 5;
    Local NumberVar iLineLen:= 30;
    Local NumberVar iTextLen:= Length({DataSource});
    
    Local StringVar sRet:= '';
    Local NumberVar i;
    Local NumberVar iLinesNum:= Truncate(iLineNum - 1) - Truncate(iTextLen / iLineLen); 
    For i:= 1 to iLinesNum Do ( sRet:= sRet + chr(13) );
    
    sRet
    
  5. 将公式添加到数据的顶部和底部。文本对象如下所示:
    {@formula}{DataSource}{@formula}

    @formula的字体大小必须减半字体{DataSource}。例如,如果{DataSource}的字体大小等于20,则@formula应等于10: formula-position-and-font-size

  6. 算法在等宽字体中效果更好,但在大多数情况下使用比例字体。

    多个单元格的算法不同之处仅在于iLineNum将是所有单元格数据中的最大字符数。

答案 4 :(得分:-2)

在水晶报告10中标签>>右键单击>>格式文字>>普通>>文字轮换。选择90度文本将具有垂直对齐 在您添加到报表的字段或任何对象中相同 希望我帮助你

请注意答案(格式文字>标签段落,水平对齐:居中)是错误的