Can't load vector font in Nuclex Framework

Posted by ProgrammerAtWork on Game Development See other posts from Game Development or by ProgrammerAtWork
Published on 2012-09-04T04:53:41Z Indexed on 2012/09/04 9:49 UTC
Read the original article Hit count: 352

Filed under:
|
|

I've been trying to get this to work for the last 2 hours and I'm not getting what I'm doing wrong...

I've added Nuclex.TrueTypeImporter to my references in my content and I've added Nuclex.Fonts & Nuclex.Graphics in my main project.

I've put Arial-24-Vector.spritefont & Lindsey.spritefont in the root of my content directory.

_spriteFont = Content.Load<SpriteFont>("Lindsey"); // works

_testFont = Content.Load<VectorFont>("Arial-24-Vector"); // crashes

I get this error on the _testFont line:

File contains Microsoft.Xna.Framework.Graphics.SpriteFont but trying to load as Nuclex.Fonts.VectorFont.

So I've searched around and by the looks of it it has something to do with the content importer & the content processor. For the content importer I have no new choices, so I leave it as it is, Sprite Font Description - XNA Framework for content processor and I select Vector Font - Nuclex Framework And then I try to run it.

_testFont = Content.Load<VectorFont>("Arial-24-Vector"); // crashes again

I get the following error

Error loading "Arial-24-Vector".

It does work if I load a sprite, so it's not a pathing problem. I've checked the samples, they do work, but I think they also use a different version of the XNA framework because in my version the "Content" class starts with a capital letter.

I'm at a loss, so I ask here.

Edit:

Something super weird is going on. I've just added the following two lines to a method inside FreeTypeFontProcessor::FreeTypeFontProcessor( Microsoft::Xna::Framework::Content::Pipeline::Graphics::FontDescription ^fontDescription, FontHinter hinter, just to check if code would even get there:

System::Console::WriteLine("I AM HEEREEE");
System::Console::ReadLine();

So, I compile it, put it in my project, I run it and... it works! What the hell?? This is weird because I've downloaded the binaries, they didn't work, I've compiled the binaries myself. didn't work either, but now I make a small change to the code and it works? >_>.

So, now I remove the two lines, compile it again and it works again. Someone care to elaborate what is going on? Probably some weird caching problem!

© Game Development or respective owner

Related posts about XNA

Related posts about c#