libspectre 0.2.11
Functions
spectre-render-context.c File Reference
#include <stdlib.h>
#include "spectre-render-context.h"
#include "spectre-page.h"
#include "spectre-private.h"
#include "spectre-utils.h"

Functions

SpectreRenderContextspectre_render_context_new (void)
 
void spectre_render_context_free (SpectreRenderContext *rc)
 
void spectre_render_context_set_scale (SpectreRenderContext *rc, double x_scale, double y_scale)
 
void spectre_render_context_get_scale (SpectreRenderContext *rc, double *x_scale, double *y_scale)
 
void spectre_render_context_set_rotation (SpectreRenderContext *rc, unsigned int rotation)
 
unsigned int spectre_render_context_get_rotation (SpectreRenderContext *rc)
 
void spectre_render_context_set_resolution (SpectreRenderContext *rc, double x_dpi, double y_dpi)
 
void spectre_render_context_get_resolution (SpectreRenderContext *rc, double *x_dpi, double *y_dpi)
 
void spectre_render_context_set_page_size (SpectreRenderContext *rc, int width, int height)
 
void spectre_render_context_get_page_size (SpectreRenderContext *rc, int *width, int *height)
 
void spectre_render_context_set_use_platform_fonts (SpectreRenderContext *rc, int use_platform_fonts)
 
int spectre_render_context_get_use_platform_fonts (SpectreRenderContext *rc)
 
void spectre_render_context_set_antialias_bits (SpectreRenderContext *rc, int graphics_bits, int text_bits)
 
void spectre_render_context_get_antialias_bits (SpectreRenderContext *rc, int *graphics_bits, int *text_bits)
 

Function Documentation

◆ spectre_render_context_free()

void spectre_render_context_free ( SpectreRenderContext rc)

Frees a rendering context

Parameters
rcThe rendering context to free

◆ spectre_render_context_get_antialias_bits()

void spectre_render_context_get_antialias_bits ( SpectreRenderContext rc,
int *  graphics_bits,
int *  text_bits 
)

Gets the antialias options for graphics and texts

Parameters
rcThe rendering context to query
graphics_bitsThe number of antialias bits to use for graphics will be stored here
text_bitsThe number of antialias bits to use for text will be stored here

◆ spectre_render_context_get_page_size()

void spectre_render_context_get_page_size ( SpectreRenderContext rc,
int *  width,
int *  height 
)

Gets the page size in pixels

Parameters
rcThe rendering context to query
widththe width of the page will be stored here, or NULL
heightthe height of the page will be stored here, or NULL

◆ spectre_render_context_get_resolution()

void spectre_render_context_get_resolution ( SpectreRenderContext rc,
double *  x_dpi,
double *  y_dpi 
)

Gets the resolution

Parameters
rcThe rendering context to query
x_dpithe horizontal resolution will be stored here, or NULL
y_dpithe vertical resolution will be stored here, or NULL

◆ spectre_render_context_get_rotation()

unsigned int spectre_render_context_get_rotation ( SpectreRenderContext rc)

Gets the rotation

Parameters
rcThe rendering context to query

◆ spectre_render_context_get_scale()

void spectre_render_context_get_scale ( SpectreRenderContext rc,
double *  x_scale,
double *  y_scale 
)

Gets the scale

Parameters
rcThe rendering context to query
x_scaleThe scale factor for the X dimension will be stored here, or NULL
y_scaleThe scale factor for the Y dimension will be stored here, or NULL

◆ spectre_render_context_get_use_platform_fonts()

int spectre_render_context_get_use_platform_fonts ( SpectreRenderContext rc)

Gets whether to use the platform fonts when rendering or not

Parameters
rcThe rendering context to query

◆ spectre_render_context_new()

SpectreRenderContext * spectre_render_context_new ( void  )

Creates a rendering context

◆ spectre_render_context_set_antialias_bits()

void spectre_render_context_set_antialias_bits ( SpectreRenderContext rc,
int  graphics_bits,
int  text_bits 
)

Sets the antialias options for graphics and texts. The default is 4 for graphics and 2 for text

Parameters
rcThe rendering context to modify
graphics_bitsThe number of antialias bits to use for graphics. Typically 4 for antialias and 1 for no antialias
text_bitsThe number of antialias bits to use for text. Typically 2 for antialias and 1 for no antialias

◆ spectre_render_context_set_page_size()

void spectre_render_context_set_page_size ( SpectreRenderContext rc,
int  width,
int  height 
)

Sets the page size in pixels. Rotation shouldn't be considered, the page size will be automatically adjusted when rendering according to the rotation selected. Note that the page size doesn't affect the scale. If no page size is given the page bounding box will be used, or the rectangle given when using spectre_page_render_slice

Parameters
rcThe rendering context to modify
widththe width of the page
heightthe height of the page

◆ spectre_render_context_set_resolution()

void spectre_render_context_set_resolution ( SpectreRenderContext rc,
double  x_dpi,
double  y_dpi 
)

Sets the resolution. The default is 72 for both directions

Parameters
rcThe rendering context to modify
x_dpithe horizontal resolution to set
y_dpithe vertical resolution to set

◆ spectre_render_context_set_rotation()

void spectre_render_context_set_rotation ( SpectreRenderContext rc,
unsigned int  rotation 
)

Sets the rotation. The default is 0

Parameters
rcThe rendering context to modify
rotationThe rotation to use when rendering. Usually 0, 90, 180 or 270

◆ spectre_render_context_set_scale()

void spectre_render_context_set_scale ( SpectreRenderContext rc,
double  x_scale,
double  y_scale 
)

Sets the scale. The default is 1

Parameters
rcThe rendering context to modify
x_scaleThe scale factor for the X dimension to use when rendering. 2 is twice as big
y_scaleThe scale factor for the Y dimension to use when rendering. 2 is twice as big

◆ spectre_render_context_set_use_platform_fonts()

void spectre_render_context_set_use_platform_fonts ( SpectreRenderContext rc,
int  use_platform_fonts 
)

Sets whether to use the platform fonts when rendering or not. The default is TRUE

Parameters
rcThe rendering context to modify
use_platform_fontsshould platform fonts be used when rendering?