8

如何在 Crystal Reports 的 StringVar 中输入换行符(或通常用转义字符解决的其他非文本字符)?

想要的输出:

第 1
行 第 2 行

我试过StringVar s := "line 1 \n line 2";了,但这不起作用。

4

3 回答 3

11

我只是使用以下代码换行

“这个公式字段” + ChrW(13) + “包含一个换行符!”

于 2014-10-28T08:26:32.400 回答
8

它可能没有太大的改进,但您可以构建一个字符串格式的自定义函数:

// sf()
Function (Stringvar text)

    Stringvar Array keys := ["\n"];
    Stringvar Array values := [Chr(10)+Chr(13)];

    Numbervar i;

    For i := 1 to Ubound(keys) do (
        text := Replace(text, keys[i], values[i])
    );

    text;

//{@ text}
sf("line 1 \n line 2")

如果您需要支持其他转义序列,这将为您提供一些可扩展性。

于 2012-08-29T12:45:09.217 回答
4

我找到了一个功能性的,虽然不是代码美观的解决方案:

StringVar s := "line 1" + chr(10) + chr(13) + "line 2";
于 2012-08-29T11:40:58.593 回答