# Function Reference

# _GUICtrlRichEdit_ChangeFontSize

Increment or decrement font size(s) of selected text

#include <GuiRichEdit.au3>
_GUICtrlRichEdit_ChangeFontSize ( $hWnd, $iIncrement )

## Parameters

$hWnd | Handle to the control
$iIncrement | Positive to increase, negative to decrease

## Return Value

Succcess: | True, Font sizes were changed.
Failure: | False and may sets the @error flag to non-zero.
@error: | 101 - $hWnd is not a handle 102 - $iIncrement is not a number -1 - no text selected

## Remarks

If there are several font sizes in the selected text, all are incremented/decremented.
For $iIncrement positive, font sizes are rounded up; for $iIncrement negative, they are rounded down.
Rich Edit first adds $iIncrement to the existing font size. It then rounds up (or down) as follows:
<= 12 points: 1 e.g. 7 + 1 => 8 points, 14 - 3 => 10 points
12.05 to 28 points: 20 + 2.25 => 24 points
28.05 to 80 points: rounded to next of 28, 36, 48, 72 or 80, e.g. 28 + 1 => 36 points, 80 - 1 => 72 points
> 80 points: 10, e.g. 80 + 1 => 90

## Related

_GUICtrlRichEdit_SetFont

## See Also

Search EM_SETFONTSIZE in MSDN Library.

## Example

    #include <GUIConstantsEx.au3>
    #include <GuiRichEdit.au3>
    #include <WindowsStylesConstants.au3>

    Global $g_idLbl_Msg, $g_hRichEdit

    Example()

    Func Example()
        Local $hGui, $iMsg, $idBtn_DoIt
        $hGui = GUICreate("Example (" & StringTrimRight(@ScriptName, StringLen(".exe")) & ")", 320, 350, -1, -1)
        $g_hRichEdit = _GUICtrlRichEdit_Create($hGui, "This is a test.", 10, 10, 300, 220, _
                BitOR($ES_MULTILINE, $WS_VSCROLL, $ES_AUTOVSCROLL))
        $g_idLbl_Msg = GUICtrlCreateLabel("", 10, 235, 300, 60)
        $idBtn_DoIt = GUICtrlCreateButton("Do it", 270, 310, 40, 30)
        GUISetState(@SW_SHOW)

        _GUICtrlRichEdit_SetSel($g_hRichEdit, 0, -1) ; select all

        While True
            $iMsg = GUIGetMsg()
            Select
                Case $iMsg = $GUI_EVENT_CLOSE
                    _GUICtrlRichEdit_Destroy($g_hRichEdit) ; needed unless script crashes
                    ; GUIDelete()   ; is OK too
                    Exit
                Case $iMsg = $idBtn_DoIt
                    ChangeFontSize()
            EndSelect
        WEnd
    EndFunc   ;==>Example

    Func ChangeFontSize()
        Local $avArray, $iOld, $iNew
        $avArray = _GUICtrlRichEdit_GetFont($g_hRichEdit)
        $iOld = $avArray[0]
        _GUICtrlRichEdit_ChangeFontSize($g_hRichEdit, 2)
        $avArray = _GUICtrlRichEdit_GetFont($g_hRichEdit)
        $iNew = $avArray[0]
        Report("Was " & $iOld & " points; is now " & $iNew & " points")
    EndFunc   ;==>ChangeFontSize

    Func Report($sMsg)
        GUICtrlSetData($g_idLbl_Msg, $sMsg)
    EndFunc   ;==>Report