Fix font comparison, less context.font operations
This commit is contained in:
@@ -80,7 +80,7 @@
|
||||
"loglevelnext": "^3.0.1",
|
||||
"marked": "0.6.3",
|
||||
"mocha": "6.1.4",
|
||||
"ol-mapbox-style": "^5.0.0-beta.2",
|
||||
"ol-mapbox-style": "^5.0.0-beta.3",
|
||||
"pixelmatch": "^5.0.0",
|
||||
"pngjs": "^3.4.0",
|
||||
"proj4": "2.5.0",
|
||||
|
||||
@@ -180,6 +180,10 @@ export const checkedFonts = {};
|
||||
*/
|
||||
let measureContext = null;
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
*/
|
||||
let measureFont;
|
||||
|
||||
/**
|
||||
* @type {!Object<string, number>}
|
||||
@@ -238,6 +242,7 @@ export const checkFont = (function() {
|
||||
clear(textHeights);
|
||||
// Make sure that loaded fonts are picked up by Safari
|
||||
measureContext = null;
|
||||
measureFont = undefined;
|
||||
labelCache.clear();
|
||||
} else {
|
||||
++checked[font];
|
||||
@@ -317,8 +322,8 @@ export const measureTextHeight = (function() {
|
||||
*/
|
||||
export function measureTextWidth(font, text) {
|
||||
const measureContext = getMeasureContext();
|
||||
if (font != measureContext.font) {
|
||||
measureContext.font = font;
|
||||
if (font != measureFont) {
|
||||
measureContext.font = measureFont = font;
|
||||
}
|
||||
return measureContext.measureText(text).width;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user