Click or drag to resize

PdfIntegrationProviderOnDocumentInit Method

Called before a document is loaded, as the document interface is initializing.

Namespace:  RadPdf.Integration
Assembly:  RadPdf (in RadPdf.dll) Version: 3.25.0.0 (3.25.0.0)
Syntax
public virtual void OnDocumentInit(
	DocumentInitEventArgs e
)

Parameters

e
Type: RadPdf.IntegrationDocumentInitEventArgs
An object (defined by DocumentInitEventArgs) that contains event data.
Remarks

Inheriting classes can override this method to perform other tasks or modify aspects of the document interface. If this method is overridden in an inheriting class, you must call the base implementation.

Examples
The following example overrides the default PdfIntegrationProvider to create a custom Integration Provider for the web application. This custom Integration Provider makes a custom font (Open Sans) available for all PdfWebControl instances. Users who do not have the custom font installed on their devices will be provided Open Sans as a web font via Google Fonts.
C#
using System;
using System.Web;

using RadPdf.Integration;

public class CustomPdfIntegrationProvider : PdfIntegrationProvider
{
    public CustomPdfIntegrationProvider() : base()
    {
        // Add an additional font which we want available to RAD PDF
        this.FontResources.Add(new PdfFontResource("Open Sans", "\'Open Sans\', Arial, sans-serif", "Open Sans")); // The TrueType font "Open Sans" must be installed on the server, available at: https://www.google.com/fonts#UsePlace:use/Collection:Open+Sans
    }

    public override void OnDocumentInit(DocumentInitEventArgs e)
    {
        base.OnDocumentInit(e);

        // Because Open Sans may not be installed on all client devices, we include an external style sheet which provides the font automatically using a web font. 
        // Google Fonts makes this very easy, but your own style sheet can be used instead. 
        // This implementation is not font format specific; you may use any font format which your target browsers support (e.g. WOFF, TTF, OTF, SVG, EOT). 
        e.ExternalStyle = "http://fonts.googleapis.com/css?family=Open+Sans";
    }
}
The following web.config file registers the above custom Integration Provider. This example assumes that CustomPdfIntegrationProvider is in the directory App_Code of your ASP.NET web application.
XML
<?xml version="1.0"?>
<configuration>
  <appSettings>
    <add key="RadPdfConnectionString" value="Server=.\SQLExpress;Database=RadPdf;Trusted_Connection=Yes;"/>
    <add key="RadPdfLicenseKey" value="DEMO"/>
    <add key="RadPdfIntegrationProvider" value="CustomPdfIntegrationProvider,App_Code"/>
  </appSettings>
  <system.web>
    <httpHandlers>
      <add path="RadPdf.axd" verb="GET,POST" type="RadPdf.Web.HttpHandler.PdfHttpHandler"/>
    </httpHandlers>
  </system.web>
  <!--
    The system.webServer element is for use with IIS 7 (and later) when Managed Pipeline Mode is set to "Integrated".
    It will be ignored in other versions of IIS.
    -->
  <system.webServer>
    <validation validateIntegratedModeConfiguration="false"/>
    <handlers>
      <add path="RadPdf.axd" verb="GET,POST" name="PdfHttpHandler" preCondition="integratedMode" type="RadPdf.Web.HttpHandler.PdfHttpHandler"/>
    </handlers>
  </system.webServer>
</configuration>
See Also