Silverlight 2, Importer une Font (une police) dans votre application

Voici une petite nouveauté Silverlight 2 qui je pense aura son importance auprès des graphistes : Silverlight 2 embarque l'import de Font nativement. Je m'explique, en Silverlight 1.0 lorsque vous aviez besoin d'utiliser une police spécifique dans votre application, vous étiez obligé d'utiliser l'objet Downloader pour télécharger la police sur le client.

Petit rappel avec Silverlight 1.0.

1 - On télécharge la font via l'objet Downloader :

function onLoad(sender, eventArgs)
{
     var plugin = sender.getHost();
     var downloader = plugin.createObject("downloader");
     downloader.addEventListener("Completed", onCompleted);
     downloader.open("GET", "angelica.ttf");
     downloader.send();
}

2 - Sur l'évènement onCompleted de l'objet Downloader on peut utiliser la méthode setFontSource en récupérant le sender autrement dit le fichier TTF :
function onCompleted(sender, eventArgs)
{
     var myTextBlock = sender.findName("myTextBlock");
     myTextBlock.setFontSource(sender);
     myTextBlock.fontFamily = "Angelica";
     myTextBlock.text = "TextBlock";
}
A présent avec Silverlight 2 il est possible de remplacer ces 10 lignes de code par "1 ligne" et ce directement dans votre fichier XAML :
 
<TextBlock Text="TextBlock" FontFamily="angelica.ttf#Angelica" FontSize="72"/>
 
Respecter la syntaxe suivante : FontFamily="fichier(.tff||.zip)#Le nom de la police"
...et vous pourrez arriver à ce type de résultat :

image 
Bien entendu, que ce soit avec Blend ou Visual Studio n'oubliez pas d'inclure la police en question dans votre projet...
Pratique quand votre graphiste n' est pas adepte des fonts windows par défaut... non je ne citerais personne.

Source : http://msdn.microsoft.com/en-us/library/cc189010(VS.95).aspx

Publié mardi 20 mai 2008 18:02 par guillaume
Classé sous , , , , ,
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :

Commentaires


Les 10 derniers blogs postés

- TechDays 2010 Genève : Retrouvez-moi pour une session sur la Haute disponibilité et le ScaleOut avec SQL Server par SQL Server vu par Christian Robert le il y a 8 heures et 27 minutes

- [MIX10] Keynote deuxième journée – Internet Explorer 9, Html5, Visual Studio 2010, OData par Atteint de JavaScriptite Aiguë [Cyril Durand] le 03-17-2010, 19:40

- Certifications beta .NET 4 par Kévin Gosse le 03-17-2010, 19:33

- [Mix 2010] – Microsoft Translator Technology Preview V2 par RedoBlog - The .NET Gentleman !!! le 03-17-2010, 18:53

- Lancement en Preview de Cyclone lors des TechDays 2010! par Blog de Frédéric Queudret le 03-17-2010, 16:30

- [WP7] Je ne veux pas d’un nouvel iPhone par Le blog de FremyCompany le 03-17-2010, 13:11

- [WF4] Pourquoi utiliser le ContentPresenter dans l’ActivityDesigner? par Blog de Jérémy Jeanson le 03-17-2010, 07:54

- [Mix 2010] – Telechargez Internet Explorer 9 en Preview ! par RedoBlog - The .NET Gentleman !!! le 03-17-2010, 00:58

- [MIX 2010] – Keynote Day 2 online : Windows Internet Explorer 9, jQuery, OData et Dallas CTP2 ! par RedoBlog - The .NET Gentleman !!! le 03-17-2010, 00:18

- [Mix 2010] – Retour d’expérience développement Seesmic sur Windows Phone 7 par RedoBlog - The .NET Gentleman !!! le 03-16-2010, 23:44