Viewer Component - Export settings

These samples show how to set up the ActiveReportsJS Viewer component's export UI. The code uses the availableExports property of the Viewer component to specify available export types and the ExportsSettings option to preset the output document's settings. Try to export the report to one of the supported formats and observe the applied settings in the output document. For more details, please visit the Export Settings page. To view the code, scroll down the page.

app.vue
index.html
Copy to CodeMine
<template> <div id="viewer-host"> <JSViewer theme="ActiveReports" :report="{ Uri: '/activereportsjs/demos/resource/reports/Frontstore.rdlx-json', }" :exportsSettings="exportsSettings" :sidebarVisible="true" :availableExports="availableExports" ></JSViewer> </div> </template> <script> import { ref } from "vue"; import { Viewer } from "@mescius/activereportsjs-vue"; import "@mescius/activereportsjs/pdfexport"; import "@mescius/activereportsjs/htmlexport"; import "@mescius/activereportsjs/tabulardataexport"; import "@mescius/activereportsjs-i18n"; import Core from "@mescius/activereportsjs/core"; Core.FontStore.registerFonts("/activereportsjs/demos/resource/fontsConfig.json"); export default { components: { JSViewer: Viewer, }, setup() { const availableExports = ref(["pdf", "html", "tabular-data"]); const exportsSettings = ref({ pdf: { title: "ActiveReportsJS Sample", author: "GrapeCity", subject: "Web Reporting", keywords: "reporting, sample", userPassword: "pwd", ownerPassword: "ownerPwd", printing: "none", copying: false, modifying: false, annotating: false, contentAccessibility: false, documentAssembly: false, pdfVersion: "1.7", autoPrint: true, filename: "ActiveReportsJS-Sample.pdf", }, html: { title: "ActiveReportsJS Sample", filename: "ActiveReportsJS-Sample.html", autoPrint: true, multiPage: true, embedImages: "external", outputType: "html", }, }); return { availableExports, exportsSettings, }; }, }; </script> <style> #viewer-host { width: 100%; height: 600px; } </style>
<template> <div id="viewer-host"> <JSViewer theme="ActiveReports" :report="{ Uri: '/activereportsjs/demos/resource/reports/Frontstore.rdlx-json', }" :exportsSettings="exportsSettings" :sidebarVisible="true" :availableExports="availableExports" ></JSViewer> </div> </template> <script> import { ref } from "vue"; import { Viewer } from "@mescius/activereportsjs-vue"; import "@mescius/activereportsjs/pdfexport"; import "@mescius/activereportsjs/htmlexport"; import "@mescius/activereportsjs/tabulardataexport"; import "@mescius/activereportsjs-i18n"; import Core from "@mescius/activereportsjs/core"; Core.FontStore.registerFonts("/activereportsjs/demos/resource/fontsConfig.json"); export default { components: { JSViewer: Viewer, }, setup() { const availableExports = ref(["pdf", "html", "tabular-data"]); const exportsSettings = ref({ pdf: { title: "ActiveReportsJS Sample", author: "GrapeCity", subject: "Web Reporting", keywords: "reporting, sample", userPassword: "pwd", ownerPassword: "ownerPwd", printing: "none", copying: false, modifying: false, annotating: false, contentAccessibility: false, documentAssembly: false, pdfVersion: "1.7", autoPrint: true, filename: "ActiveReportsJS-Sample.pdf", }, html: { title: "ActiveReportsJS Sample", filename: "ActiveReportsJS-Sample.html", autoPrint: true, multiPage: true, embedImages: "external", outputType: "html", }, }); return { availableExports, exportsSettings, }; }, }; </script> <style> #viewer-host { width: 100%; height: 600px; } </style>
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <title>ActiveReportsJS Report Viewer Export Settings Sample</title> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <link href="https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&display=swap" rel="stylesheet" /> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z" crossorigin="anonymous" /> <link rel="stylesheet" href="https://cdn.materialdesignicons.com/2.8.94/css/materialdesignicons.min.css" /> <!-- SystemJS --> <script src="node_modules/systemjs/dist/system.src.js"></script> <script src="systemjs.config.js"></script> <script src="./compiler.js" type="module"></script> <script src="/activereportsjs/demos/arjs/dist/ar-js-core.js"></script> <script src="/activereportsjs/demos/arjs/dist/ar-js-viewer.js"></script> <link rel="stylesheet" type="text/css" href="/activereportsjs/demos/arjs/styles/ar-js-ui.css" /> <link rel="stylesheet" type="text/css" href="/activereportsjs/demos/arjs/styles/ar-js-viewer.css" /> <script> System.import("./app.js"); </script> </head> <body style="margin: 0"> <div id="app"></div> </body> </html>
(function (global) { SystemJS.config({ transpiler: "systemjs-plugin-babel", typescriptOptions: { target: "es5", module: "system", }, baseURL: "./node_modules/", packageConfigPaths: [ "./node_modules/*/package.json", "./node_modules/@mescius/*/package.json", "./node_modules/@babel/*/package.json", "./node_modules/@vue/*/package.json", ], map: { vue: "./node_modules/vue/dist/vue.esm-browser.js", "systemjs-babel-build": "systemjs-plugin-babel/systemjs-babel-browser.js", "@mescius/activereportsjs/pdfexport": "@mescius/activereportsjs/dist/ar-js-pdf.js", "@mescius/activereportsjs/tabulardataexport": "@mescius/activereportsjs/dist/ar-js-tabular-data.js", "@mescius/activereportsjs/htmlexport": "@mescius/activereportsjs/dist/ar-js-html.js", "@mescius/activereportsjs/xlsxexport": "@mescius/activereportsjs/dist/ar-js-xlsx.js", "@mescius/activereportsjs-vue": "@mescius/activereportsjs-vue/lib/index.js", "@mescius/activereportsjs/reportviewer": "./reportviewer.js", "@mescius/activereportsjs/viewer": "./reportviewer.js", "@mescius/activereportsjs/reportdesigner": "@mescius/activereportsjs/dist/ar-js-designer.js", "@mescius/activereportsjs/core": "@mescius/activereportsjs/dist/ar-js-core.js", "@mescius/activereportsjs/styles": "@mescius/activereportsjs/styles", "@mescius/activereportsjs-i18n": "@mescius/activereportsjs-i18n/dist/ar-js-locales.js", "@mescius/ar-js-pagereport": "@mescius/activereportsjs/dist/ar-js-core.js", }, meta: { "*.css": { loader: "systemjs-plugin-css" }, "./src/*.vue": { loader: "../plugin-vue/index.js" }, "*.vue": { loader: "./plugin-vue/index.js" }, }, packages: { "vue-demi": { defaultExtension: "mjs", main: "lib/index.mjs", }, }, }); })(this);