提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:况鱼杰|2019-12-18 13:48:46.007|阅读 326 次
概述:GroupDocs.Assembly是一个在线文档生成服务,允许您为现有的文档模板(合同、NDA、应用等等)添加表单域,并将其发送给收件人填写。本文将会介绍该产品更新至v19.11时的新功能-动态插入书签,单元格和幻灯片的链接。
#慧都22周年庆大促·界面/图表报表/文档/IDE/IOT/测试等千款热门软控件火热促销中>>
GroupDocs.Assembly是一个在线文档生成服务,允许您为现有的文档模板(合同、NDA、应用等等)添加表单域,并将其发送给收件人填写。通过合并模板和用户填入的数据,GroupDocs能自动生成定制化文档,和初始模板区别不大,但是包含了收件人填写的数据。
本文将会介绍该产品更新至v19.11时的新功能-动态插入书签,单元格和幻灯片的链接。如果想要了解更多更新内容可以点击此处>>查看或者联系。
动态插入超链接
使用GroupDocs.Assembly,您可以使用链接标签将超链接动态插入到报表中。链接标记的语法定义如下:
<<link [uri_expression][display_text_expression]>>
在此, uri_expression 为要动态插入的超链接定义URI。该表达式是强制性的,必须返回非空值。反过来, display_text_expression 定义要为超链接显示的文本。此表达式是可选的。如果省略它或返回一个空值,则在运行时, 还将uri_expression 值用作显示文本。 uri_expression 和display_text_expression的值都可以是任何类型。在运行时,将调用Object.ToString()以获取这些表达式的值的文本表示形式,这对于诸如Uri 之类的类型的表达式非常有用。
例如,w在构建报告时,将对uri_expression和display_text_expression进行评估,并使用它们的结果来构建超链接,该超链接随后将替换相应的链接标记。
动态插入书签链接
插入文字处理文档和电子邮件的链接
您还可以使用链接标签动态地将指向报告的书签的链接插入。链接标记的语法定义如下:
<<link [uri_or_bookmark_expression][display_text_expression]>>
此处, uri_or_bookmark_expression定义了URI或同一文档中书签的名称,以便动态插入超链接。该表达式是强制性的,必须返回非空值。反过来,display_text_expression定义要为超链接显示的文本。此表达式是可选的。如果省略它或返回一个空值,则在运行时, 还将uri_or_bookmark_expression值用作显示文本。
注意:
uri_or_bookmark_expression和display_text_expression的值都可以是任何类型。在运行时,将调用Object.ToString()来获取这些表达式的值的文本表示形式,这对于诸如Uri之类的类型的表达式很有用。在生成报告时,将评估uri_or_bookmark_expression和display_text_expression并将它们的结果用于构造超链接,该超链接随后将替换相应的链接标记。如果uri_or_bookmark_expression返回同一文档中书签的名称,则超链接导航到该书签。否则,超链接将导航到相应的外部资源。
链接标记不能在图表内使用。
插入电子表格文档的单元格链接
对于电子表格文档,链接标记的行为如下更改。如果在运行时在链接标记中定义的表达式被评估为单元格或单元格范围引用,则该标签将替换为指向相应单元格或单元格范围的链接。
下表描述了单元格和单元格范围引用的受支持格式。
| 描述 | 格式 | 例 |
| 引用同一工作表中的单元格 | cell_name | A1 |
| 引用另一个工作表中的单元格 | 工作表名称!单元名称 | Sheet1!A1 |
| 引用同一工作表中的单元格范围 | start_cell_name:end_cell_name | A1:B2 |
| 引用另一个工作表中的单元格范围 | worksheet_name!start_cell_name:end_cell_name | Sheet1!A1:B2 |
以下是示例语法,如果需要插入到单元格A1的链接:
<<link ["A1"] ["Home"]>>
插入演示文稿幻灯片的链接
对于Presentation文档,链接标记的行为如下更改。如果将链接标记中定义的表达式评估为SlideN值,其中N是同一Presentation文档中幻灯片的基于一个索引的索引,则在运行时,标记将替换为指向相应幻灯片的链接。
请参见以下语法示例:
<<link ["Slide1"] ["Home"]>>
代码示例和模板
文字处理文件
// For complete examples and data files, please go to //github.com/groupdocs-assembly/GroupDocs.Assembly-for-.NET
//setting up source
const String strDocumentTemplate = "Word Templates/Dynamic Hyperlink.docx";
//Setting up destination
const String strDocumentReport = "Word Reports/Dynamic Hyperlink.docx";
//Setting up Uri Expression
const String uriExpression = "//www.groupdocs.com/";
//Setting up Display Text Expression
const String displayTextExpression = "GroupDocs";
try
{
//Instantiate DocumentAssembler class
DocumentAssembler assembler = new DocumentAssembler();
//Call AssembleDocument to assemble document
assembler.AssembleDocument(CommonUtilities.GetSourceDocument(strDocumentTemplate), CommonUtilities.SetDestinationDocument(strDocumentReport),
new DataSourceInfo(uriExpression,"uriExpression"), new DataSourceInfo(displayTextExpression,"displayTextExpression"));
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
演示文件
// For complete examples and data files, please go to //github.com/groupdocs-assembly/GroupDocs.Assembly-for-.NET
//setting up source
const String strDocumentTemplate = "Presentation Templates/Dynamic Hyperlink.pptx";
//Setting up destination
const String strDocumentReport = "Presentation Reports/Dynamic Hyperlink.pptx";
//Setting up Uri Expression
const String uriExpression = "//www.groupdocs.com/";
//Setting up Display Text Expression
const String displayTextExpression = "GroupDocs";
try
{
//Instantiate DocumentAssembler class
DocumentAssembler assembler = new DocumentAssembler();
//Call AssembleDocument to assemble document
assembler.AssembleDocument(CommonUtilities.GetSourceDocument(strDocumentTemplate), CommonUtilities.SetDestinationDocument(strDocumentReport),
new DataSourceInfo(uriExpression,"uriExpression"), new DataSourceInfo(displayTextExpression,"displayTextExpression"));
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
电子表格文件
// For complete examples and data files, please go to //github.com/groupdocs-assembly/GroupDocs.Assembly-for-.NET
//setting up source
const String strDocumentTemplate = "Spreadsheet Templates/Dynamic Hyperlink.xlsx";
//Setting up destination
const String strDocumentReport = "Spreadsheet Reports/Dynamic Hyperlink.xlsx";
//Setting up Uri Expression
const String uriExpression = "//www.groupdocs.com/";
//Setting up Display Text Expression
const String displayTextExpression = "GroupDocs";
try
{
//Instantiate DocumentAssembler class
DocumentAssembler assembler = new DocumentAssembler();
//Call AssembleDocument to assemble document
assembler.AssembleDocument(CommonUtilities.GetSourceDocument(strDocumentTemplate), CommonUtilities.SetDestinationDocument(strDocumentReport),
new DataSourceInfo(uriExpression,"uriExpression"), new DataSourceInfo(displayTextExpression,"displayTextExpression"));
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
电子邮件文件
// For complete examples and data files, please go to //github.com/groupdocs-assembly/GroupDocs.Assembly-for-.NET
//setting up source
const String strDocumentTemplate = "Email Templates/Dynamic Hyperlink.msg";
//Setting up destination
const String strDocumentReport = "Email Reports/Dynamic Hyperlink.msg";
//Setting up Uri Expression
const String uriExpression = "//www.groupdocs.com/";
//Setting up Display Text Expression
const String displayTextExpression = "GroupDocs";
try
{
//Instantiate DocumentAssembler class
DocumentAssembler assembler = new DocumentAssembler();
//Call AssembleDocument to assemble document
assembler.AssembleDocument(CommonUtilities.GetSourceDocument(strDocumentTemplate), CommonUtilities.SetDestinationDocument(strDocumentReport),
new DataSourceInfo(uriExpression,"uriExpression"), new DataSourceInfo(displayTextExpression,"displayTextExpression"));
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
以上模板示例下载:动态插入超链接代码示例
想要了解更多有关GroupDocs.Assembly的朋友,可以联系
更多精彩内容,欢迎关注下方的微信公众号,获取更多产品咨询
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@hmdbvip.cn
文章转载自:



在现代软件开发过程中,自动化单元测试是确保代码质量与可靠性的关键环节。尤其对于特定框架(如MFC)的代码,测试复杂度显著增加,常因依赖外部资源或交互操作而难以在静默环境中顺利执行。Parasoft C/C++test作为专业的软件测试工具,致力于帮助开发团队高效实施自动化测试,通过其强大的桩函数功能,能够有效模拟依赖组件的行为,从而实现对复杂逻辑的隔离测试。
本文将为大家介绍如何在MyEclipse中使用XDoclet开发EJB 2 Session Bean,欢迎下载最新版体验!
如果能将 CSV 自动转换为 PDF ,就能快速生成清晰、美观的报表,既节省手动排版时间,又能保持数据的专业呈现。本文将介绍如何使用 Spire.XLS for Java 实现这一过程——从加载 CSV 到输出高质量 PDF,仅需数行代码即可完成。
Parasoft C/C++test是一款专为C/C++代码设计的自动化测试工具,通过静态代码分析、单元测试和运行时错误检测等功能,帮助开发团队在早期发现并修复缺陷,提升代码质量和开发效率 。在实际使用中,尤其是在VC6此类旧版开发环境中执行单元测试时,可能会因环境兼容性问题触发链接错误。
相关产品
GroupDocs.Assembly是一个允许您为现有的文档模板(合同、NDA、应用等等)添加表单域,并将其发送给收件人填写的在线文档生成服务。
最新文章 MORE
永利最大(官方)网站相关的文章 MORE
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@hmdbvip.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
永利最大(官方)网站