cairo

package
v0.0.0-...-7a6ce3e Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 8, 2014 License: ISC Imports: 5 Imported by: 7

Documentation

Overview

Package cairo implements Go bindings for Cairo. Supports version 1.10 and later.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Antialias

type Antialias int

Antialias is a representation of Cairo's cairo_antialias_t.

const (
	ANTIALIAS_DEFAULT  Antialias = C.CAIRO_ANTIALIAS_DEFAULT
	ANTIALIAS_NONE     Antialias = C.CAIRO_ANTIALIAS_NONE
	ANTIALIAS_GRAY     Antialias = C.CAIRO_ANTIALIAS_GRAY
	ANTIALIAS_SUBPIXEL Antialias = C.CAIRO_ANTIALIAS_SUBPIXEL
)

type Content

type Content int

Content is a representation of Cairo's cairo_content_t.

const (
	CONTENT_COLOR       Content = C.CAIRO_CONTENT_COLOR
	CONTENT_ALPHA       Content = C.CAIRO_CONTENT_ALPHA
	CONTENT_COLOR_ALPHA Content = C.CAIRO_CONTENT_COLOR_ALPHA
)

type Context

type Context struct {
	// contains filtered or unexported fields
}

Context is a representation of Cairo's cairo_t.

func Create

func Create(target *Surface) *Context

Create is a wrapper around cairo_create().

func (*Context) Arc

func (v *Context) Arc(xc, yc, radius, angle1, angle2 float64)

Arc is a wrapper around cairo_arc().

func (*Context) ArcNegative

func (v *Context) ArcNegative(xc, yc, radius, angle1, angle2 float64)

ArcNegative is a wrapper around cairo_arc_negative().

func (*Context) Clip

func (v *Context) Clip()

Clip is a wrapper around cairo_clip().

func (*Context) ClipExtents

func (v *Context) ClipExtents() (x1, y1, x2, y2 float64)

ClipExtents is a wrapper around cairo_clip_extents().

func (*Context) ClipPreserve

func (v *Context) ClipPreserve()

ClipPreserve is a wrapper around cairo_clip_preserve().

func (*Context) ClosePath

func (v *Context) ClosePath()

ClosePath is a wrapper around cairo_close_path().

func (*Context) CopyPage

func (v *Context) CopyPage()

CopyPage is a wrapper around cairo_copy_page().

func (*Context) CurveTo

func (v *Context) CurveTo(x1, y1, x2, y2, x3, y3 float64)

CurveTo is a wrapper around cairo_curve_to().

func (*Context) Fill

func (v *Context) Fill()

Fill is a wrapper around cairo_fill().

func (*Context) FillExtents

func (v *Context) FillExtents() (x1, y1, x2, y2 float64)

FillExtents is a wrapper around cairo_fill_extents().

func (*Context) FillPreserve

func (v *Context) FillPreserve()

FillPreserve is a wrapper around cairo_fill_preserve().

func (*Context) GetAntialias

func (v *Context) GetAntialias() Antialias

GetAntialias is a wrapper around cairo_get_antialias().

func (*Context) GetCurrentPoint

func (v *Context) GetCurrentPoint() (x, y float64)

GetCurrentPoint is a wrapper around cairo_get_current_point().

func (*Context) GetDash

func (v *Context) GetDash() (dashes []float64, offset float64)

GetDash is a wrapper around cairo_get_dash().

func (*Context) GetDashCount

func (v *Context) GetDashCount() int

GetDashCount is a wrapper around cairo_get_dash_count().

func (*Context) GetFillRule

func (v *Context) GetFillRule() FillRule

GetFillRule is a wrapper around cairo_get_fill_rule().

func (*Context) GetGroupTarget

func (v *Context) GetGroupTarget() *Surface

GetGroupTarget is a wrapper around cairo_get_group_target().

func (*Context) GetLineCap

func (v *Context) GetLineCap() LineCap

GetLineCap is a wrapper around cairo_get_line_cap().

func (*Context) GetLineJoin

func (v *Context) GetLineJoin() LineJoin

GetLineJoin is a wrapper around cairo_get_line_join().

func (*Context) GetLineWidth

