У меня есть небольшой фрагмент кода Electron
, который был написан в период 2.X.Это неупакованный локальный редактор / отладчик, который интенсивно использует (по умолчанию) семейство шрифтов monospace
, и до недавнего времени он довольно хорошо работал во всех nodejs
/ Electron
основных / вспомогательных версиях.
До Electron
5.0 шрифт был «правильный», никакой конкретной опции не требовалось, и я считаю, что фактический используемый шрифт был Courier New
, который является значением по умолчанию;
Но после недавнего обновления 5.0фактический используемый шрифт внезапно стал NSimSun
(китайский шрифт, вероятно, потому что это китайская версия Windows).
Я искал документ, нашел запись webPreferences.defaultFontFamily
и перепробовал все виды строк шрифта на его.monospace
безрезультатно, Electron настаивает на использовании NSimSun
в качестве моноширина, если я явно не укажу font-family
в окне браузера CSS.
Я что-то упустил?
Вот код, который определяети откройте окно браузера:
winMain=new electron.BrowserWindow({
"width":960,
"height":600,
"minWidth":800,
"minHeight":500,
"backgroundColor":"#FFF",
"center":false,
"icon":__dirname+"/static/logo.png",
"webPreferences":{
"preload":path.join(__dirname,"preload.js"),
"defaultFontFamily":{
"monospace":"Consolas"
// or "Noto Sans" or "'Noto Sans'" or "Courier New" or "'Courier New'"
},
"defaultEncoding":"UTF-8"
}
});
// winMain.loadFile("index.html");
winMain.loadURL(url.format({
"protocol":"file",
"slashes":true,
"pathname":path.join(__dirname,"index.html")
}));