如何在指定数量的字符后截断Crystal中文本对象的每一行

时间:2014-03-28 18:44:13

标签: crystal-reports

在Crystal Reports中,我有一个文本字段(来自SQL),用户可以在其中输入多个句子。按回车键即可分隔每个句子。

在报告中,我已将CanGrow属性设置为无限制,但是,我希望每个句子在50个字符后截断,并使下一行以下一个句子的开头开头。

示例:

用户的输入如下:

One two three four five six seven eight nine ten eleven twelve
thirteen fourteen fifteen sixteen seventeen eighteen nineteen
twenty twenty-one twenty-two twenty-three twenty-four twenty-five
twenty-six twenty-seven

所需的报告输出:

One two three four five six seven eight nine ten e
thirteen fourteen fifteen sixteen seventeen eighte
twenty twenty-one twenty-two twenty-three twenty-f
twenty-six twenty-seven

我很幸运地收到报告: a)将文本换行到新行(不需要) b)缩小文本的大小以使其变小(不需要)

在50个字符后帮助将其截断!

1 个答案:

答案 0 :(得分:0)

Note: This is not Tested Solution

典型的问题,但尝试这样的事情:

Local NumberVar i:=0;
Local StringVar j;
While i <= Length(<<DatabaseString>>) Do
(
j:=j+Mid(<<DatabaseString>>, i, 50) +chrw(13);
i:=i+50;
);
j

选项2:

Mid(<<DatabaseString>>, 1, 50) +chrw(13)+Mid(<<DatabaseString>>, 51, 50) +chrw(13); //Continue till the length of the string

让我知道它是怎么回事。