painter

package
v2.1.1 Latest Latest
Warning

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

Go to latest
Published: Oct 22, 2021 License: BSD-3-Clause Imports: 24 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// DefaultTabWidth is the default width in spaces
	DefaultTabWidth = 4

	// TextDPI is a global constant that determines how text scales to interface sizes
	TextDPI = 78
)

Variables

This section is empty.

Functions

func CachedFontFace

func CachedFontFace(style fyne.TextStyle, opts *truetype.Options) font.Face

CachedFontFace returns a font face held in memory. These are loaded from the current theme.

func ClearFontCache

func ClearFontCache()

ClearFontCache is used to remove cached fonts in the case that we wish to re-load font faces

func DrawCircle

func DrawCircle(circle *canvas.Circle, vectorPad float32, scale func(float32) float32) *image.RGBA

DrawCircle rasterizes the given circle object into an image. The bounds of the output image will be increased by vectorPad to allow for stroke overflow at the edges. The scale function is used to understand how many pixels are required per unit of size.

func DrawLine

func DrawLine(line *canvas.Line, vectorPad float32, scale func(float32) float32) *image.RGBA

DrawLine rasterizes the given line object into an image. The bounds of the output image will be increased by vectorPad to allow for stroke overflow at the edges. The scale function is used to understand how many pixels are required per unit of size.

func DrawRectangle

func DrawRectangle(rect *canvas.Rectangle, vectorPad float32, scale func(float32) float32) *image.RGBA

DrawRectangle rasterizes the given rectangle object with stroke border into an image. The bounds of the output image will be increased by vectorPad to allow for stroke overflow at the edges. The scale function is used to understand how many pixels are required per unit of size.

func GetAspect

func GetAspect(img *canvas.Image) float32

GetAspect looks up an aspect ratio of an image

func MeasureString added in v2.1.0

func MeasureString(f font.Face, s string, tabWidth int) (advance fixed.Int26_6)

MeasureString returns how far dot would advance by drawing s with f. Tabs are translated into a dot location change.

func PaintImage

func PaintImage(img *canvas.Image, c fyne.Canvas, width, height int) image.Image

PaintImage renders a given fyne Image to a Go standard image

func RenderedTextSize

func RenderedTextSize(text string, fontSize float32, style fyne.TextStyle) (size fyne.Size, baseline float32)

RenderedTextSize looks up how big a string would be if drawn on screen. It also returns the distance from top to the text baseline.

func VectorPad

func VectorPad(obj fyne.CanvasObject) float32

VectorPad returns the number of additional points that should be added around a texture. This is to accommodate overflow caused by stroke and line endings etc. THe result is in fyne.Size type coordinates and should be scaled for output.

Types

type FontDrawer added in v2.1.0

type FontDrawer struct {
	font.Drawer
}

FontDrawer extends "golang.org/x/image/font" to add support for tabs FontDrawer draws text on a destination image.

A FontDrawer is not safe for concurrent use by multiple goroutines, since its Face is not.

func (*FontDrawer) DrawString added in v2.1.0

func (d *FontDrawer) DrawString(s string, tabWidth int)

DrawString draws s at the dot and advances the dot's location. Tabs are translated into a dot location change.

Directories

Path Synopsis
Package gl provides a full Fyne render implementation using system OpenGL libraries.
Package gl provides a full Fyne render implementation using system OpenGL libraries.

Jump to

Keyboard shortcuts

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