PdfIntegrationProviderOnDocumentInit Method |
Namespace: RadPdf.Integration
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.
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"; } }
using Microsoft.AspNetCore.Builder; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using RadPdf; var builder = WebApplication.CreateBuilder(args); // Add services to the container. builder.Services.AddRazorPages(); builder.Services.AddSession(); // Setup WebApplication var app = builder.Build(); app.UseStaticFiles(); app.UseRouting(); app.UseSession(); app.UseAuthorization(); // Or however you normally process page requests app.MapRazorPages(); // Create middleware settings RadPdfCoreMiddlewareSettings settings = new RadPdfCoreMiddlewareSettings() { // Add SQL Server Connection String, if not using Lite Documents // Sample connection string below connects to a SQL Server Express instance on localhost // TrustServerCertificate=True is set to avoid a trust exception (e.g. "The certificate chain was issued by an authority that is not trusted.") // ConnectionString = @"Server=.\SQLExpress;Database=RadPdf;Trusted_Connection=Yes;TrustServerCertificate=True;", // Add License Key LicenseKey = "DEMO", // Attach the Integration Provider IntegrationProvider = new CustomPdfIntegrationProvider() // To run RAD PDF without the System Service, add UseService = false // If using Lite Documents without the System Service, a LiteStorageProvider must also be implemented //UseService = false }; // Add RAD PDF's middleware to app app.UseRadPdf(settings); app.Run();