Class PdfRequestExtensions
Extension methods that execute a CobaltPdf.Requests.PdfRequest using a WebKit CobaltEngine instance.
public static class PdfRequestExtensions
- Inheritance
-
PdfRequestExtensions
- Inherited Members
Remarks
These extensions live in the CobaltPDF.WebKit package (not
CobaltPDF.Requests) because they depend on CobaltEngine.
Install CobaltPDF.Requests on the client and CobaltPDF.WebKit
on the rendering service — both share the same CobaltPdf.Requests.PdfRequest
wire model, so a client can target either the Chromium or the WebKit
rendering service interchangeably. This is the WebKit mirror of the
identically-shaped extension in the Chromium CobaltPDF package.
Methods
ExecuteAsync(PdfRequest, CobaltEngine, CancellationToken)
Executes a CobaltPdf.Requests.PdfRequest against the supplied engine,
mapping all request properties to the CobaltPdf.WebKit fluent API internally.
public static Task<PdfDocument> ExecuteAsync(this PdfRequest request, CobaltEngine engine, CancellationToken cancellationToken = default)
Parameters
requestPdfRequestThe populated request model.
engineCobaltEngineThe WebKit CobaltEngine instance to render with.
cancellationTokenCancellationTokenOptional cancellation token.
Returns
- Task<PdfDocument>
The rendered PdfDocument.
Examples
// Azure Function handler
var request = await req.ReadFromJsonAsync<PdfRequest>();
var pdf = await request.ExecuteAsync(_renderer, cancellationToken);
Exceptions
- ArgumentException
Thrown when neither CobaltPdf.Requests.PdfRequest.Url nor CobaltPdf.Requests.PdfRequest.Html is provided, or when both are provided simultaneously.