Un label orientable à 360° et etirable v3

Description

Voici un Label dont le texte est étirable et orientable à 360° version 3.

Installation:
Installer le composant TOrLabel contenu dans le fichier UOrLabel.PAS

Utilisation:
Comme un label mais avec quelques changements :
- la propriété Font n'existe pas, utilisez OrFont
- OrFont.Orient défini la rotation par pas de 0,1 degré du texte entier
- OrFont.Incline défini la rotation de chaque caractère de la chaine
OrLabel.InclineMode doit être à IM_ADVANCED pour que incline soit utilisé.
IM_ADVANCED et donc incline ne fonctionne pas sous W95,W98 et WMe
- OrFont.Width défini la largeur moyenne d'un caractère. ( NOUVEAU )
Si width=0 alors la taille par défaut est utilisée
- OrLabel.AutoSize fonctionne
- OrLabel ne fonctionne qu'avec des polices TrueType
- Alignement/WordWarp etc n'existent pas...

Remarques:
TOrFont n'est pas descendante de TFont, elle ne peut donc pas être assignée à un autre composant.Font. Mais vous pouvez l'utiliser dans vos propres composants : voir la méthode Paint du TOrLabel pour l'utilisation du TOrFont
TOrFont et TOrLabel fonctionnent avec Delphi5 et Delphi6.
TOrFont et TOrLabel fonctionnent sous W95 W98 WMe WNT4 W2000 ( merci Gysmo ). ( si quelqu'un pouvait essayer WXp svp ). Sous WNT4 le fond du texte est dessiné plus épais que sous W95/98
La propriété incline ne fonctionne pas avec W95,W98 et WMe. donc OrFont et OrLabel.InclineMode sont ignorés dans ce cas
Si vous avez WNT4 ou mieux, alors amusez-vous avec des valeur de Orient et Incline différentes ( voir démo )

Il est quand même dommage que Delphi n'est pas intégré l'orientation dans son TFont. En modifiant directement les fichiers Graphics.pas et Stdctrls.pas il aurait été possible de faire descendre OrFont de Font et OrLabel de label rapidement.

Conclusion :


Bug connu : Autosize ne fonctionne pas correctement en mode étendu si Orient<>Incline

Cette source et quelques autres sur : http://nono40.developpez.com

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.