Merge pull request #352 from uprun/only-changes-2024-02-24

added LoadFontExByRunesNumber
This commit is contained in:
Milan Nikolic 2024-02-25 13:24:01 +01:00 committed by GitHub
commit 0b7f0bb776
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 10 additions and 2 deletions

View file

@ -2829,9 +2829,12 @@ func LoadFont(fileName string) Font {
}
// LoadFontEx - Load font from file with extended parameters, use NULL for codepoints and 0 for codepointCount to load the default character setFont
func LoadFontEx(fileName string, fontSize int32, codepoints []rune) Font {
func LoadFontEx(fileName string, fontSize int32, codepoints []rune, runesNumber ...int32) Font {
var font Font
codepointCount := int32(len(codepoints))
if len(runesNumber) > 0 {
codepointCount = int32(runesNumber[0])
}
loadFontEx(uintptr(unsafe.Pointer(&font)), fileName, fontSize, codepoints, codepointCount)
return font
}

View file

@ -47,7 +47,7 @@ func LoadFont(fileName string) Font {
}
// LoadFontEx - Load Font from file with extended parameters
func LoadFontEx(fileName string, fontSize int32, fontChars []rune) Font {
func LoadFontEx(fileName string, fontSize int32, fontChars []rune, runesNumber ...int32) Font {
var cfontChars *C.int
var ccharsCount C.int
@ -58,6 +58,11 @@ func LoadFontEx(fileName string, fontSize int32, fontChars []rune) Font {
cfontChars = (*C.int)(unsafe.Pointer(&fontChars[0]))
ccharsCount = (C.int)(len(fontChars))
}
if fontChars == nil {
if len(runesNumber) > 0 {
ccharsCount = (C.int)(runesNumber[0])
}
}
ret := C.LoadFontEx(cfileName, cfontSize, cfontChars, ccharsCount)
v := newFontFromPointer(unsafe.Pointer(&ret))
return v