当前位置: 首页 > news >正文

报表控件stimulsoft教程:在报表、仪表板和 PDF 表单自动生成缩略图

了解缩略图的工作原理在使用Stimulsoft Demo、Stimulsoft Server和Stimulsoft Cloud时非常有用。例如,您可以在此处查看缩略图的实际效果 - 当侧边栏折叠时,将显示缩略图而不是资源列表。在本文中,我们将探讨 Stimulsoft 产品中报表、仪表板和 PDF 表单的缩略图(也称为预览)的作用。例如,缩略图显示在报表查看器中,允许用户快速直观地识别资源内容。

Stimulsoft Ultimate (原Stimulsoft Reports.Ultimate)是用于创建报表和仪表板的通用工具集。该产品包括用于WinForms、ASP.NET、.NET Core、JavaScript、WPF、PHP、Java和其他环境的完整工具集。无需比较产品功能,Stimulsoft Ultimate包含了所有内容!

Stimulsoft Ultimate 最新版下载 

Stimulsoft 产品支持自动生成缩略图,也可以使用专用的StiThumbnailHelper类手动控制生成过程。此外,您还可以使用自定义图像代替自动生成的缩略图。
 

自动生成缩略图

将报告添加到以下位置时会自动生成缩略图:
 

  • Stimulsoft Server和Stimulsoft Cloud – 首次添加到工作区。

  • Stimulsoft Demo – 首次添加到资源列表。


用户无需执行任何其他操作。在这种情况下,会生成并保存一个缩略图,并一直使用到缩略图被删除(或报表本身被删除)。主要限制在于,缩略图在报表修改时不会更新。要更新缩略图,必须手动删除并重新生成旧的缩略图文件。
 

使用 StiThumbnailHelper 管理缩略图

将 Stimulsoft 集成到自定义项目或应用程序中时,您可以使用StiThumbnailHelper类来控制缩略图生成过程。
 

  • GetThumbnailPath(string path)生成给定报告的.thumb缩略图文件的路径,同时考虑到操作系统的显示缩放比例。

  • SaveThumbnail(StiReport report, string path)将图像字节数组(即第一个渲染报表页面的缩略图)返回到.thumb文件。此方法仅适用于已渲染的报表,或者您可以调用report.Render()

  • GetThumbnail(string path)从.thumb文件中返回指定报表缩略图的字节数组。如果该文件不存在,则返回 null。

  • GetThumbnailFromTemplateAsync(string path)从.mrt模板文件中异步检索报告缩略图。

  • GetThumbnailFromTemplate(string path, bool skipImage = false)同步创建一个StiThumbnailReport对象,该对象包含路径、报表名称、仪表板标志(“IsDbs”)和图像。如果之前保存过缩略图,则加载该缩略图。如果没有保存,则加载报表、生成图像并保存.thumb文件。此方法还会检测数据源是仪表板还是常规报表。


这样,可以根据需要随时生成报告的缩略图。
 

使用报告图像属性

每个报表、仪表板或 PDF 表单模板都可以在“报表图像”属性中包含自己的图像。该图像将用作缩略图,而不是自动生成的预览图。这适用于 Stimulsoft Demo、Stimulsoft Server 和 Stimulsoft Cloud 等产品。例如,您可以设置一个静态图像,无论实际报表内容如何,该图像都会显示在界面中。注意:

图像存储在报告文件中。如果添加或引用较大的图像文件,则会增加报告文件的整体大小。前面我们提到,自动生成的缩略图只能通过删除现有的预览文件来更新。但是,当将 Stimulsoft 集成到您自己的应用程序中时,您可以动态生成新的缩略图并将其直接分配给ReportImage属性。

...
//Load report
var report = new StiReport;
var templatePath = "Reports\\MyReport.mrt";
report.Load(templatePath);// Generate a new thumbnail from the report template
var thumbnail = await Stimulsoft.Wizard.Wpf.Info.Helper.StiThumbnailHelper.GetThumbnailFromTemplateAsync(templatePath);// Convert byte array to System.Drawing.Image
using (var ms = new MemoryStream(thumbnail.Image))
{
// Assign generated thumbnail to the ReportImage property
report.ReportImage = System.Drawing.Image.FromStream(ms);
}// Call report in designer where ReportImage will be used as the report thumbnail
report.Design();
...

实际上,这意味着可以在运行时为报表生成新的缩略图,并将其保存到“报表图像”属性中。这样,您就可以在不删除现有报表或其预览文件的情况下更新缩略图。

重点——动画

生成缩略图时需要考虑一个重要方面——动画,尤其是在仪表板中。对于报表,缩略图是从第一个渲染页面生成的,该页面用作预览图像。然而,仪表板没有明确的渲染状态,它们是实时运行的。这意味着,如果在缩略图生成时,仪表板元素的动画尚未完全完成,预览可能无法准确反映实际内容。例如,图表可能仅显示部分渲染。为了确保缩略图完全符合预期外观,必须考虑动画的持续时间。

Stimulsoft中的缩略图提供了一种简单有效的方法来直观地呈现报表、仪表板和表单。它们可以自动或手动生成,甚至可以用自定义图像替换。借助 StiThumbnailHelper,开发人员可以使用灵活的工具来管理任何集成场景中的缩略图。正确使用此功能可以改进导航,增强用户界面,并丰富在应用程序中与报表交互的整体体验。

http://www.lqws.cn/news/542197.html

相关文章:

  • SQL Server 中 GO 的作用
  • mPaaS 客户端诊断概述
  • CSS3实现同心圆效果
  • Go 语言中的 package 和 go modules
  • (二)YOLOV12部署训练
  • 人工智能-基础篇-1-人工智能介绍(发展史,技术体系,技术基础,主要领域,前景和挑战)
  • macOS,切换 space 失效,向右切换space(move right a space) 失效
  • Django导入错误:`from django.conf.urls import url` 的终极解决方案
  • 【机器学习深度学习】线性回归(基本模型训练流程)
  • 【AS32系列MCU调试教程】SPI调试的常见问题解析
  • 【AI助手】释放双手,基于Cursor Agent与Playwright MCP的浏览器自动化实战
  • Windows家庭版安装docker
  • 【Pandas】pandas DataFrame last_valid_index
  • 校企协同育人,智慧养老实训基地助力人才就业无忧
  • 【中文核心期刊推荐】《计算机工程与科学 》
  • MST56XXB/MST5650B/MST5033B 是一款耐高压的LDO芯片,针对中控设备,给MCU供电,60V的耐压,150mA
  • elastic-ai.creator开源程序是设计、训练和生成专门针对 FPGA 优化的神经网络
  • react-sequence-diagram时序图组件
  • 飞算科技依托 JavaAI 核心技术,打造企业级智能开发全场景方案
  • 【数据结构】B树的介绍及其实现C++
  • 带标签的 Docker 镜像打包为 tar 文件
  • React Native 如何实现拉起App
  • PHP在做爬虫时的解决方案
  • Franka 机器人在配置空间距离场实验中的突破性应用:从算法优化到动态场景适配
  • 无人机防护装置技术解析
  • 基于 Spring Boot + Vue 3的现代化社区团购系统
  • element-plus table合并列、合计行、表格填报添加验证
  • redisTemplate简单实现幂等性校验
  • fishbot随身系统安装nvidia显卡驱动
  • Rust交互式编程环境Jupyter Lab搭建