Provides TTF text rendering. Use SDL2_ttf.
Types
StyleUnicode = ref object is_url*: bool style*: cint c*, url*: string color*: ColorRef
StyleText = ref object font*: FontPtr rendered*: bool spacing*: float max_lines*: int texture*: GlTextureObj chars*: seq[StyleUnicode]
Procs
proc schar(c: string; color: ColorRef = Color(1.0'f32, 1.0'f32, 1.0'f32); style: cint = TTF_STYLE_NORMAL; is_url: bool = false): StyleUnicode {...}{. raises: [], tags: [].}
proc stext(text: string; color: ColorRef = Color(1.0'f32, 1.0'f32, 1.0'f32); style: cint = TTF_STYLE_NORMAL): StyleText {...}{.raises: [], tags: [].}
proc len(text: StyleText): int {...}{.raises: [], tags: [].}
proc `$`(c: StyleUnicode): string {...}{.raises: [], tags: [].}
proc `$`(text: StyleText): string {...}{.raises: [], tags: [].}
proc `&`(text: StyleText; c: StyleUnicode): StyleText {...}{.raises: [], tags: [].}
proc `&`(text, t: StyleText): StyleText {...}{.raises: [], tags: [].}
proc `&`(text: StyleText; t: string): StyleText {...}{.raises: [], tags: [].}
proc `&`(text: string; c: StyleUnicode | StyleText): string
proc `&=`(text: var StyleText; c: StyleUnicode | StyleText)
proc `&=`(text: var string; c: StyleUnicode | StyleText)
proc `&=`(text: var StyleText; t: string) {...}{.raises: [], tags: [].}
proc `[]`(text: StyleText; index: int | BackwardsIndex): StyleUnicode
proc `[]`[T, U](text: StyleText; slice: HSlice[T, U]): StyleText
proc applyStyle(symbol: StyleUnicode; style: cint; enabled: bool = true) {...}{.raises: [], tags: [].}
proc toUpper(text: StyleText): StyleText {...}{.raises: [], tags: [].}
proc toLower(text: StyleText): StyleText {...}{.raises: [], tags: [].}
proc setColor(c: StyleUnicode; color: ColorRef) {...}{.raises: [], tags: [].}
proc setColor(text: StyleText; color: ColorRef) {...}{.raises: [], tags: [].}
proc setColor(text: StyleText; index: int; color: ColorRef) {...}{.raises: [], tags: [].}
proc setColor(text: StyleText; s, e: int; color: ColorRef) {...}{.raises: [], tags: [].}
proc setNormal(c`gensym17635213: StyleUnicode; val`gensym17635214: bool = true) {...}{. raises: [], tags: [].}
proc setNormal(text`gensym17635215: StyleText; val`gensym17635216: bool) {...}{. raises: [], tags: [].}
proc setNormal(text`gensym17635218: StyleText; index`gensym17635219: int; val`gensym17635220: bool) {...}{.raises: [], tags: [].}
proc setNormal(text`gensym17635221: StyleText; s`gensym17635222, e`gensym17635223: int; val`gensym17635224: bool) {...}{. raises: [], tags: [].}
proc setBold(c`gensym17640093: StyleUnicode; val`gensym17640094: bool = true) {...}{. raises: [], tags: [].}
proc setBold(text`gensym17640095: StyleText; val`gensym17640096: bool) {...}{.raises: [], tags: [].}
proc setBold(text`gensym17640098: StyleText; index`gensym17640099: int; val`gensym17640100: bool) {...}{.raises: [], tags: [].}
proc setBold(text`gensym17640101: StyleText; s`gensym17640102, e`gensym17640103: int; val`gensym17640104: bool) {...}{. raises: [], tags: [].}
proc setItalic(c`gensym17645093: StyleUnicode; val`gensym17645094: bool = true) {...}{. raises: [], tags: [].}
proc setItalic(text`gensym17645095: StyleText; val`gensym17645096: bool) {...}{. raises: [], tags: [].}
proc setItalic(text`gensym17645098: StyleText; index`gensym17645099: int; val`gensym17645100: bool) {...}{.raises: [], tags: [].}
proc setItalic(text`gensym17645101: StyleText; s`gensym17645102, e`gensym17645103: int; val`gensym17645104: bool) {...}{. raises: [], tags: [].}
proc setUnderline(c`gensym17650093: StyleUnicode; val`gensym17650094: bool = true) {...}{. raises: [], tags: [].}
proc setUnderline(text`gensym17650095: StyleText; val`gensym17650096: bool) {...}{. raises: [], tags: [].}
proc setUnderline(text`gensym17650098: StyleText; index`gensym17650099: int; val`gensym17650100: bool) {...}{.raises: [], tags: [].}
proc setUnderline(text`gensym17650101: StyleText; s`gensym17650102, e`gensym17650103: int; val`gensym17650104: bool) {...}{. raises: [], tags: [].}
proc setStrikethrough(c`gensym17655093: StyleUnicode; val`gensym17655094: bool = true) {...}{.raises: [], tags: [].}
proc setStrikethrough(text`gensym17655095: StyleText; val`gensym17655096: bool) {...}{. raises: [], tags: [].}
proc setStrikethrough(text`gensym17655098: StyleText; index`gensym17655099: int; val`gensym17655100: bool) {...}{.raises: [], tags: [].}
proc setStrikethrough(text`gensym17655101: StyleText; s`gensym17655102, e`gensym17655103: int; val`gensym17655104: bool) {...}{.raises: [], tags: [].}
proc setURL(text: StyleText; s, e: int; url: string; color: ColorRef = URL_COLOR) {...}{. raises: [], tags: [].}
proc setFont(text: StyleText; font: cstring; size: cint) {...}{.raises: [], tags: [].}
proc setFont(text: StyleText; font: FontPtr) {...}{.raises: [], tags: [].}
proc loadFont(font: cstring; size: cint): FontPtr {...}{.raises: [], tags: [].}
proc splitLines(text: StyleText): seq[StyleText] {...}{.raises: [], tags: [].}
proc split(text: StyleText; splitval: string): seq[StyleText] {...}{.raises: [], tags: [].}
proc getTextSize(text: StyleText): Vector2Obj {...}{.raises: [], tags: [].}
proc getCaretPos(text: StyleText; pos: uint32): tuple[a: Vector2Obj, b: uint16] {...}{. raises: [], tags: [].}
proc getPosUnderPoint(text: StyleText; global_pos, text_pos: Vector2Obj; text_align: AnchorObj = Anchor(0, 0, 0, 0)): uint32 {...}{.raises: [], tags: [].}
- Returns caret position under mouse.
proc getCharUnderPoint(text: StyleText; global_pos, text_pos: Vector2Obj; text_align: AnchorObj = Anchor(0, 0, 0, 0)): tuple[ c: StyleUnicode, pos: uint32] {...}{.raises: [], tags: [].}
proc renderSurface(text: StyleText; align: AnchorObj): SurfacePtr {...}{. raises: [ResourceError], tags: [].}
-
Renders the surface and returns it, if available.
- Arguments:
- align -- text align.
proc render(text: StyleText; size: Vector2Obj; align: AnchorObj) {...}{. raises: [ResourceError, GLerror], tags: [].}
- Translates SDL2 surface to OpenGL texture and frees surface memory.
proc renderTo(text: StyleText; pos, size: Vector2Obj; align: AnchorObj) {...}{. raises: [ResourceError, GLerror], tags: [].}