ifont

package
v1.0.10 Latest Latest
Warning

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

Go to latest
Published: Aug 19, 2024 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

View Source
const (
	FaceDPIDefault     = 72  // 默认分辨率
	FontSizeDefault    = 24  // 默认字体大小
	FontSizeScaleRatio = 1.5 // 字体尺寸缩放比例
	TextSepIvX         = 6   // 分割文本X坐标偏移量
)

Variables

This section is empty.

Functions

This section is empty.

Types

type IFont

type IFont struct {
	BgkImage    image.Image           // 图片内容
	OpenFont    *opentype.Font        // 解析字体内容
	Point       image.Point           // 字体位置坐标
	FaceOptions *opentype.FaceOptions // 字体属性
	IsSep       bool                  // 文本是否分割:false否,true分割
	Sep         string                // 分割符
}

IFont 字体信息

func New

func New() *IFont

func (*IFont) AdjustFontSizeToFitImage

func (f *IFont) AdjustFontSizeToFitImage(imgWidth, imgHeight int, text string) (attr *ParseTextItem, err error)

AdjustFontSizeToFitImage 根据图片尺寸调整字体大小以适应文本

func (*IFont) CenterWH

func (f *IFont) CenterWH(text string, face font.Face) (width, height int)

CenterWH 文字居中

func (*IFont) DrawText

func (f *IFont) DrawText(text string, colorHex string) (err error)

DrawText 图片绘制文字

func (*IFont) ImageDrawText

func (f *IFont) ImageDrawText(text string, color color.Color, textX, textY int, textAttr *ParseTextItem)

ImageDrawText 图片绘制文本

func (*IFont) ImgWH

func (f *IFont) ImgWH() (width, height int)

ImgWH 图片高宽度

func (*IFont) LoadFont

func (f *IFont) LoadFont(path string) (err error)

LoadFont 加载字体文件内容

func (*IFont) MetricsTextWH

func (f *IFont) MetricsTextWH(text string, face font.Face) (width, height int)

MetricsTextWH 通过字体度面量获取字体高宽度

func (*IFont) Open

func (f *IFont) Open(path string)

Open 打开图片文件

func (*IFont) ParseHexColor

func (f *IFont) ParseHexColor(colorHex string) (color.Color, error)

ParseHexColor 解析二进制颜色值

func (*IFont) Save

func (f *IFont) Save(filename string) error

Save 保存图片文件

func (*IFont) SetBgkImage

func (f *IFont) SetBgkImage(img image.Image)

SetBgkImage 设置背景图

func (*IFont) SetFaceOptions

func (f *IFont) SetFaceOptions(faceOptions *opentype.FaceOptions)

SetFaceOptions 设置字体字面属性

func (*IFont) SetFontItem

func (f *IFont) SetFontItem(ft IFont)

SetFontItem 设置字体整体属性

func (*IFont) SetIsSep

func (f *IFont) SetIsSep(isSep bool)

SetIsSep 设置是否分割:false否,true分割

func (*IFont) SetOpenFont

func (f *IFont) SetOpenFont(openFont *opentype.Font)

SetOpenFont 设置加载的字体内容

func (*IFont) SetPoints

func (f *IFont) SetPoints(point image.Point)

SetPoints 设置定位

func (*IFont) SetSep

func (f *IFont) SetSep(sep string)

SetSep 是否设置分割符,例如:价格(99.99,分割伟[]string{`99`, `99`})

func (*IFont) TextXY

func (f *IFont) TextXY(textW, textH int) (x, y int)

TextXY 文本拓印位置

type ParseTextItem

type ParseTextItem struct {
	Width  int
	Height int
	Face   font.Face
}

ParseTextItem 解析文本字体属性

Jump to

Keyboard shortcuts

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