SDL: fallback to atlas if SDL2_ttf is <2.0.18

This commit is contained in:
Hoe Hao Cheng 2023-09-25 09:53:31 +08:00
parent 06a1f0b72c
commit 28edae016e
2 changed files with 6 additions and 3 deletions

View file

@ -1343,17 +1343,20 @@ else()
SDL/SDLVulkanGraphicsContext.cpp SDL/SDLVulkanGraphicsContext.cpp
) )
endif() endif()
if(SDL2_ttf_FOUND OR SDL2_ttf_PKGCONFIG_FOUND) if(SDL2_ttf_FOUND OR
(SDL2_ttf_PKGCONFIG_FOUND AND
SDL2_ttf_PKGCONFIG_VERSION VERSION_GREATER_EQUAL "2.0.18"))
add_definitions(-DUSE_SDL2_TTF) add_definitions(-DUSE_SDL2_TTF)
if(FONTCONFIG_FOUND) if(FONTCONFIG_FOUND)
add_definitions(-DUSE_SDL2_TTF_FONTCONFIG) add_definitions(-DUSE_SDL2_TTF_FONTCONFIG)
set(nativeExtraLibs ${nativeExtraLibs} Fontconfig::Fontconfig) set(nativeExtraLibs ${nativeExtraLibs} Fontconfig::Fontconfig)
endif() endif()
elseif(SDL2_ttf_PKGCONFIG_FOUND)
message(WARNING "Found SDL2_ttf <2.0.18 - this is too old, falling back to atlas")
endif() endif()
if(SDL2_ttf_FOUND) if(SDL2_ttf_FOUND)
set(nativeExtraLibs ${nativeExtraLibs} SDL2_ttf::SDL2_ttf) set(nativeExtraLibs ${nativeExtraLibs} SDL2_ttf::SDL2_ttf)
elseif(SDL2_ttf_PKGCONFIG_FOUND) elseif(SDL2_ttf_PKGCONFIG_FOUND)
add_definitions(-DUSE_SDL2_TTF_PKGCONFIG)
set(nativeExtraLibs ${nativeExtraLibs} PkgConfig::SDL2_ttf_PKGCONFIG) set(nativeExtraLibs ${nativeExtraLibs} PkgConfig::SDL2_ttf_PKGCONFIG)
endif() endif()
if(APPLE) if(APPLE)

View file

@ -378,7 +378,7 @@ void TextDrawerSDL::DrawStringBitmap(std::vector<uint8_t> &bitmapData, TextStrin
font = fallbackFonts_[0]; font = fallbackFonts_[0];
} }
#ifndef USE_SDL2_TTF_PKGCONFIG #if SDL_TTF_VERSION_ATLEAST(2, 20, 0)
if (align & ALIGN_HCENTER) if (align & ALIGN_HCENTER)
TTF_SetFontWrappedAlign(font, TTF_WRAPPED_ALIGN_CENTER); TTF_SetFontWrappedAlign(font, TTF_WRAPPED_ALIGN_CENTER);
else if (align & ALIGN_RIGHT) else if (align & ALIGN_RIGHT)