彩票走势图

报表开发工具FastReport VCL使用教程——如何删除对象交集

翻译|使用教程|编辑:凌霄汉|2022-03-30 16:17:08.643|阅读 275 次

概述:在新版 FastReport VCL 2022.2 中,我们为报表设计器添加了新功能,可帮助您在开发报表模板时检测并修复最常见的错误。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

FastReport VCL 是一个具有自由对象布局的报表生成器。这意味着对象可以按任何顺序排列,包括重叠其他对象。这些对象可以成功转换为自由对象布局导出格式,但可能会导致具有刚性结构的文档出现问题。这种格式的一个例子是 XLSX 表。由于格式的严格表格结构,无法导出相交对象。

如何寻找对象交点

首先,您需要在报表设计器中打开报表。该示例使用来自主演示应用程序的修改报告。

报表开发工具FastReport .NET——Matrix 和 AdvancedMatrix 对象的新功能和比较

乍一看,没有问题。让我们看看呈现的报告在预览中的样子。

报表开发工具FastReport .NET——Matrix 和 AdvancedMatrix 对象的新功能和比较

使用 XLSX 等表格导出时,问题可能会变得更加明显。

报表开发工具FastReport .NET——Matrix 和 AdvancedMatrix 对象的新功能和比较

我们看到导出期间表格中出现了额外的列,并且对象的内容被截断。即使在运行了很长时间的报告中也很难检测到此类错误。

让我们回到报表设计器。从 FastReport VCL 2022.2 开始,报表设计器的标准工具栏上现在有一个按钮,可启用新功能 - “突出显示交叉点”。

报表开发工具FastReport .NET——Matrix 和 AdvancedMatrix 对象的新功能和比较

按下按钮以突出显示对象的交集。

报表开发工具FastReport .NET——Matrix 和 AdvancedMatrix 对象的新功能和比较

现在我们可以看到哪些对象重叠以及它们相交的位置。

解决方案

修复演示报告中的错误非常简单,因为交叉点清晰可见,并且报告对象不多。让我们移动问题对象。

报表开发工具FastReport .NET——Matrix 和 AdvancedMatrix 对象的新功能和比较

如何加快修复包含许多对象的报告

在这种情况下,FastReport VCL 2022.2 版本中的另一个功能 Auto Guides 可以帮助报表开发人员。在此模式下,将为报告中每个对象的所有四个点自动生成延伸线。重要的是,此模式不会替换用户在报表页面上添加的扩展线,而是对其进行补充。

您可以借助报表设计器工作区上一行的按钮更改此模式。

报表开发工具FastReport .NET——Matrix 和 AdvancedMatrix 对象的新功能和比较

共有四种模式:

  • 自动引导线禁用d – 使用用户添加的延长线。
  • 启用自动引导线 - 为每个对象自动创建延长线。
  • 仅启用水平自动引导线- 仅在水平面上为每个对象自动创建延长线。
  • 仅启用垂直自动引导线- 仅为垂直平面中的每个对象自动创建延长线。

按下按钮,开启全显示自动延长线模式。现在您可以移动带有问题对象的延长线。

报表开发工具FastReport .NET——Matrix 和 AdvancedMatrix 对象的新功能和比较

在这种模式下,问题区域清晰可见,在使用表导出过滤器时可以显示出来。

但这些并不是“自动指南”模式的全部功能。在这种模式下,报表设计者可以将任何“自动指南”添加到自定义页面指南中。移动标尺上的指南指针并单击加号就足够了。

报表开发工具FastReport .NET——Matrix 和 AdvancedMatrix 对象的新功能和比较

这使您可以创建自定义参考线,以便在将新对象添加到报告时用于对齐。

当然,“自动指南”可以像添加时一样从自定义指南中删除。再次移动标尺上的指南指针,然后按减号。

报表开发工具FastReport .NET——Matrix 和 AdvancedMatrix 对象的新功能和比较

此功能为报告开发人员提供了一系列精美且智能的报告,可以导出为任何数据格式。


FastReport 技术交流群:702295239    欢迎一起进群讨论


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP