From e171bb37511ed34a693ef306b0d192fb72f77729 Mon Sep 17 00:00:00 2001 From: JupiterRider <60042618+JupiterRider@users.noreply.github.com> Date: Tue, 5 Nov 2024 17:33:03 +0100 Subject: [PATCH] DrawTextCodepoint(s) functions added to cgo version --- raylib/rtext.go | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/raylib/rtext.go b/raylib/rtext.go index 1e0c305e..6c91974d 100644 --- a/raylib/rtext.go +++ b/raylib/rtext.go @@ -237,3 +237,25 @@ func GenImageFontAtlas(glyphs []GlyphInfo, glyphRecs []*Rectangle, fontSize int3 v := newImageFromPointer(unsafe.Pointer(&ret)) return *v } + +// DrawTextCodepoint - Draw one character (codepoint) +func DrawTextCodepoint(font Font, codepoint rune, position Vector2, fontSize float32, tint color.RGBA) { + cfont := font.cptr() + ccodepoint := (C.int)(codepoint) + cposition := position.cptr() + cfontSize := (C.float)(fontSize) + ctint := colorCptr(tint) + C.DrawTextCodepoint(*cfont, ccodepoint, *cposition, cfontSize, *ctint) +} + +// DrawTextCodepoints - Draw multiple character (codepoint) +func DrawTextCodepoints(font Font, codepoints []rune, position Vector2, fontSize float32, spacing float32, tint color.RGBA) { + cfont := font.cptr() + ccodepoints := (*C.int)(unsafe.SliceData(codepoints)) + ccodepointCount := C.int(len(codepoints)) + cposition := position.cptr() + cfontSize := (C.float)(fontSize) + cspacing := (C.float)(spacing) + ctint := colorCptr(tint) + C.DrawTextCodepoints(*cfont, ccodepoints, ccodepointCount, *cposition, cfontSize, cspacing, *ctint) +}