func (v *Context) GetLineWidth() float64

GetLineWidth is a wrapper cairo_get_line_width().

func (*Context) GetMiterLimit

func (v *Context) GetMiterLimit() float64

GetMiterLimit is a wrapper around cairo_get_miter_limit().

func (*Context) GetOperator

func (v *Context) GetOperator() Operator

GetOperator is a wrapper around cairo_get_operator().

func (*Context) GetTarget

func (v *Context) GetTarget() *Surface

GetTarget is a wrapper around cairo_get_target().

func (*Context) GetTolerance

func (v *Context) GetTolerance() float64

GetTolerance is a wrapper around cairo_get_tolerance().

func (*Context) InClip

func (v *Context) InClip(x, y float64) bool

InClip is a wrapper around cairo_in_clip().

func (*Context) InFill

func (v *Context) InFill(x, y float64) bool

InFill is a wrapper around cairo_in_fill().

func (*Context) InStroke

func (v *Context) InStroke(x, y float64) bool

InStroke is a wrapper around cairo_in_stroke().

func (*Context) LineTo

func (v *Context) LineTo(x, y float64)

LineTo is a wrapper around cairo_line_to().

func (*Context) MaskSurface

func (v *Context) MaskSurface(surface *Surface, surfaceX, surfaceY float64)

MaskSurface is a wrapper around cairo_mask_surface().

func (*Context) MoveTo

func (v *Context) MoveTo(x, y float64)

MoveTo is a wrapper around cairo_move_to().

func (*Context) Native

func (v *Context) Native() uintptr

Native returns a pointer to the underlying cairo_t.

func (*Context) NewPath

func (v *Context) NewPath()

NewPath is a wrapper around cairo_new_path().

func (*Context) Paint

func (v *Context) Paint()

Paint is a wrapper around cairo_paint().

func (*Context) PaintWithAlpha

func (v *Context) PaintWithAlpha(alpha float64)

PaintWithAlpha is a wrapper around cairo_paint_with_alpha().

func (*Context) PopGroupToSource

func (v *Context) PopGroupToSource()

PopGroupToSource is a wrapper around cairo_pop_group_to_source().

func (*Context) PushGroup

func (v *Context) PushGroup()

PushGroup is a wrapper around cairo_push_group().

func (*Context) PushGroupWithContent

func (v *Context) PushGroupWithContent(content Content)

PushGroupWithContent is a wrapper around cairo_push_group_with_content().

func (*Context) Rectangle

func (v *Context) Rectangle(x, y, w, h float64)

Rectangle is a wrapper around cairo_rectangle().

func (*Context) ResetClip

func (v *Context) ResetClip()

ResetClip is a wrapper around cairo_reset_clip().

func (*Context) Restore

func (v *Context) Restore()

Restore is a wrapper around cairo_restore().

func (*Context) Save

func (v *Context) Save()

Save is a wrapper around cairo_save().

func (*Context) SetAntialias

func (v *Context) SetAntialias(antialias Antialias)

SetAntialias is a wrapper around cairo_set_antialias().

func (*Context) SetDash

func (v *Context) SetDash(dashes []float64, offset float64)

SetDash is a wrapper around cairo_set_dash().

func (*Context) SetFillRule

func (v *Context) SetFillRule(fillRule FillRule)

SetFillRule is a wrapper around cairo_set_fill_rule().

func (*Context) SetLineCap

func (v *Context) SetLineCap(lineCap LineCap)

SetLineCap is a wrapper around cairo_set_line_cap().

func (*Context) SetLineJoin

func (v *Context) SetLineJoin(lineJoin LineJoin)

SetLineJoin is a wrapper around cairo_set_line_join().

func (*Context) SetLineWidth

func (v *Context) SetLineWidth(width float64)

SetLineWidth is a wrapper around cairo_set_line_width().

func (*Context) SetMiterLimit

func (v *Context) SetMiterLimit(limit float64)

SetMiterLimit is a wrapper around cairo_set_miter_limit().

func (*Context) SetOperator

func (v *Context) SetOperator(op Operator)

SetOperator is a wrapper around cairo_set_operator().

func (*Context) SetSourceRGB

