Documentation
¶
Overview ¶
Package gotenberg provides a client for the Gotenberg service. It offers a convenient API for converting HTML and URLs to PDF documents.
Index ¶
- Constants
- Variables
- type Client
- type Request
- func (r *Request) Bool(fieldName string, value bool) *Request
- func (r *Request) File(key, filename string, content io.Reader) *Request
- func (r *Request) Float(fieldName string, value float64) *Request
- func (r *Request) Header(key, value string) *Request
- func (r *Request) Margins(top, right, bottom, left float64) *Request
- func (r *Request) OutputFilename(filename string) *Request
- func (r *Request) PaperSize(width, height float64) *Request
- func (r *Request) PaperSizeA4() *Request
- func (r *Request) PaperSizeA6() *Request
- func (r *Request) PaperSizeLetter() *Request
- func (r *Request) Param(key, value string) *Request
- func (r *Request) Send() (*Response, error)
- func (r *Request) WebhookErrorURL(url, method string) *Request
- func (r *Request) WebhookHeader(key, value string) *Request
- func (r *Request) WebhookURL(url, method string) *Request
- type Response
Constants ¶
const ( ConvertHTML = "/forms/chromium/convert/html" ConvertURL = "/forms/chromium/convert/url" )
const ( FieldSinglePage = "singlePage" FieldPaperWidth = "paperWidth" FieldPaperHeight = "paperHeight" FieldMarginTop = "marginTop" FieldMarginBottom = "marginBottom" FieldMarginLeft = "marginLeft" FieldMarginRight = "marginRight" FieldPreferCSSPageSize = "preferCssPageSize" FieldGenerateDocumentOutline = "generateDocumentOutline" FieldGenerateTaggedPDF = "generateTaggedPdf" FieldPrintBackground = "printBackground" FieldOmitBackground = "omitBackground" FieldLandscape = "landscape" FieldScale = "scale" FieldNativePageRanges = "nativePageRanges" )
const ( HeaderWebhookURL = "Gotenberg-Webhook-Url" HeaderWebhookErrorURL = "Gotenberg-Webhook-Error-Url" HeaderWebhookMethod = "Gotenberg-Webhook-Method" HeaderWebhookErrorMethod = "Gotenberg-Webhook-Error-Method" HeaderWebhookExtraHTTPHeaders = "Gotenberg-Webhook-Extra-Http-Headers" HeaderOutputFilename = "Gotenberg-Output-Filename" HeaderGotenbergTrace = "Gotenberg-Trace" )
const ( FieldURL = "url" FieldFiles = "files" FileIndexHTML = "index.html" FileHeaderHTML = "header.html" FileStylesCSS = "styles.css" )
Variables ¶
var ( PaperSizeLetter = [2]float64{8.5, 11} PaperSizeLegal = [2]float64{8.5, 14} PaperSizeTabloid = [2]float64{11, 17} PaperSizeLedger = [2]float64{17, 11} PaperSizeA0 = [2]float64{33.1, 46.8} PaperSizeA1 = [2]float64{23.4, 33.1} PaperSizeA2 = [2]float64{16.54, 23.4} PaperSizeA3 = [2]float64{11.7, 16.54} PaperSizeA4 = [2]float64{8.27, 11.7} PaperSizeA5 = [2]float64{5.83, 8.27} PaperSizeA6 = [2]float64{4.13, 5.83} )
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client struct {
*httpclient.Client
}
Client is a Gotenberg HTTP client that wraps the base HTTP client with Gotenberg-specific functionality for document conversion.
func NewClient ¶
NewClient creates a new Gotenberg client with the given HTTP client and base URL. Returns an error if the base URL is invalid.
func (*Client) ConvertHTML ¶ added in v1.0.1
ConvertHTML creates a request to convert HTML content to PDF. The html parameter should contain the HTML content to be converted.
type Request ¶ added in v1.1.1
type Request struct {
// contains filtered or unexported fields
}
Request represents a Gotenberg conversion request builder. It wraps the underlying multipart request and provides Gotenberg-specific methods.
func (*Request) Bool ¶ added in v1.1.1
Bool adds a boolean form parameter to the conversion request.
func (*Request) Float ¶ added in v1.1.1
Float adds a float64 form parameter to the conversion request.
func (*Request) Margins ¶ added in v1.1.1
Margins sets the page margins for the PDF in inches. Parameters are in order: top, right, bottom, left.
func (*Request) OutputFilename ¶ added in v1.3.1
OutputFilename sets the output filename for the generated PDF.
func (*Request) PaperSize ¶ added in v1.1.1
PaperSize sets the paper size for the PDF using width and height in inches.
func (*Request) PaperSizeA4 ¶ added in v1.1.1
PaperSizeA4 sets the paper size to A4 format.
func (*Request) PaperSizeA6 ¶ added in v1.5.0
PaperSizeA6 sets the paper size to A6 format.
func (*Request) PaperSizeLetter ¶ added in v1.1.1
PaperSizeLetter sets the paper size to Letter format.
func (*Request) Send ¶ added in v1.1.1
Send executes the conversion request and returns the response. Returns an error if the request fails or the conversion cannot be completed.
func (*Request) WebhookErrorURL ¶ added in v1.4.0
WebhookErrorURL sets the webhook URL and HTTP method for failed conversions.
func (*Request) WebhookHeader ¶ added in v1.4.6
WebhookHeader adds a custom header to be sent with webhook requests. Multiple headers can be added by calling this method multiple times.
func (*Request) WebhookURL ¶ added in v1.4.0
WebhookURL sets the webhook URL and HTTP method for successful conversions.