#Code Sample: Custom PDF Exporter
using Izenda.Controls;
using Izenda.AdHoc;
using System;
public class CustomPdfGenerator : PdfGeneratorBase
{
public override IContentGenerator GenerateOutput(ReportSet reportSet)
{
string html = PrepareReportSetHtml(reportSet, true, true);
byte[] fileContents = null;
try
{
fileContents = CustomExport(html, reportSet);
}
catch (Exception ex)
{
Debug.Write(string.Format("CustomPdfGenerator::GenerateOutput {0}", ex.Message));
}
return new FileContentGenerator(Guid.NewGuid().ToString(), fileContents, GetOutputFileName(reportSet.ReportNameSafe),
Utility.GetMIMEType(FileExtension.ToUpper()));
}
private byte[] CustomExport(string html, ReportSet reportSet)
{
//perform custom logic here
return new byte[0];
}
}
Imports Izenda.Controls
Imports Izenda.AdHoc
Imports System
Public Class CustomPdfGenerator
Inherits PdfGeneratorBase
Public Overrides Function GenerateOutput(ByVal reportSet As ReportSet) As IContentGenerator
Dim html As String = PrepareReportSetHtml(reportSet, True, True)
Dim fileContents As Byte() = Nothing
Try
fileContents = CustomExport(html, reportSet)
Catch ex As Exception
Debug.Write(String.Format("CustomPdfGenerator::GenerateOutput {0}", ex.Message))
End Try
Return New FileContentGenerator(Guid.NewGuid().ToString(), fileContents, GetOutputFileName(reportSet.ReportNameSafe),
Utility.GetMIMEType(FileExtension.ToUpper()))
End Function
Private Function CustomExport(ByVal html As String, ByVal reportSet As ReportSet) As Byte()
'perform custom logic here
Return New Byte() {}
End Function
End Class
