[]
本节主要分享可以在不预览报表的情况下设置导出文档的属性。
以下代码指定了PDF的导出设置。
function load() {
var ARJS = GC.ActiveReports.Core;
var PDF = GC.ActiveReports.PdfExport;
var onProgressCallback = function (pageCount) {
console.log(pageCount);
}
var settings = {
info: {
title: 'Invoice List',
subject: 'This is the Invoice List',
author: 'John K',
keywords: 'PDF; import; export'
},
security:
{
userPassword: 'user_Pwd',
ownerPassword: 'owner_Pwd',
permissions: {
printing: 'lowResolution',
modifying: true,
annotating: true,
copying: true,
contentAccessibility: false,
documentAssembly: false
}
},
pdfVersion:"1.5",
autoPrint: true,
fonts: [
{
name: 'SimSun-ExtB',
source: '/fonts/simsunb.ttf'
},
{
name: 'Matura MT Script Capitals',
source: '/fonts/MATURASC.TTF',
},
{
name: 'Stencil',
source: '/fonts/STENCIL.ttf'
}
]
}
var pageReport = new ARJS.PageReport();
pageReport.load('/reports/InvoiceList.rdlx-json')
.then(() => pageReport.run())
.then(pageDocument => PDF.exportDocument(pageDocument, settings, onProgressCallback))
.then(result => result.download('InvoiceList'));
}
注意:
PDF导出设置的描述 | 样例代码 |
---|---|
标题 - 文件标题。 | info: {title: 'Invoice List'} |
作者 - 显示在查看器应用程序的文档属性中的作者姓名。 | info: {author: 'John K'} |
关键字 - 与文档关联的关键字。 | info: {keywords: 'PDF; import; export'} |
主题 - 文档的主题。 | info: {subject: 'This is the Invoice List'} |
用户名密码 - 可以在阅读器中输入的用户密码。 如果将此值保留为空,则不会提示用户输入密码,但是该用户将受到指定权限的限制。 | security: {userPassword: 'user_Pwd'} |
作者密码 - 可以在阅读器中输入的所有者密码,无论指定的用户权限如何,该密码都可以完全访问文档。 | security: {ownerPassword: 'owner_Pwd'} |
允许打印 - 允许以低或高分辨率打印文档。 | security: {permissions: {printing: 'lowResolution'}} |
允许复制 - 允许从文档中复制内容。 | security: {permissions: {copying: true}} |
允许修改 - 允许在文档中进行编辑。 | security: {permissions: {modifying: true}} |
允许注释 - 允许添加或编辑注释。 | security: {permissions: {annotating: true}} |
允许内容可访问性 - 允许文本提取或可访问性。 | security: {permissions: {contentAccessibility: false}} |
允许文件组装 - 允许合并PDF文档。 | security: {permissions: documentAssembly: false}} |
PDF版本 - 允许设置PDF版本 - 1.3, 1.4, 1.5, 1.6, 1.7, 及 1.7ext3。 | pdfVersion:"1.5" |
打开时打印 - 表示打开后是否应打印文档。 | autoPrint: true |
文件名 - 文档名称. | .then(result => result.download('InvoiceList')); |
以下代码指定Excel的导出设置。
function load() {
var ARJS = GC.ActiveReports.Core;
var Excel = GC.ActiveReports.XlsxExport;
var onProgressCallback = function (pageCount) {
console.log(pageCount);
}
var settings = {
info: {
creator: 'Jack'
},
sheetName: 'Sheet_Details',
pageSettings: {
size:'A4',
orientation: 'landscape'
},
password: 'password'
}
var pageReport = new ARJS.PageReport();
pageReport.load('/reports/InvoiceList.rdlx-json')
.then(() => pageReport.run())
.then(pageDocument => Excel.exportDocument(pageDocument, settings, onProgressCallback))
.then(result => result.download('InvoiceList'));
}
属性设置 | 示例代码 |
---|---|
作者 - 显示在查看器应用程序的文档属性中的作者姓名。 | info: {creator: 'Jack'} |
尺寸 -Excel文件的大小-Letter,Legal,A4等 | size:'A4' |
方向 - Excel文档的方向-纵向或横向。 | pageSettings: {orientation: 'landscape'} |
工作表名称 - name of the Excel document or sheet. | sheetName: 'Sheet_Details' |
密码 - 密码以打开Excel文档。 | password: 'password' |
文件名 - 导出的Excel文档的名称。 | .then(result => result.download('InvoiceList')); |
以下代码指定HTML的导出设置。
function load() {
var ARJS = GC.ActiveReports.Core;
var HTML = GC.ActiveReports.HtmlExport;
var onProgressCallback = function (pageCount) {
console.log(pageCount);
}
var settings = {
autoPrint: true,
multiPage: true,
renderOptions: {
galleyMode: true //property available only through API
}
}
var pageReport = new ARJS.PageReport();
pageReport.load('/reports/InvoiceList.rdlx-json')
.then(() => pageReport.run())
.then(pageDocument => HTML.exportDocument(pageDocument, settings, onProgressCallback))
.then(result => result.download('InvoiceList'));
}
属性设置 | 示例代码 |
---|---|
标题 - 文档标题。 | title: 'Invoice List' |
另存为存档 - 将所有报表页面导出为存档文件(zip格式)或单个HTML页面。 | multiPage: true |
打开后打印 - 表示是否应在打开时打印文档。 | autoPrint: true |
文件名 - 导出的HTML文档的名称。 | .then(result => result.download('InvoiceList')); |
Excel
HTML
下表列出了PDF或Excel导出中不支持的属性。
属性 | PDF是否支持 | Excel是否支持 |
---|---|---|
报表 - Bookmark | 是 | 否 |
文本框 - CharacterSpacing | 是 | 否 |
文本框 - LineSpacing | 否 | 否 |
图片 - Alignment | 是 | 否 |
图片 - Action | 是 | 否 |
图片 - BackgroundRepeat | 否 | 否 |
图片 - Sizing | N | 是 |
形状 - RoundingRadius | 是 | 否 |
形状 - Style | 是 | 否 |
表格 - AutoMergeMode | 否 | 否 |
表格 - WritingMode | 否 | 否 |
直线 - LineWidth | 是 | 否 |
子报表 - SubstituteThemesOnSubreport | 否 | 否 |
矩表 - WritingMode | 否 | 否 |