Mesure la taille d'une cha�ne
#include <GDIPlus.au3>
_GDIPlus_GraphicsMeasureString ( $hGraphics, $sString, $hFont, $tLayout, $hFormat )
$hGraphics | Handle de l'objet Graphics |
$sString | Cha�ne � dessiner |
$hFont | Handle de la police qui sera utilis�e pour dessiner la cha�ne |
$tLayout | Structure $tagGDIPRECTF qui d�finit le rectangle dans lequel la cha�ne sera dessin�e |
$hFormat | Handle de l'objet StringFormat qui encapsule les informations relatives � la mise en page du texte, telles que l'alignement, l'orientation,... |
Succ�s: | Retourne un tableau au format suivant : [0] - Structure $tagGDIPRECTF qui re�oit le rectangle qui d�limite la cha�ne [1] - Le nombre de caract�res qui correspondent en fait � la mise en page du rectangle [2] - Le nombre de lignes qui correspondent � la mise en page du rectangle |
�chec: | D�finit @error <> 0, @extended contient le code erreur GPSTATUS ($GPID_ERR*). |
Consultez GdipMeasureString dans la Librairie MSDN.
#include <GDIPlus.au3> #include <GUIConstantsEx.au3> Example() Func Example() Local $hGUI, $hGraphic, $hBrush, $hFormat, $hFamily, $hFont, $tLayout, $aInfo Local $sString = "Hello world" ; Cr�e GUI $hGUI = GUICreate("GDI+", 400, 300) GUISetState(@SW_SHOW) ; Dessine une cha�ne _GDIPlus_Startup() $hGraphic = _GDIPlus_GraphicsCreateFromHWND($hGUI) $hBrush = _GDIPlus_BrushCreateSolid(0xFF00007F) $hFormat = _GDIPlus_StringFormatCreate() $hFamily = _GDIPlus_FontFamilyCreate("Arial") $hFont = _GDIPlus_FontCreate($hFamily, 12, 2) $tLayout = _GDIPlus_RectFCreate(140, 110, 0, 0) $aInfo = _GDIPlus_GraphicsMeasureString($hGraphic, $sString, $hFont, $tLayout, $hFormat) _GDIPlus_GraphicsDrawStringEx($hGraphic, $sString, $hFont, $aInfo[0], $hFormat, $hBrush) ; Boucle jusqu'� ce que l'utilisateur quitte. Do Until GUIGetMsg() = $GUI_EVENT_CLOSE ; Nettoie les ressources _GDIPlus_FontDispose($hFont) _GDIPlus_FontFamilyDispose($hFamily) _GDIPlus_StringFormatDispose($hFormat) _GDIPlus_BrushDispose($hBrush) _GDIPlus_GraphicsDispose($hGraphic) _GDIPlus_Shutdown() EndFunc ;==>Example