PivotGridはFlexGridを拡張しているため、通常のFlexGridでエクスポートする場合と同様に、XLSXやPDFにエクスポートできます。
Excelへのエクスポートはシンプルです。wijmo.grid.xlsxモジュールは、FlexGridXlsxConverter.save()関数からこの機能を実行できます。ただし、このプロセスにはwijmo.xlsxモジュールも必要です。
wijmo.xlsxはjszipに依存します。このスクリプトもプロジェクトにインクルードする必要があります。
// Excel export
import * as wjGridXlsx from '@mescius/wijmo.grid.xlsx';
// PDF Export
import * as wjPdf from '@mescius/wijmo.pdf';
import * as wjGridPdf from '@mescius/wijmo.grid.pdf';
document.getElementById('xlsx').addEventListener('click', function() {
// 現在のビューを含むブックを作成します
var book = wjGridXlsx.FlexGridXlsxConverter.save(pivotGrid, {
includeColumnHeaders: true,
includeRowHeaders: true
);
book.sheets[0].name = 'PivotGrid';
// ブックを保存します
book.save('PivotGrid.xlsx');
});
PDFにエクスポートするには、wijmo.grid.pdfモジュールを使用します。Excelエクスポートと同様に、wijmo.grid.pdfモジュールはwijmo.pdfに依存します。FlexGridPdfConverterクラスには、グリッドインスタンス、ファイル名、およびドキュメント設定を指定するJSONオブジェクトを受け取るexport()関数があります。
次に、この例を示します。
document.getElementById('pdf').addEventListener('click', function() {
wjGridPdf.FlexGridPdfConverter.export(pivotGrid, 'PivotGrid.pdf', {
maxPages: 10,
scaleMode: wjGridPdf.ScaleMode.PageWidth,
documentOptions: {
compress: true,
header: {
declarative: { text: '\t&[Page] of &[Pages]' }
},
footer: {
declarative: { text: '\t&[Page] of &[Pages]' }
},
info: { author: 'GrapeCity', title: 'PivotGrid' }
},
styles: {
cellStyle: {
backgroundColor: '#ffffff',
borderColor: '#c6c6c6'
},
altCellStyle: { backgroundColor: '#f9f9f9' },
groupCellStyle: { backgroundColor: '#dddddd' },
headerCellStyle: { backgroundColor: '#eaeaea' }
}
});
});
エクスポートするPDFドキュメントにコンテンツを追加したい場合もあります。それには、wijmo.pdfモジュールを使用します。PdfDocumentを作成し、draw()などの関数を使用してコンテンツを追加します。
例:
document.getElementById('pdfdoc').addEventListener('click', function() {
// ドキュメントを作成します
var doc = new wjPdf.PdfDocument({
compress: true,
header: { declarative: { text: '\t&[Page]\\&[Pages]' } },
ended: function (sender, args) {
wjPdf.saveBlob(args.blob, 'PivotGridDoc.pdf');
}
});
// コンテンツを追加します
doc.drawText('This is a PivotGrid control:');
// グリッドを追加します(400pt幅)
wjGridPdf.FlexGridPdfConverter.draw(pivotGrid, doc, 400);
// ドキュメントを完了します
doc.end();
});
Excel/PDFエクスポートのデモを参照してください。