diff --git a/eeschema/sch_io/kicad_sexpr/sch_io_kicad_sexpr_parser.cpp b/eeschema/sch_io/kicad_sexpr/sch_io_kicad_sexpr_parser.cpp index 45691d6ecc..2336d406c9 100644 --- a/eeschema/sch_io/kicad_sexpr/sch_io_kicad_sexpr_parser.cpp +++ b/eeschema/sch_io/kicad_sexpr/sch_io_kicad_sexpr_parser.cpp @@ -578,6 +578,16 @@ LIB_SYMBOL* SCH_IO_KICAD_SEXPR_PARSER::parseLibSymbol( LIB_SYMBOL_MAP& aSymbolLi symbol->GetDrawItems().sort(); m_symbolName.clear(); + const std::vector* embeddedFonts = + symbol->GetEmbeddedFiles()->UpdateFontFiles(); + + symbol->RunOnChildren( + [&]( SCH_ITEM* aChild ) + { + if( EDA_TEXT* textItem = dynamic_cast( aChild ) ) + textItem->ResolveFont( embeddedFonts ); + } ); + return symbol.release(); }