Introduced multiple interfaces and DTOs to support a wide range of PDF-related operations, including attachment handling, conversion, validation, annotation, stamping, and metadata extraction. Key changes: - Added `DocumentServiceClientOptions` for HTTP client config. - Introduced `IPdfAttachmentClient` for attachment operations. - Added `IPdfConversionClient` for PDF/A conversion (marked obsolete). - Added `IPdfOperationsClient` for merge, annotate, and stamp ops. - Introduced `IPdfValidationClient` for PDF and PDF/A validation. - Added `ISwissQrCodeClient` for Swiss QR Code extraction. - Added `IZugferdClient` for ZUGFeRD detection and extraction. - Created request DTOs for Base64-encoded operations. - Added enums for annotation, stamp, and validation configurations. These changes provide a flexible and extensible foundation for interacting with PDF documents, supporting both multipart and Base64-encoded inputs, and ensuring type safety with enums and records.
32 lines
967 B
C#
32 lines
967 B
C#
namespace DocumentService.Client.Models.Requests;
|
|
|
|
/// <summary>
|
|
/// Request DTO for converting a standard PDF to PDF/A format (Base64 JSON)
|
|
/// </summary>
|
|
public record ConvertToPdfARequest
|
|
{
|
|
/// <summary>
|
|
/// PDF document encoded as Base64 string
|
|
/// </summary>
|
|
/// <example>JVBERi0xLjQKJeLjz9MKMSAwIG9iago8PC9UeXBlL0NhdGFsb2c...</example>
|
|
public required string Base64Pdf { get; init; }
|
|
|
|
/// <summary>
|
|
/// Target PDF/A conformance level. Defaults to "PDF/A-3b".
|
|
/// </summary>
|
|
/// <example>PDF/A-3b</example>
|
|
public string? PdfALevel { get; init; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// Request DTO for converting a PDF/A document back to standard PDF (Base64 JSON)
|
|
/// </summary>
|
|
public record ConvertFromPdfARequest
|
|
{
|
|
/// <summary>
|
|
/// PDF/A document encoded as Base64 string
|
|
/// </summary>
|
|
/// <example>JVBERi0xLjQKJeLjz9MKMSAwIG9iago8PC9UeXBlL0NhdGFsb2c...</example>
|
|
public required string Base64Pdf { get; init; }
|
|
}
|