Click or drag to resize

PdfFieldCollectionRebuildAppearances Property

Gets or sets a value representing whether a RAD PDF should rebuild the appearance streams of all form fields when generating the output PDF.

Namespace:  RadPdf.Data.Document.Objects.FormFields
Assembly:  RadPdfStandard (in RadPdfStandard.dll) Version: 5.8.0.0 (5.8.0.0)
Syntax
public bool RebuildAppearances { get; set; }

Property Value

Type: Boolean
Remarks
If NeedAppearances and RebuildAppearances are both set to true, the existing appearance streams will be removed, but they will not be rebuilt. A PDF reader will need to construct the form field appearance streams again.
Examples
The following example uses a PdfIntegrationProvider to create a custom Integration Provider which will set RebuildAppearances to true for all documents as they are saved.
C#
using System;
using System.Web;

using RadPdf.Integration;

public class CustomPdfIntegrationProvider : PdfIntegrationProvider
{
    public override void OnDocumentSaving(DocumentSavingEventArgs e)
    {
        base.OnDocumentSaving(e);

        // Set that RAD PDF should rebuild the appearance streams for
        // form fields in the document.
        e.Document.Fields.RebuildAppearances = true;
    }
}
The following Program.cs file registers the above custom Integration Provider. This example assumes that CustomPdfIntegrationProvider is in namespace referenced by your ASP.NET web application.
C#
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();

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();
See Also