From cf88dbde6139b0dcc47d31421d13d1cca676af2e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jindra=20Pet=C5=99=C3=ADk?= Date: Sat, 25 Oct 2025 12:24:03 +0200 Subject: [PATCH] FontTag - call ensureLoaded where needed. --- .../src/com/jpexs/decompiler/flash/tags/base/FontTag.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/FontTag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/FontTag.java index a057268b3..706bd7f67 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/FontTag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/FontTag.java @@ -339,6 +339,7 @@ public abstract class FontTag extends DrawableTag implements AloneTag { * @return Font file */ public static File fontNameToFile(String fontName) { + ensureLoaded(); if (installedFontFilesByName.containsKey(fontName)) { return installedFontFilesByName.get(fontName); } @@ -422,6 +423,7 @@ public abstract class FontTag extends DrawableTag implements AloneTag { * @return System font name */ public String getSystemFontName() { + FontTag.ensureLoaded(); int fontId = getCharacterId(); String selectedFont = swf.sourceFontNamesMap.get(fontId); if (selectedFont == null) { @@ -449,6 +451,7 @@ public abstract class FontTag extends DrawableTag implements AloneTag { * @return System font */ public Font getSystemFont() { + FontTag.ensureLoaded(); return FontTag.installedFontsByName.get(getSystemFontName()); } @@ -538,6 +541,7 @@ public abstract class FontTag extends DrawableTag implements AloneTag { * @return Font kerning pairs */ protected static List getFontKerningPairs(Font font, int size) { + ensureLoaded(); if (customFontToFile.containsKey(font)) { if (!customFontKerningPairs.containsKey(font) || !customFontKerningPairs.get(font).containsKey(size)) { if (!customFontKerningPairs.containsKey(font)) { @@ -573,11 +577,12 @@ public abstract class FontTag extends DrawableTag implements AloneTag { } /** - * Adds custom font. + * Adds custom font. Useful to properly load kerning pairs from it. * @param font Font * @param file File */ public static void addCustomFont(Font font, File file) { + ensureLoaded(); customFontToFile.put(font, file); }