Reputation: 6142
I have a weird problem with the Windows Phone 8 emulator! I have a small test app where I change the 'page name' textbox on the mainpage so that it shows using a custom font. Now in the visual studio designer I see that font and when running the app I also see it in the emulator, so all is well...
But when I move the main page into a folder called View and change the WMAppManifest.xml to reflect this move > Navigation page is now set to View/MainPage.xaml. I'm still seeing this custom font in my designer, but not anymore in the emulator!!
I don't own a wp8 device yet... so can anyone verify this for me, if this problem is the same when you try to deploy the failure project to the phone?
And does anybody have any clue why this is happening? Very annoying not able to see the correct design in the emulator.
Upvotes: 5
Views: 7416
Reputation: 3843
First of all, you should save the external ttf into your project(If you want to use external font).
Then, you can use this:
FontFamily="Helvetica.ttf#Helvetica"
FontFamily="Cookies.ttf#Cookies"
When the .ttf font file is in the root folder, works fine in Design and Runtime.
FontFamily="/FontsTestApp;component/Cookies.ttf#Cookies"
Same as above.
FontFamily="/Font/Cookies.ttf#Cookies
When the .ttf font file is in the sub folder "font". Works fine in Design and Runtime.
FontFamily="../Fonts/Cookies.ttf#Cookies";
When the XAML file which uses the font resides in another subfolder. Works fine in Design and Runtime.
FontFamily="../Fonts/Cookies.ttf#Cookies";
If the XAML file is in the root folder, the font gets applied only at runtime not at design time.
Upvotes: 0
Reputation: 31
I hope you found the solution already. Please check out How to add Custom Fonts
This worked for me on Windows Phone 8 (Lumia 920)
It is very important to hashtag the font name after the .ttf
You can find the font name if you preview the ttf file on your PC and write the exact same font name.
Upvotes: 3
Reputation: 6142
Ok found the solution myself... it's because of the reference to the font inside the styles.xaml.
It should be a full path! So instead of setting:
<Setter Property="FontFamily" Value="Fonts/ClementePDae-Light.ttf#ClementePDae" />
Set this:
<Setter Property="FontFamily" Value="/PhoneApp1;component/Fonts/ClementePDae-Light.ttf#ClementePDae" />
Than everything works!
Upvotes: 9