fix(text): fallback de minúscules a majúscules i glif de barra baixa (_)
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
# char_underscore.shp - Símbolo _ (barra baja)
|
||||
# Dimensiones: 20×40 (blocky display)
|
||||
|
||||
name: char_underscore
|
||||
scale: 1.0
|
||||
center: 10, 20
|
||||
|
||||
# Línea horizontal abajo (bajo la baseline de las letras)
|
||||
line: 3,33 17,33
|
||||
@@ -48,7 +48,7 @@ namespace Graphics {
|
||||
}
|
||||
|
||||
// Cargar símbolos
|
||||
const std::string SYMBOLS[] = {".", ",", "-", ":", "!", "?", "/", "(", ")"};
|
||||
const std::string SYMBOLS[] = {".", ",", "-", ":", "!", "?", "/", "(", ")", "_"};
|
||||
for (const auto& sym : SYMBOLS) {
|
||||
char c = sym[0];
|
||||
std::string filename = getShapeFilename(c);
|
||||
@@ -171,6 +171,8 @@ namespace Graphics {
|
||||
return "font/char_lparen.shp";
|
||||
case ')':
|
||||
return "font/char_rparen.shp";
|
||||
case '_':
|
||||
return "font/char_underscore.shp";
|
||||
case ' ':
|
||||
return ""; // Espai es maneja sin load shape
|
||||
|
||||
@@ -183,6 +185,10 @@ namespace Graphics {
|
||||
}
|
||||
|
||||
auto VectorText::isSupported(char c) const -> bool {
|
||||
// Mateix fallback que render(): a-z es resol al glif A-Z.
|
||||
if (c >= 'a' && c <= 'z') {
|
||||
c -= 32;
|
||||
}
|
||||
return chars_.contains(c);
|
||||
}
|
||||
|
||||
@@ -221,6 +227,14 @@ namespace Graphics {
|
||||
continue;
|
||||
}
|
||||
|
||||
// Fallback de la font (només tenim glifs en majúscula): tractem
|
||||
// les minúscules a-z com les seves majúscules A-Z. Mentre no hi
|
||||
// haja glifs de minúscula, això evita que el text en minúscules
|
||||
// (p. ex. rutes de fitxer) desaparega.
|
||||
if (c >= 'a' && c <= 'z') {
|
||||
c -= 32;
|
||||
}
|
||||
|
||||
// Verificar si el carácter está soportado
|
||||
auto it = chars_.find(c);
|
||||
if (it != chars_.end()) {
|
||||
|
||||
Reference in New Issue
Block a user