Introduced new models (`SignatureDto`, `SignatureCaptureDto`, `EnvelopeReceiverDto`) to support a signature-based workflow. Added services for handling API interactions (`SignatureService`, `AuthService`, `DocumentService`, `EnvelopeReceiverService`, `SignatureCacheService`). Enhanced configuration with `ApiOptions` and `PdfViewerOptions`. Integrated DevExpress features with custom data connection providers, in-memory report storage, and font loading utilities. Marked `AnnotationDto` and `AnnotationService` as `[Obsolete]` in favor of newer implementations. Added detailed documentation for coordinate systems, unit conversions, and usage scenarios.
72 lines
2.1 KiB
C#
72 lines
2.1 KiB
C#
namespace EnvelopeGenerator.WebUI.Client.Options;
|
|
|
|
public class PdfViewerOptions
|
|
{
|
|
public const string SectionName = "PdfViewerOptions";
|
|
|
|
/// <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;
|
|
}
|