2009-07-01 3 views
1

Je souhaite utiliser dans mon application WinForms une police utilisée dans l'application console .net.Comment utiliser la police DOS dans l'application WinForms

De quelle police ai-je besoin? La police Lucida n'est pas la police qui est utilisée dans l'application console .NET telle que je la vois. Donc Lucida Console n'est pas celle que je veux.

+0

AS demande un arbitre, pourquoi n'est-ce pas la réponse? C'est la police qui est utilisée dans les applications de console. Y a-t-il d'autres exigences que vous ne mentionnez pas? –

+0

J'ai trouvé ce fil de discussion http://bytes.com/sitemap/t-213834.html il est dit qu'il n'y a pas de moyen p-invoke-moins pour utiliser les polices raster sur WinForm. –

Répondre

7

Pourquoi Lucida Console n'est pas la solution? Parce que c'est. En anglais os, il n'y a que deux polices pour la console: Lucida Console qui est TTF, et Terminal qui est bitmap (Vous ne pouvez pas utiliser cette police directement, vous devez charger vgaoem.fon si vous voulez l'utiliser). Vous pouvez lire plus here. Liste des polices ttf disponibles pour la console située dans le registre: HKLM \ Software \ Microsoft \ Windows NT \ CurrentVersion \ Console \ TrueTypeFont. Vous pouvez lire sur les exigences pour ces polices dans le KB article.

Et si vous regardez dans cette clé de registre, vous verrez que par défaut il n'y a qu'une seule police ttf disponible - Lucida Console.

+0

Je cours mon .NET Console App et je vois que la police utilisée n'est pas Lucida. Lucida n'a pas l'air assez cool. –

+0

Alors, comment charger un vgaoem.fon et l'utiliser? (+1 pour votre réponse de toute façon) –

+0

Gdi + ne supporte pas les polices bitmap, seulement ttf. Donc, si vous voulez utiliser ces polices, vous devez via l'interopérabilité du système (regardez la fonction CreateFont win32). – arbiter

0

Il existe également un service de messagerie (nouveau).

0

Il semble que votre police d'invite de commande/commande ait été modifiée. Essayez de le faire:

Ouvrez l'invite de commande. Cliquez droit sur l'icône en haut à gauche de la fenêtre et sélectionnez "Propriétés". Dans la fenêtre des propriétés, cliquez sur l'onglet "Police". Vous verrez une liste de polices potentielles, ainsi que celle qui a été sélectionnée.

J'ai personnellement utilisé un hack pour faire fonctionner la police Consolas sur mon invite de commande, et la police Courier New est toujours une police de style "classique". Si vous faites référence à la fenêtre qui apparaît au bas de Visual Studio comme votre «console», vous pouvez trouver cette police en sélectionnant Outils-> Options dans le menu et en sélectionnant «Polices et Couleurs d'Environnement» paramètres. Sélectionnez "Output View" dans la liste déroulante et il affichera la police utilisée.

+0

Courier New est cool et tout. Mais ce que je veux, c'est simplement avoir une application qui ressemble à une application de console avec peu d'effets supplémentaires. J'ai donc fait un contrôle utilisateur qui utilise pour l'instant une zone de texte avec une police (Lucida Console), mais différente de la police de fenêtre "invite de commande" (qui est définie sur Raster Fonts 8x12, ce que je veux). –

Questions connexes