Refactored `Pkcs11Options` by removing `DefaultCertificationLevel` and improving property documentation. Replaced `VisualSignature` in `PdfSignOptionsDto` with `Appearance` using the new `PdfSignatureAppearanceDto` class, which encapsulates signature appearance details, including font and color settings. Enhanced `PdfSignatureCertificationLevel` enum with more descriptive values and added XML documentation. Updated `IPdfDigitalSignatureService` to support optional signature images and removed redundant methods. Refactored `PdfDigitalSignatureService` to streamline appearance handling, validate inputs, and improve maintainability. Removed unused methods and added support for `PdfSignatureAppearanceDto`. Simplified `PdfSignatureController` by consolidating form properties into `PdfSignOptionsDto`. Improved code readability and flexibility while removing redundant logic.
62 lines
1.8 KiB
C#
62 lines
1.8 KiB
C#
namespace EnvelopeGenerator.Application.Common.Dto;
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
/// <param name="ImageBytes"></param>
|
|
/// <param name="PageNumber"></param>
|
|
/// <param name="Left"></param>
|
|
/// <param name="Bottom"></param>
|
|
/// <param name="Width"></param>
|
|
/// <param name="Height"></param>
|
|
/// <param name="ShowLabels"></param>
|
|
/// <param name="ShowName"></param>
|
|
/// <param name="ShowDate"></param>
|
|
/// <param name="ShowReason"></param>
|
|
/// <param name="ShowLocation"></param>
|
|
/// <param name="ShowDistinguishedName"></param>
|
|
/// <param name="DateTimeFormat"></param>
|
|
public sealed record PdfSignatureAppearanceDto(
|
|
int PageNumber,
|
|
double Left,
|
|
double Bottom,
|
|
double Width,
|
|
double Height,
|
|
bool ShowLabels = false,
|
|
bool ShowName = false,
|
|
bool ShowDate = false,
|
|
bool ShowReason = false,
|
|
bool ShowLocation = false,
|
|
bool ShowDistinguishedName = false,
|
|
string DateTimeFormat = "dd.MM.yyyy HH:mm:ss zzz")
|
|
{
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
/// <param name="FamilyName"></param>
|
|
/// <param name="Size"></param>
|
|
/// <param name="IsBold"></param>
|
|
/// <param name="IsItalic"></param>
|
|
/// <param name="IsUnderline"></param>
|
|
public sealed record FontDto(string FamilyName = "Helvetica", float Size = 10, bool IsBold = false, bool IsItalic = false, bool IsUnderline = false)
|
|
{
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
public RgbaColorDto Color { get; init; } = new();
|
|
}
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
/// <param name="R"></param>
|
|
/// <param name="G"></param>
|
|
/// <param name="B"></param>
|
|
public sealed record RgbaColorDto(double R = 0, double G = 0, double B = 0);
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
public FontDto Font { get; init; } = new();
|
|
}
|