painter

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

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

Go to latest
Published: Apr 3, 2023 License: BSD-3-Clause Imports: 28 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, fontDP float32, texScale float32) (font.Face, gotext.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 DrawString

func DrawString(dst draw.Image, s string, color color.Color, f font.Face, face gotext.Face, fontSize, scale float32,
	height int, tabWidth int)

DrawString draws a string into an image.

func GetAspect

func GetAspect(img *canvas.Image) float32

GetAspect looks up an aspect ratio of an image

func IsResourceSVG

func IsResourceSVG(res fyne.Resource) bool

IsResourceSVG checks if the resource is an SVG or not.

func MeasureString

func MeasureString(f gotext.Face, s string, textSize float32, tabWidth int) (size fyne.Size, 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 If a fyne.Canvas is given and the image’s fill mode is “fill original” the image’s min size has to fit its original size. If it doesn’t, PaintImage does not paint the image but adjusts its min size. The image will then be painted on the next frame because of the min size change.

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

This section is empty.

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