8
votes

Meilleur moyen d'obtenir un effet de lueur Windows Phone 7

Je suis en train de jouer avec le téléphone Windows 7 SDK et j'essaie de ressembler à l'écran d'un ancien écran numérique de mode. En ce moment, j'essaie de comprendre comment rendre le texte "lueur" comme une de ces horloges numériques cool. C'est le genre de chose que je suppose que vous regarderiez à utiliser des shaders pour, mais il semble que les shaders soient désactivés pour une utilisation sur le système d'exploitation Windows Phone 7. Des idées? Pour être plus précis, je veux que le texte soit comme s'il s'agissait d'une source de lumière et que la couleur "saigne" soit légèrement de la police.


1 commentaires

retentrés à Silverlight et C # au lieu des versions 4.0 de ceux-ci. WinPhone7 n'utilise pas Silverlight 4, sa version 3.Custom de Silverlight.


3 Réponses :


0
votes

Vous devez effectuer une copie du texte de texte que vous souhaitez donner à la lueur. Liez la propriété de texte du nouvel élément à la propriété de texte d'origine d'origine (à l'aide de la liaison ElementName). Faites de même pour l'emplacement / la hauteur / la largeur, etc. ou toute autre propriété que vous jugez changer sur l'élément d'origine. Définissez une transparence sur le nouvel élément ainsi qu'un effet flou. Cela vous donnera un effet de lueur cool que vous voulez.


1 commentaires

Comme indiqué dans les commentaires sur l'autre réponse à cette question, des effets ont été supprimés et ne sont plus pris en charge dans WP7.



12
votes

Je dirais que c'est un choix entre utiliser une image comme une police ou flou avec WriterAedicBitmap.

L'utilisation d'une image de police pré-fabriquée vous permet de rendre les lettres un complexe à votre guise et de bien performer. SpritTefont2 est pratique car il peut générer la feuille de sprnation avec des effets tels que lueur, trait, ombre et exporter un fichier XML contenant les positions de la lettre. Ajoutez les fichiers PNG générés et XML à votre solution et modifiez l'action de construction en contenu. Vérifiez également que vous avez référencé System.xml.linq. P>

La classe suivante peut ensuite être utilisée. P>

//Register the font once.
BitmapFont.RegisterFont("Font.png", "Metrics.xml");

//Draws the text to a new bitmap, font name is image name without extension.
image.Source = BitmapFont.DrawFont(DateTime.Now.ToLongTimeString(), "Font");

//Alternatively put these elements in a horizontal StackPanel, or ItemsControl
//This doesn't create any new bitmaps and should be more efficient.
//You could alter the method to transform each letter too.
BitmapFont.GetElements(DateTime.Now.ToLongTimeString(), "Font");


1 commentaires

Merci! Utiliser SpritTfont2 est une excellente suggestion.



0
votes

1 commentaires

Les 2 premiers sont des effets brillants sur les formes. On dirait qu'il serait difficile de faire fonctionner un pensionnaire sur des caractères de police. La démonstration en direct et les liens source de votre 3ème article sont cassés.