font

package
v0.3.1 Latest Latest
Warning

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

Go to latest
Published: Dec 9, 2019 License: Apache-2.0 Imports: 12 Imported by: 40

Documentation

Index

Constants

This section is empty.

Variables

View Source
var UserFontMetrics = map[string]TTFLight{}

UserFontMetrics represents font metrics for user installed TrueType fonts.

Functions

func BoundingBox

func BoundingBox(fontName string) *types.Rectangle

BoundingBox returns the font bounding box for a given font as specified in the corresponding AFM file.

func CharWidth

func CharWidth(fontName string, c int) int

CharWidth returns the character width for a char and font in glyph space units.

func CoreFontNames

func CoreFontNames() []string

CoreFontNames returns a list of the 14 PDF standard fonts.

func Dir

func Dir() (string, error)

Dir returns the path where pdfcpu stores font info for embedding.

func InstallTrueTypeFont

func InstallTrueTypeFont(fontDir, fontName string) error

InstallTrueTypeFont compiles font attributes needed to build a font descriptor.

func IsCoreFont

func IsCoreFont(fontName string) bool

IsCoreFont returns true for the 14 PDF standard fonts.

func IsUserFont

func IsUserFont(fontName string) bool

IsUserFont returns true for installed TrueType fonts.

func Read

func Read(fileName string) ([]byte, error)

Read reads in the font file bytes from gob

func Size

func Size(text, fontName string, width float64) int

Size returns the needed font size (aka. font scaling factor) in points for rendering a given text string using a given font name with a given user space width.

func SupportedFont

func SupportedFont(fontName string) bool

SupportedFont returns true for core fonts or user installed fonts.

func TextWidth

func TextWidth(text, fontName string, fontSize int) float64

TextWidth represents the width in user space units for a given text string, font name and font size.

func UserFontNames

func UserFontNames() []string

UserFontNames return a list of all installed TrueType fonts.

func UserSpaceFontBBox

func UserSpaceFontBBox(fontName string, fontSize int) *types.Rectangle

UserSpaceFontBBox returns the font box for given font name and font size in user space coordinates.

Types

type TTFLight

type TTFLight struct {
	PostscriptName     string            // name: NameID 6
	Protected          bool              // OS/2: fsType
	UnitsPerEm         int               // head: unitsPerEm
	Ascent             int               // OS/2: sTypoAscender
	Descent            int               // OS/2: sTypoDescender
	CapHeight          int               // OS/2: sCapHeight
	FirstChar          uint16            // OS/2: fsFirstCharIndex
	LastChar           uint16            // OS/2: fsLastCharIndex
	LLx, LLy, URx, URy float64           // head: xMin, yMin, xMax, yMax (fontbox)
	ItalicAngle        float64           // post: italicAngle
	FixedPitch         bool              // post: isFixedPitch
	Bold               bool              // OS/2: usWeightClass == 7
	HorMetricsCount    int               // hhea: numOfLongHorMetrics
	GlyphCount         int               // maxp: numGlyphs
	GlyphWidths        []int             // hmtx: fd.HorMetricsCount.advanceWidth
	Chars              map[uint16]uint16 // cmap
}

TTFLight represents a TrueType font w/o font file.

func (TTFLight) String

func (fd TTFLight) String() string

Jump to

Keyboard shortcuts

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