func (v *Context) SetSourceRGB(red, green, blue float64)

SetSourceRGB is a wrapper around cairo_set_source_rgb().

func (*Context) SetSourceRGBA

func (v *Context) SetSourceRGBA(red, green, blue, alpha float64)

SetSourceRGBA is a wrapper around cairo_set_source_rgba().

func (*Context) SetSourceSurface

func (v *Context) SetSourceSurface(surface *Surface, x, y float64)

SetSourceSurface is a wrapper around cairo_set_source_surface().

func (*Context) SetTolerance

func (v *Context) SetTolerance(tolerance float64)

SetTolerance is a wrapper around cairo_set_tolerance().

func (*Context) ShowPage

func (v *Context) ShowPage()

ShowPage is a wrapper around cairo_show_page().

func (*Context) Status

func (v *Context) Status() Status

Status is a wrapper around cairo_status().

func (*Context) Stroke

func (v *Context) Stroke()

Stroke is a wrapper around cairo_stroke().

func (*Context) StrokeExtents

func (v *Context) StrokeExtents() (x1, y1, x2, y2 float64)

StrokeExtents is a wrapper around cairo_stroke_extents().

func (*Context) StrokePreserve

func (v *Context) StrokePreserve()

StrokePreserve is a wrapper around cairo_stroke_preserve().

type FillRule

type FillRule int

FillRule is a representation of Cairo's cairo_fill_rule_t.

const (
	FILL_RULE_WINDING  FillRule = C.CAIRO_FILL_RULE_WINDING
	FILL_RULE_EVEN_ODD FillRule = C.CAIRO_FILL_RULE_EVEN_ODD
)

type LineCap

type LineCap int

LineCap is a representation of Cairo's cairo_line_cap_t.

const (
	LINE_CAP_BUTT   LineCap = C.CAIRO_LINE_CAP_BUTT
	LINE_CAP_ROUND  LineCap = C.CAIRO_LINE_CAP_ROUND
	LINE_CAP_SQUARE LineCap = C.CAIRO_LINE_CAP_SQUARE
)

type LineJoin

type LineJoin int

LineJoin is a representation of Cairo's cairo_line_join_t.

const (
	LINE_JOIN_MITER LineJoin = C.CAIRO_LINE_JOIN_MITER
	LINE_JOIN_ROUND LineJoin = C.CAIRO_LINE_JOIN_ROUND
	LINE_JOIN_BEVEL LineJoin = C.CAIRO_LINE_JOIN_BEVEL
)

type MimeType

type MimeType string

MimeType is a representation of Cairo's CAIRO_MIME_TYPE_* preprocessor constants.

const (
	MIME_TYPE_JP2       MimeType = "image/jp2"
	MIME_TYPE_JPEG      MimeType = "image/jpeg"
	MIME_TYPE_PNG       MimeType = "image/png"
	MIME_TYPE_URI       MimeType = "image/x-uri"
	MIME_TYPE_UNIQUE_ID MimeType = "application/x-cairo.uuid"
)

type Operator

type Operator int

Operator is a representation of Cairo's cairo_operator_t.

