Dear pygui поддержка кириллицы
Подскажите, пожалуйста, поддерживает ли DearPyGui кириллицу? Может кто-то сталкивался.
Ответы (3 шт):
Автор решения: Владимир Нагорный
→ Ссылка
Сработало добавление:
add_additional_font(file = "noto-mono.regular.ttf", size = 14, glyph_ranges = 'cyrillic')
Автор решения: MWorld
→ Ссылка
В стандарном шрифте нет русских символов, нужно скачать новый шрифт с поддержкой кириллицы и установить его как дефолтный:
with dpg.font_registry():
with dpg.font("notomono-regular.ttf", 13, default_font=True, tag="Default font") as f:
dpg.add_font_range_hint(dpg.mvFontRangeHint_Cyrillic)
dpg.bind_font("Default font")
Тем не менее, нельзя будет вводить в input кириллицей, буквы не будут корректно отображаться.
Автор решения: Den Led
→ Ссылка
import dearpygui.dearpygui as dpg
dpg.create_context()
**big_let_start = 0x00C0 # Capital "A" in cyrillic alphabet
big_let_end = 0x00DF # Capital "Я" in cyrillic alphabet
small_let_end = 0x00FF # small "я" in cyrillic alphabet
remap_big_let = 0x0410 # Starting number for remapped cyrillic alphabet
alph_len = big_let_end - big_let_start + 1 # adds the shift from big letters to small
alph_shift = remap_big_let - big_let_start # adds the shift from remapped to non-remapped
with dpg.font_registry():
with dpg.font("fonts/Akrobat-SemiBold.otf", 18) as default_font:
dpg.add_font_range_hint(dpg.mvFontRangeHint_Default)
dpg.add_font_range_hint(dpg.mvFontRangeHint_Cyrillic)
biglet = remap_big_let # Starting number for remapped cyrillic alphabet
for i1 in range(big_let_start, big_let_end + 1): # Cycle through big letters in cyrillic alphabet
dpg.add_char_remap(i1, biglet) # Remap the big cyrillic letter
dpg.add_char_remap(i1 + alph_len, biglet + alph_len) # Remap the small cyrillic letter
biglet += 1 # choose next letter
dpg.bind_font(default_font)**
dpg.create_viewport(title='Основное окно программы', width=800, height=600)
dpg.setup_dearpygui()
with dpg.window(label="Еще одно окно"):
dpg.add_text("Просто текст")
dpg.add_button(label="Сохранить")
dpg.add_input_text(label="строка")
dpg.add_slider_float(label="число с плавающей точкой")
dpg.show_viewport()
dpg.start_dearpygui()
dpg.destroy_context()
= = =
Шрифты качал отсюда: https://fontstorage.com/ru/category/
Незабываем шрифт кинуть в папку, которая указана тут: with dpg.font("fonts/Akrobat-SemiBold.otf", 18) as default_font:
Для русского языка достаточно выделенного жирным кода.