Files
DocumentService/DocumentService.Application/Common/DTOs/PdfSignatureAppearanceDto.cs
TekH 5e7652ef88 Refactor and rename to DocumentService
Renamed namespaces and projects from DocumentOperator to DocumentService, updating all references accordingly. Refactored PdfSignatureAppearanceDto and related enums to use properties with init accessors for improved clarity. Removed and re-added IPkcs11SelfTestStatusProvider with updated namespace. Simplified dependency injection by removing DocumentOperatorApplication registration. Updated appsettings.json with a specific AssetsRootPath. Incremented version numbers in project files for a new release. Introduced PdfSignatureClient and IPdfSignatureClient for PDF digital-signing operations. Updated project files to use newer Microsoft.Extensions package versions. Removed all DocumentOperator references, completing the transition to DocumentService. Added new DTOs and enums for PDF signature options and appearance.
2026-10-25 18:49:08 +01:00

172 lines
3.1 KiB
C#

namespace DocumentService.Application.Common.DTOs;
/// <summary>
///
/// </summary>
public enum PdfSignatureCoordinateUnit
{
/// <summary>
///
/// </summary>
Point = 0,
/// <summary>
///
/// </summary>
Inch = 1
}
/// <summary>
///
/// </summary>
public enum PdfSignatureCoordinateOrigin
{
/// <summary>
///
/// </summary>
BottomLeft = 0,
/// <summary>
///
/// </summary>
TopLeft = 1
}
/// <summary>
///
/// </summary>
public sealed record PdfSignatureAppearanceDto
{
/// <summary>
///
/// </summary>
public int PageNumber { get; init; }
/// <summary>
///
/// </summary>
public double Left { get; init; }
/// <summary>
///
/// </summary>
public double Bottom { get; init; }
/// <summary>
///
/// </summary>
public double Width { get; init; }
/// <summary>
///
/// </summary>
public double Height { get; init; }
/// <summary>
///
/// </summary>
public bool ShowLabels { get; init; }
/// <summary>
///
/// </summary>
public bool ShowName { get; init; }
/// <summary>
///
/// </summary>
public bool ShowDate { get; init; }
/// <summary>
///
/// </summary>
public bool ShowReason { get; init; }
/// <summary>
///
/// </summary>
public bool ShowLocation { get; init; }
/// <summary>
///
/// </summary>
public bool ShowDistinguishedName { get; init; }
/// <summary>
///
/// </summary>
public string DateTimeFormat { get; init; } = "dd.MM.yyyy HH:mm:ss zzz";
/// <summary>
///
/// </summary>
public PdfSignatureCoordinateUnit CoordinateUnit { get; init; } = PdfSignatureCoordinateUnit.Point;
/// <summary>
///
/// </summary>
public PdfSignatureCoordinateOrigin CoordinateOrigin { get; init; } = PdfSignatureCoordinateOrigin.BottomLeft;
/// <summary>
///
/// </summary>
public FontDto Font { get; init; } = new();
/// <summary>
///
/// </summary>
public sealed record FontDto
{
/// <summary>
///
/// </summary>
public string FamilyName { get; init; } = "Helvetica";
/// <summary>
///
/// </summary>
public float Size { get; init; } = 10;
/// <summary>
///
/// </summary>
public bool IsBold { get; init; }
/// <summary>
///
/// </summary>
public bool IsItalic { get; init; }
/// <summary>
///
/// </summary>
public bool IsUnderline { get; init; }
/// <summary>
///
/// </summary>
public RgbaColorDto Color { get; init; } = new();
}
/// <summary>
///
/// </summary>
public sealed record RgbaColorDto
{
/// <summary>
///
/// </summary>
public double R { get; init; }
/// <summary>
///
/// </summary>
public double G { get; init; }
/// <summary>
///
/// </summary>
public double B { get; init; }
}
}