const (
	OPERATOR_CLEAR          Operator = C.CAIRO_OPERATOR_CLEAR
	OPERATOR_SOURCE         Operator = C.CAIRO_OPERATOR_SOURCE
	OPERATOR_OVER           Operator = C.CAIRO_OPERATOR_OVER
	OPERATOR_IN             Operator = C.CAIRO_OPERATOR_IN
	OPERATOR_OUT            Operator = C.CAIRO_OPERATOR_OUT
	OPERATOR_ATOP           Operator = C.CAIRO_OPERATOR_ATOP
	OPERATOR_DEST           Operator = C.CAIRO_OPERATOR_DEST
	OPERATOR_DEST_OVER      Operator = C.CAIRO_OPERATOR_DEST_OVER
	OPERATOR_DEST_IN        Operator = C.CAIRO_OPERATOR_DEST_IN
	OPERATOR_DEST_OUT       Operator = C.CAIRO_OPERATOR_DEST_OUT
	OPERATOR_DEST_ATOP      Operator = C.CAIRO_OPERATOR_DEST_ATOP
	OPERATOR_XOR            Operator = C.CAIRO_OPERATOR_XOR
	OPERATOR_ADD            Operator = C.CAIRO_OPERATOR_ADD
	OPERATOR_SATURATE       Operator = C.CAIRO_OPERATOR_SATURATE
	OPERATOR_MULTIPLY       Operator = C.CAIRO_OPERATOR_MULTIPLY
	OPERATOR_SCREEN         Operator = C.CAIRO_OPERATOR_SCREEN
	OPERATOR_OVERLAY        Operator = C.CAIRO_OPERATOR_OVERLAY
	OPERATOR_DARKEN         Operator = C.CAIRO_OPERATOR_DARKEN
	OPERATOR_LIGHTEN        Operator = C.CAIRO_OPERATOR_LIGHTEN
	OPERATOR_COLOR_DODGE    Operator = C.CAIRO_OPERATOR_COLOR_DODGE
	OPERATOR_COLOR_BURN     Operator = C.CAIRO_OPERATOR_COLOR_BURN
	OPERATOR_HARD_LIGHT     Operator = C.CAIRO_OPERATOR_HARD_LIGHT
	OPERATOR_SOFT_LIGHT     Operator = C.CAIRO_OPERATOR_SOFT_LIGHT
	OPERATOR_DIFFERENCE     Operator = C.CAIRO_OPERATOR_DIFFERENCE
	OPERATOR_EXCLUSION      Operator = C.CAIRO_OPERATOR_EXCLUSION
	OPERATOR_HSL_HUE        Operator = C.CAIRO_OPERATOR_HSL_HUE
	OPERATOR_HSL_SATURATION Operator = C.CAIRO_OPERATOR_HSL_SATURATION
	OPERATOR_HSL_COLOR      Operator = C.CAIRO_OPERATOR_HSL_COLOR
	OPERATOR_HSL_LUMINOSITY Operator = C.CAIRO_OPERATOR_HSL_LUMINOSITY
)

type Status

type Status int

Status is a representation of Cairo's cairo_status_t.

