Documentation
¶
Overview ¶
Package render provides pure Go PDF page rendering to images.
This package renders PDF pages to raster images without requiring external dependencies like CGO, Ghostscript, or system libraries. It implements a subset of PDF operators sufficient for rendering most document pages.
Supported features:
- Path operations (moveto, lineto, curveto, closepath, rectangle)
- Fill and stroke operations (winding and even-odd rules)
- Graphics state (transformations, line width, line cap/join, dash patterns)
- Color spaces (DeviceRGB, DeviceCMYK, DeviceGray)
- Text rendering (Tf, Tj, TJ, Tm with basic font support)
- Image XObjects (inline and external images)
- Clipping paths
Example usage:
renderer, err := render.NewRenderer(pdfBytes)
if err != nil {
return err
}
defer renderer.Close()
img, err := renderer.RenderPage(1, 150) // page 1 at 150 DPI
if err != nil {
return err
}
Index ¶
Constants ¶
View Source
const DefaultDPI = 150.0
DefaultDPI is the default resolution for rendering.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Renderer ¶
type Renderer struct {
// contains filtered or unexported fields
}
Renderer renders PDF pages to images.
func NewRenderer ¶
NewRenderer creates a new renderer from PDF bytes.
func NewRendererFromReader ¶
func NewRendererFromReader(rs io.ReadSeeker) (*Renderer, error)
NewRendererFromReader creates a new renderer from an io.ReadSeeker.
func (*Renderer) RenderPage ¶
RenderPage renders a page to an image at the specified DPI. pageNum is 1-indexed.
Click to show internal directories.
Click to hide internal directories.