diff --git a/components/mjs/output/chtml/nofont.js b/components/mjs/output/chtml/nofont.js
deleted file mode 100644
index 484cd0a75..000000000
--- a/components/mjs/output/chtml/nofont.js
+++ /dev/null
@@ -1,8 +0,0 @@
-import {ChtmlFontData} from '#js/output/chtml/FontData.js';
-
-export class DefaultFont extends ChtmlFontData {};
-export const fontName = 'nofont';
-
-DefaultFont.OPTIONS = {fontURL: '.'};
-
-export const Font = {fontName, DefaultFont};
diff --git a/components/mjs/output/svg/nofont.js b/components/mjs/output/svg/nofont.js
deleted file mode 100644
index ade5a5a79..000000000
--- a/components/mjs/output/svg/nofont.js
+++ /dev/null
@@ -1,6 +0,0 @@
-import {SvgFontData} from '#js/output/svg/FontData.js';
-
-export class DefaultFont extends SvgFontData {};
-export const fontName = 'nofont';
-
-export const Font = {fontName, DefaultFont};
diff --git a/components/mjs/output/util.js b/components/mjs/output/util.js
index 1a2c347a0..31d964747 100644
--- a/components/mjs/output/util.js
+++ b/components/mjs/output/util.js
@@ -5,7 +5,6 @@ import {hasWindow} from '#js/util/context.js';
export const FONTPATH = hasWindow ?
'https://cdn.jsdelivr.net/npm/@mathjax/%%FONT%%-font':
'@mathjax/%%FONT%%-font';
-
export const OutputUtil = {
config(jax, jaxClass, defaultFont, fontClass) {
@@ -14,7 +13,7 @@ export const OutputUtil = {
combineDefaults(MathJax.config, jax, MathJax.config.output || {});
let config = MathJax.config[jax];
- let font = config.font || defaultFont;
+ let font = config.font || config.fontData || defaultFont;
if (typeof(font) !== 'string') {
config.fontData = font;
config.font = font = font.NAME;
@@ -30,7 +29,7 @@ export const OutputUtil = {
}
const name = font.substring(1, font.length - 1);
- if (name !== defaultFont) {
+ if (name !== defaultFont || !fontClass) {
MathJax.loader.addPackageData(`output/${jax}`, {extraLoads: [`${font}/${jax}`]});
diff --git a/components/webpack.common.cjs b/components/webpack.common.cjs
index 3b56070f9..805a4ab3b 100644
--- a/components/webpack.common.cjs
+++ b/components/webpack.common.cjs
@@ -84,13 +84,11 @@ const PLUGINS = function (js, dir, target, font, jax, name) {
// Replace default font with the no-font file
//
if (!font) {
- const jax = (name.match(/chtml|svg/) || ['chtml'])[0];
- const nofont = path.resolve(DIRNAME, target, 'output', jax, 'nofont.js');
plugins.push(
new webpack.NormalModuleReplacementPlugin(
- /DefaultFont.js/,
+ /-font\/.*?\/default\.js/,
function (resource) {
- resource.request = path.relative(resource.context, nofont).replace(/^([^.])/, './$1');
+ resource.request = resource.request.replace(/\/.*?\/default\.js/, '/nofont.js');
}
)
);