diff --git a/ANX.Framework.Content.Pipeline/Importer/FontDescriptionImporter.cs b/ANX.Framework.Content.Pipeline/Importer/FontDescriptionImporter.cs index 7054e04f..b8a2e17a 100644 --- a/ANX.Framework.Content.Pipeline/Importer/FontDescriptionImporter.cs +++ b/ANX.Framework.Content.Pipeline/Importer/FontDescriptionImporter.cs @@ -89,6 +89,18 @@ namespace ANX.Framework.Content.Pipeline.Importer FontDescriptionStyle fontStyle; Enum.TryParse(styleElement.Value, out fontStyle); + //Check for default character element and try to parse it + var defaultCharElement = assetNode.Element("DefaultCharacter"); + char? defaultChar = null; + if (defaultCharElement != null) + { + char c; + if (Char.TryParse(defaultCharElement.Value, out c)) + { + defaultChar = c; + } + } + //Get the character regions element to iterate through the character regions var charRegionsElement = assetNode.Element("CharacterRegions"); if (charRegionsElement == null) @@ -136,8 +148,8 @@ namespace ANX.Framework.Content.Pipeline.Importer _logger.LogMessage("Import of SpriteFont finished."); var result = new FontDescription(fontName, fontSize, fontSpacing, fontStyle) { - Characters = characters/*, - DefaultCharacter = '*'*/ //Currently disabled because the ContentLoader does not like this (Bad XNB) + Characters = characters, + DefaultCharacter = defaultChar //Currently disabled because the ContentLoader does not like this (Bad XNB) }; return result; diff --git a/ANX.Framework/Content/GraphicTypeReaders/SpriteFontReader.cs b/ANX.Framework/Content/GraphicTypeReaders/SpriteFontReader.cs index af040d93..6e474526 100644 --- a/ANX.Framework/Content/GraphicTypeReaders/SpriteFontReader.cs +++ b/ANX.Framework/Content/GraphicTypeReaders/SpriteFontReader.cs @@ -24,7 +24,12 @@ namespace ANX.Framework.Content int verticalLineSpacing = input.ReadInt32(); float horizontalSpacing = input.ReadSingle(); List kerning = input.ReadObject>(); - char? defaultCharacter = input.ReadObject(); + + char? defaultCharacter = null; + if (input.ReadBoolean()) + { + defaultCharacter = new char?(input.ReadChar()); + } SpriteFont spriteFont = new SpriteFont( texture, glyphs, cropping, characterMap, diff --git a/Samples/SampleContent/Fonts/Debug.spritefont b/Samples/SampleContent/Fonts/Debug.spritefont index 6e989615..cd1a12c1 100644 --- a/Samples/SampleContent/Fonts/Debug.spritefont +++ b/Samples/SampleContent/Fonts/Debug.spritefont @@ -41,7 +41,7 @@ sind. Wenn Sie den Kommentar von dieser Zeile entfernen, wird das Standardzeichen ersetzt, wenn Sie zeichnen oder Text messen, der Zeichen enthält, die in der Schriftart nicht enthalten sind. --> - + *