const (
	STATUS_SUCCESS                   Status = C.CAIRO_STATUS_SUCCESS
	STATUS_NO_MEMORY                 Status = C.CAIRO_STATUS_NO_MEMORY
	STATUS_INVALID_RESTORE           Status = C.CAIRO_STATUS_INVALID_RESTORE
	STATUS_INVALID_POP_GROUP         Status = C.CAIRO_STATUS_INVALID_POP_GROUP
	STATUS_NO_CURRENT_POINT          Status = C.CAIRO_STATUS_NO_CURRENT_POINT
	STATUS_INVALID_MATRIX            Status = C.CAIRO_STATUS_INVALID_MATRIX
	STATUS_INVALID_STATUS            Status = C.CAIRO_STATUS_INVALID_STATUS
	STATUS_NULL_POINTER              Status = C.CAIRO_STATUS_NULL_POINTER
	STATUS_INVALID_STRING            Status = C.CAIRO_STATUS_INVALID_STRING
	STATUS_INVALID_PATH_DATA         Status = C.CAIRO_STATUS_INVALID_PATH_DATA
	STATUS_READ_ERROR                Status = C.CAIRO_STATUS_READ_ERROR
	STATUS_WRITE_ERROR               Status = C.CAIRO_STATUS_WRITE_ERROR
	STATUS_SURFACE_FINISHED          Status = C.CAIRO_STATUS_SURFACE_FINISHED
	STATUS_SURFACE_TYPE_MISMATCH     Status = C.CAIRO_STATUS_SURFACE_TYPE_MISMATCH
	STATUS_PATTERN_TYPE_MISMATCH     Status = C.CAIRO_STATUS_PATTERN_TYPE_MISMATCH
	STATUS_INVALID_CONTENT           Status = C.CAIRO_STATUS_INVALID_CONTENT
	STATUS_INVALID_FORMAT            Status = C.CAIRO_STATUS_INVALID_FORMAT
	STATUS_INVALID_VISUAL            Status = C.CAIRO_STATUS_INVALID_VISUAL
	STATUS_FILE_NOT_FOUND            Status = C.CAIRO_STATUS_FILE_NOT_FOUND
	STATUS_INVALID_DASH              Status = C.CAIRO_STATUS_INVALID_DASH
	STATUS_INVALID_DSC_COMMENT       Status = C.CAIRO_STATUS_INVALID_DSC_COMMENT
	STATUS_INVALID_INDEX             Status = C.CAIRO_STATUS_INVALID_INDEX
	STATUS_CLIP_NOT_REPRESENTABLE    Status = C.CAIRO_STATUS_CLIP_NOT_REPRESENTABLE
	STATUS_TEMP_FILE_ERROR           Status = C.CAIRO_STATUS_TEMP_FILE_ERROR
	STATUS_INVALID_STRIDE            Status = C.CAIRO_STATUS_INVALID_STRIDE
	STATUS_FONT_TYPE_MISMATCH        Status = C.CAIRO_STATUS_FONT_TYPE_MISMATCH
	STATUS_USER_FONT_IMMUTABLE       Status = C.CAIRO_STATUS_USER_FONT_IMMUTABLE
	STATUS_USER_FONT_ERROR           Status = C.CAIRO_STATUS_USER_FONT_ERROR
	STATUS_NEGATIVE_COUNT            Status = C.CAIRO_STATUS_NEGATIVE_COUNT
	STATUS_INVALID_CLUSTERS          Status = C.CAIRO_STATUS_INVALID_CLUSTERS
	STATUS_INVALID_SLANT             Status = C.CAIRO_STATUS_INVALID_SLANT
	STATUS_INVALID_WEIGHT            Status = C.CAIRO_STATUS_INVALID_WEIGHT
	STATUS_INVALID_SIZE              Status = C.CAIRO_STATUS_INVALID_SIZE
	STATUS_USER_FONT_NOT_IMPLEMENTED Status = C.CAIRO_STATUS_USER_FONT_NOT_IMPLEMENTED
	STATUS_DEVICE_TYPE_MISMATCH      Status = C.CAIRO_STATUS_DEVICE_TYPE_MISMATCH
	STATUS_DEVICE_ERROR              Status = C.CAIRO_STATUS_DEVICE_ERROR
)

type Surface

type Surface struct {
	// contains filtered or unexported fields
}

Surface is a representation of Cairo's cairo_surface_t.

func NewSurface

func NewSurface(s uintptr, needsRef bool) *Surface

NewSurface creates a gotk3 cairo Surface from a pointer to a C cairo_surface_t. This is primarily designed for use with other gotk3 packages and should be avoided by applications.

func (*Surface) CopyPage

func (v *Surface) CopyPage()

CopyPage is a wrapper around cairo_surface_copy_page().

func (*Surface) CreateForRectangle

func (v *Surface) CreateForRectangle(x, y, width, height float64) *Surface

CreateForRectangle is a wrapper around cairo_surface_create_for_rectangle().

func (*Surface) CreateSimilar

func (v *Surface) CreateSimilar(content Content, width, height int) *Surface

CreateSimilar is a wrapper around cairo_surface_create_similar().

func (*Surface) Flush

func (v *Surface) Flush()

Flush is a wrapper around cairo_surface_flush().

func (*Surface) GetDeviceOffset

func (v *Surface) GetDeviceOffset() (x, y float64)

GetDeviceOffset is a wrapper around cairo_surface_get_device_offset().

func (*Surface) GetFallbackResolution

func (v *Surface) GetFallbackResolution() (xPPI, yPPI float64)

GetFallbackResolution is a wrapper around cairo_surface_get_fallback_resolution().

func (*Surface) GetMimeData

func (v *Surface) GetMimeData(mimeType MimeType) []byte

GetMimeData is a wrapper around cairo_surface_get_mime_data(). The returned mimetype data is returned as a Go byte slice.

func (*Surface) GetType

func (v *Surface) GetType() SurfaceType

GetType is a wrapper around cairo_surface_get_type().

func (*Surface) HasShowTextGlyphs

func (v *Surface) HasShowTextGlyphs() bool

HasShowTextGlyphs is a wrapper around cairo_surface_has_show_text_glyphs().

func (*Surface) MarkDirty

