Documentation ¶
Index ¶
- Variables
- func GetNamedRenderer(name string) demodel.Renderer
- func GetRenderer(buff *demodel.CharBuffer) demodel.Renderer
- func RecalculateFontFace(dpi float64)
- func RegisterRenderer(name string, r demodel.Renderer)
- type DefaultImageMapper
- type DefaultSizeCalcer
- type ImageLoc
- type ImageMap
- type TaglineRenderer
Constants ¶
This section is empty.
Variables ¶
var (
MonoFontFace, MonoFontFaceBold font.Face
MonoFontHeight, MonoFontAdvance, MonoFontGlyphWidth, MonoFontAscent fixed.Int26_6
)
These variables represent a default monospaced font for renderers to use and caches of properties that are useful for a renderer. Renderers don't *have* to use them, but doing so avoids race conditions with freetype and makes it easier to use default implementations built around them, as well as ensures consistency between renderers of different languages.
var AttributeColour = BuiltinTypeColour
var BuiltinTypeColour = color.RGBA{0x00, 0x6D, 0, 0xFF}
var CommentColour = color.RGBA{0, 0, 0xFF, 0xFF}
var DeleteBackground = color.RGBA{0xFF, 0xDC, 0xDC, 0xFF}
var ErrNoCharacter = errors.New("No character under the mouse cursor.")
var InsertBackground = color.RGBA{0xEF, 0xFF, 0xEF, 0xFF}
var KeywordColour = color.RGBA{0x6D, 0x6D, 0, 0xFF}
var NormalBackground = color.RGBA{0xFF, 0xFF, 0xDC, 0xFF}
Background colours
var OperatorColour = color.RGBA{0x55, 0x55, 0x55, 0xFF}
var StringColour = color.RGBA{0xFF, 0, 0, 0xFF}
var TagColour = color.RGBA{0x8A, 0x66, 0x00, 0xFF} //KeywordColour
var TagDelimitorColour = color.RGBA{0x70, 0x94, 0xAE, 0xFF} // < and > characters in HTML
Mostly for HTML-like languages
var TaglineBackground = color.RGBA{0xEA, 0xFF, 0xFF, 0xFF}
var TextColour = color.RGBA{0, 0, 0, 0xFF}
var TextHighlight = color.RGBA{0xBC, 0xFC, 0xF9, 0xFF}
Text colours
Functions ¶
func GetNamedRenderer ¶
func GetRenderer ¶
func GetRenderer(buff *demodel.CharBuffer) demodel.Renderer
func RecalculateFontFace ¶
func RecalculateFontFace(dpi float64)
func RegisterRenderer ¶
Types ¶
type DefaultImageMapper ¶
type DefaultImageMapper struct { LastBuf *demodel.CharBuffer LastBufSize int IMap *ImageMap }
DefaultImageMapper is a type that can be mixed in to renderers to provide a default implementation of GetImageMap() equivalent to what would be used by the NoSyntaxRenderer.
func (*DefaultImageMapper) GetImageMap ¶
func (imap *DefaultImageMapper) GetImageMap(buf *demodel.CharBuffer, viewport image.Rectangle) demodel.ImageMap
func (*DefaultImageMapper) InvalidateCache ¶
func (imap *DefaultImageMapper) InvalidateCache()
type DefaultSizeCalcer ¶
type DefaultSizeCalcer struct { LastBuf *demodel.CharBuffer LastBufSize int SizeCache image.Rectangle }
A DefaultSizeCalcer is a type that can be mixed in to renders to provide a default implementation of Bounds, for calculating what the bounds would be with the NoSyntaxRenderer. This is useful for renderers which only provide syntax highlighting but do nothing that would change the size of the image rendered.
func (*DefaultSizeCalcer) Bounds ¶
func (r *DefaultSizeCalcer) Bounds(buf *demodel.CharBuffer) image.Rectangle
func (*DefaultSizeCalcer) InvalidateCache ¶
func (r *DefaultSizeCalcer) InvalidateCache()
type ImageLoc ¶
type ImageLoc struct { Loc fixed.Rectangle26_6 Idx uint }
type ImageMap ¶
type ImageMap struct { IMap []ImageLoc Buf *demodel.CharBuffer }
type TaglineRenderer ¶
type TaglineRenderer struct { DefaultSizeCalcer DefaultImageMapper }
TaglineRenderer is like the default renderer which doesn't provide syntax highlighting, but uses a different background colour which doesn't change regardless of mode.
func (TaglineRenderer) CanRender ¶
func (r TaglineRenderer) CanRender(*demodel.CharBuffer) bool
func (*TaglineRenderer) InvalidateCache ¶
func (r *TaglineRenderer) InvalidateCache()
func (TaglineRenderer) RenderInto ¶
func (r TaglineRenderer) RenderInto(dst draw.Image, buf *demodel.CharBuffer, viewport image.Rectangle) error