mirror of
https://github.com/HIllya51/LunaTranslator.git
synced 2024-12-29 16:44:13 +08:00
Improve Font Setting of First Execution (#897)
* init default font change * rename * improve default font list * fix
This commit is contained in:
parent
b1a0cf2666
commit
666b3ca482
@ -12,6 +12,8 @@ from myutils.config import (
|
|||||||
setlanguage,
|
setlanguage,
|
||||||
static_data,
|
static_data,
|
||||||
tryreadconfig,
|
tryreadconfig,
|
||||||
|
getlanguse,
|
||||||
|
set_font_default,
|
||||||
)
|
)
|
||||||
import sqlite3
|
import sqlite3
|
||||||
from myutils.utils import (
|
from myutils.utils import (
|
||||||
@ -1186,9 +1188,11 @@ class MAINUI:
|
|||||||
def parsedefaultfont(self):
|
def parsedefaultfont(self):
|
||||||
for k in ["fonttype", "fonttype2", "settingfonttype"]:
|
for k in ["fonttype", "fonttype2", "settingfonttype"]:
|
||||||
if globalconfig[k] == "":
|
if globalconfig[k] == "":
|
||||||
globalconfig[k] = QFontDatabase.systemFont(
|
l = "ja" if k=="fonttype" else getlanguse()
|
||||||
QFontDatabase.SystemFont.GeneralFont
|
set_font_default(l, k)
|
||||||
).family()
|
# globalconfig[k] = QFontDatabase.systemFont(
|
||||||
|
# QFontDatabase.SystemFont.GeneralFont
|
||||||
|
# ).family()
|
||||||
|
|
||||||
def loadui(self):
|
def loadui(self):
|
||||||
self.installeventfillter()
|
self.installeventfillter()
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
import json
|
import json
|
||||||
import os, time, uuid
|
import os, time, uuid
|
||||||
from traceback import print_exc
|
from traceback import print_exc
|
||||||
|
from qtsymbols import *
|
||||||
|
|
||||||
|
|
||||||
def tryreadconfig(path, default=None):
|
def tryreadconfig(path, default=None):
|
||||||
@ -488,3 +489,37 @@ def saveallconfig():
|
|||||||
"./files/lang/{}.json".format(getlanguse()),
|
"./files/lang/{}.json".format(getlanguse()),
|
||||||
languageshow,
|
languageshow,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
def is_font_installed(font: str) -> bool:
|
||||||
|
return QFont(font).exactMatch()
|
||||||
|
|
||||||
|
|
||||||
|
# font_default_used = {}
|
||||||
|
|
||||||
|
|
||||||
|
def get_font_default(lang: str, issetting: bool) -> str:
|
||||||
|
# global font_default_used
|
||||||
|
# if lang in font_default_used.keys():
|
||||||
|
# return font_default_used[lang]
|
||||||
|
|
||||||
|
t = "setting_font_type_default" if issetting else "font_type_default"
|
||||||
|
l = lang if lang in static_data[t].keys() else "default"
|
||||||
|
|
||||||
|
font_default = ""
|
||||||
|
for font in static_data[t][l]:
|
||||||
|
if is_font_installed(font):
|
||||||
|
font_default = font
|
||||||
|
break
|
||||||
|
if font_default == "":
|
||||||
|
font_default = QFontDatabase.systemFont(
|
||||||
|
QFontDatabase.SystemFont.GeneralFont
|
||||||
|
).family()
|
||||||
|
|
||||||
|
# font_default_used["lang"] = font_default
|
||||||
|
return font_default
|
||||||
|
|
||||||
|
|
||||||
|
def set_font_default(lang: str, fonttype: str) -> None:
|
||||||
|
globalconfig[fonttype] = get_font_default(lang, True if fonttype=="settingfonttype" else False)
|
||||||
|
|
||||||
|
@ -99,6 +99,24 @@
|
|||||||
"th",
|
"th",
|
||||||
"bo"
|
"bo"
|
||||||
],
|
],
|
||||||
|
"font_type_default": {
|
||||||
|
"default": ["Segoe UI", "Arial", "Tahoma", "Microsoft Sans Serif"],
|
||||||
|
"zh": ["微软雅黑", "Microsoft YaHei", "黑体", "SimHei", "新宋体", "NSimSun", "宋体", "SimSun"],
|
||||||
|
"ja": ["游ゴシック", "Yu Gothic", "メイリオ", "Meiryo", "MS Pゴシック", "MS PGothic", "MS ゴシック", "MS Gothic"],
|
||||||
|
"ko": ["맑은 고딕", "Malgun Gothic", "돋움체", "Dotum", "굴림체", "Gulim", "바탕체", "Batang"],
|
||||||
|
"cht": ["微軟正黑體", "Microsoft JhengHei", "標楷體", "DFKai-SB", "新細明體", "PMingLiU", "細明體", "MingLiU"],
|
||||||
|
"th": ["Leelawadee", "Tahoma", "Microsoft Sans Serif"],
|
||||||
|
"bo": ["Microsoft Himalaya", "Noto Serif Tibetan", "Tibetan Machine Uni"]
|
||||||
|
},
|
||||||
|
"setting_font_type_default": {
|
||||||
|
"default": ["Segoe UI", "Tahoma", "Microsoft Sans Serif", "Arial"],
|
||||||
|
"zh": ["Microsoft YaHei UI", "微软雅黑", "Microsoft YaHei", "黑体", "SimHei", "新宋体", "NSimSun", "宋体", "SimSun"],
|
||||||
|
"ja": ["Yu Gothic UI", "游ゴシック", "Yu Gothic", "Meiryo UI", "メイリオ", "Meiryo", "MS UI Gothic", "MS Pゴシック", "MS PGothic", "MS ゴシック", "MS Gothic"],
|
||||||
|
"ko": ["맑은 고딕", "Malgun Gothic", "굴림체", "Gulim", "돋움체", "Dotum", "바탕체", "Batang"],
|
||||||
|
"cht": ["Microsoft JhengHei UI", "微軟正黑體", "Microsoft JhengHei", "新細明體", "PMingLiU", "細明體", "MingLiU"],
|
||||||
|
"th": ["Leelawadee UI", "Tahoma", "Microsoft Sans Serif"],
|
||||||
|
"bo": ["Microsoft YaHei UI", "微软雅黑", "Microsoft YaHei", "黑体", "SimHei", "新宋体", "NSimSun", "宋体", "SimSun"]
|
||||||
|
},
|
||||||
"codepage_display": [
|
"codepage_display": [
|
||||||
"日语(CP932,SHIFT-JIS)",
|
"日语(CP932,SHIFT-JIS)",
|
||||||
"UTF8(CP65001)",
|
"UTF8(CP65001)",
|
||||||
|
Loading…
x
Reference in New Issue
Block a user