func (v *Surface) MarkDirty()

MarkDirty is a wrapper around cairo_surface_mark_dirty().

func (*Surface) MarkDirtyRectangle

func (v *Surface) MarkDirtyRectangle(x, y, width, height int)

MarkDirtyRectangle is a wrapper around cairo_surface_mark_dirty_rectangle().

func (*Surface) Native

func (v *Surface) Native() uintptr

Native returns a pointer to the underlying cairo_surface_t.

func (*Surface) SetDeviceOffset

func (v *Surface) SetDeviceOffset(x, y float64)

SetDeviceOffset is a wrapper around cairo_surface_set_device_offset().

func (*Surface) SetFallbackResolution

func (v *Surface) SetFallbackResolution(xPPI, yPPI float64)

SetFallbackResolution is a wrapper around cairo_surface_set_fallback_resolution().

func (*Surface) ShowPage

func (v *Surface) ShowPage()

ShowPage is a wrapper around cairo_surface_show_page().

func (*Surface) Status

func (v *Surface) Status() Status

Status is a wrapper around cairo_surface_status().

type SurfaceType

type SurfaceType int

SurfaceType is a representation of Cairo's cairo_surface_type_t.

const (
	SURFACE_TYPE_IMAGE          SurfaceType = C.CAIRO_SURFACE_TYPE_IMAGE
	SURFACE_TYPE_PDF            SurfaceType = C.CAIRO_SURFACE_TYPE_PDF
	SURFACE_TYPE_PS             SurfaceType = C.CAIRO_SURFACE_TYPE_PS
	SURFACE_TYPE_XLIB           SurfaceType = C.CAIRO_SURFACE_TYPE_XLIB
	SURFACE_TYPE_XCB            SurfaceType = C.CAIRO_SURFACE_TYPE_XCB
	SURFACE_TYPE_GLITZ          SurfaceType = C.CAIRO_SURFACE_TYPE_GLITZ
	SURFACE_TYPE_QUARTZ         SurfaceType = C.CAIRO_SURFACE_TYPE_QUARTZ
	SURFACE_TYPE_WIN32          SurfaceType = C.CAIRO_SURFACE_TYPE_WIN32
	SURFACE_TYPE_BEOS           SurfaceType = C.CAIRO_SURFACE_TYPE_BEOS
	SURFACE_TYPE_DIRECTFB       SurfaceType = C.CAIRO_SURFACE_TYPE_DIRECTFB
	SURFACE_TYPE_SVG            SurfaceType = C.CAIRO_SURFACE_TYPE_SVG
	SURFACE_TYPE_OS2            SurfaceType = C.CAIRO_SURFACE_TYPE_OS2
	SURFACE_TYPE_WIN32_PRINTING SurfaceType = C.CAIRO_SURFACE_TYPE_WIN32_PRINTING
	SURFACE_TYPE_QUARTZ_IMAGE   SurfaceType = C.CAIRO_SURFACE_TYPE_QUARTZ_IMAGE
	SURFACE_TYPE_SCRIPT         SurfaceType = C.CAIRO_SURFACE_TYPE_SCRIPT
	SURFACE_TYPE_QT             SurfaceType = C.CAIRO_SURFACE_TYPE_QT
	SURFACE_TYPE_RECORDING      SurfaceType = C.CAIRO_SURFACE_TYPE_RECORDING
	SURFACE_TYPE_VG             SurfaceType = C.CAIRO_SURFACE_TYPE_VG
	SURFACE_TYPE_GL             SurfaceType = C.CAIRO_SURFACE_TYPE_GL
	SURFACE_TYPE_DRM            SurfaceType = C.CAIRO_SURFACE_TYPE_DRM
	SURFACE_TYPE_TEE            SurfaceType = C.CAIRO_SURFACE_TYPE_TEE
	SURFACE_TYPE_XML            SurfaceType = C.CAIRO_SURFACE_TYPE_XML
	SURFACE_TYPE_SKIA           SurfaceType = C.CAIRO_SURFACE_TYPE_SKIA
	SURFACE_TYPE_SUBSURFACE     SurfaceType = C.CAIRO_SURFACE_TYPE_SUBSURFACE
)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL