Renamed namespaces and related identifiers from EnvelopeGenerator.WebUI to EnvelopeGenerator.Server across the project. This change affects data models, services, controllers, and configuration files to ensure consistency with the new architecture. Updated @using directives in Razor components and other files to reflect the new namespace structure. Adjusted project references in EnvelopeGenerator.Server.csproj to point to the new EnvelopeGenerator.Server.Client project. Modified middleware and logging configurations to use the new EnvelopeGenerator.Server namespace, including changes in Program.cs and appsettings.json. Updated resource and file references to use the new EnvelopeGenerator.Server path, ensuring correct resource loading. Adjusted configuration options in Program.cs to use the new namespace for options classes, such as ApiOptions and PdfViewerOptions. Updated authentication scheme names and related constants to align with the new namespace structure. Revised comments and documentation to reflect the new namespace, ensuring clarity and consistency in the codebase.
72 lines
2.1 KiB
C#
72 lines
2.1 KiB
C#
namespace EnvelopeGenerator.Server.Client.Options;
|
|
|
|
public class PdfViewerOptions
|
|
{
|
|
public const string SectionName = "PdfViewer";
|
|
|
|
/// <summary>
|
|
/// Base scale for thumbnail rendering (0.2 - 1.5 recommended)
|
|
/// Higher values = better quality but slower rendering
|
|
/// Default: 0.75
|
|
/// </summary>
|
|
public double ThumbnailBaseScale { get; set; } = 0.75;
|
|
|
|
/// <summary>
|
|
/// Enable HiDPI/Retina support for thumbnails
|
|
/// Default: true
|
|
/// </summary>
|
|
public bool ThumbnailEnableHiDPI { get; set; } = true;
|
|
|
|
/// <summary>
|
|
/// Maximum device pixel ratio multiplier for thumbnails (1.0 - 3.0)
|
|
/// Caps DPR to avoid excessive memory usage on 4K+ displays
|
|
/// Default: 2.0
|
|
/// </summary>
|
|
public double ThumbnailMaxDPR { get; set; } = 2.0;
|
|
|
|
/// <summary>
|
|
/// Enable HiDPI/Retina support for main PDF canvas
|
|
/// Default: true
|
|
/// </summary>
|
|
public bool MainCanvasEnableHiDPI { get; set; } = true;
|
|
|
|
/// <summary>
|
|
/// Maximum device pixel ratio multiplier for main canvas (1.0 - 3.0)
|
|
/// Default: 2.0
|
|
/// </summary>
|
|
public double MainCanvasMaxDPR { get; set; } = 2.0;
|
|
|
|
/// <summary>
|
|
/// Enable smooth zoom transition (fade effect)
|
|
/// Default: true
|
|
/// </summary>
|
|
public bool EnableSmoothZoom { get; set; } = true;
|
|
|
|
/// <summary>
|
|
/// Zoom transition duration in milliseconds (50 - 500)
|
|
/// Default: 150
|
|
/// </summary>
|
|
public int ZoomTransitionDuration { get; set; } = 150;
|
|
|
|
/// <summary>
|
|
/// Opacity during rendering (0.0 - 1.0)
|
|
/// Lower values = more visible fade effect
|
|
/// Default: 0.85
|
|
/// </summary>
|
|
public double RenderingOpacity { get; set; } = 0.85;
|
|
|
|
/// <summary>
|
|
/// Delay between thumbnail renders in milliseconds (10 - 200)
|
|
/// Higher values = less browser stress, slower initial load
|
|
/// Default: 50
|
|
/// </summary>
|
|
public int ThumbnailRenderDelay { get; set; } = 50;
|
|
|
|
/// <summary>
|
|
/// Zoom step percentage (1 - 50)
|
|
/// Controls how much zoom changes per click or scroll
|
|
/// Default: 5 (5% per step)
|
|
/// </summary>
|
|
public int ZoomStepPercentage { get; set; } = 5;
|
|
}
|