Функция BeginPath

Declare Function BeginPath Lib "gdi32" (ByVal hdc As Long) As Long

BeginPath начинает построение траектории на заданном контексте устройства. После построения требуемой траектории вызывайте функцию EndPath. С помощью траекторий, используя другие графические функции, можно добиться различных эффектов. Можно применять следующие графические функции: AngleArc, Arc, ArcTo, Chord, CloseFigure, Ellipse, ExtTextOut, LineTo, MoveToEx, Pie, PolyBezier, PolyBezierTo, PolyDraw, Polygon, Polyline, PolylineTo, PolyPolygon, PolyPolyline, Rectangle, RoundRect, TextOut

hdc
Описатель контекста устройства

Пример

' Выводим текст, содержащий фоновый рисунок
' Поместите на форме PictureBox
' и поместите в нее какую-нибудь картинку
Private Sub Form_Load()

Const TEXT1 = "Русский_Проект"
Dim new_font As Long
Dim old_font As Long
Dim hRgn As Long

' Подготовим PictureBox
ScaleMode = vbPixels
Picture1.AutoRedraw = True
Picture1.ScaleMode = vbPixels
Picture1.BorderStyle = vbBSNone
Picture1.BackColor = vbBlue
Picture1.ForeColor = vbBlack
Picture1.DrawWidth = 5

' Сделаем большой шрифт для удобства
new_font = CustomFont(150, 45, 0, 0, _
        FW_BOLD, False, False, False, _
        "Tahoma")
old_font = SelectObject(Picture1.hdc, new_font)

' Создаем регион
SelectObject Picture1.hdc, new_font
BeginPath Picture1.hdc
Picture1.CurrentX = (ScaleWidth - Picture1.TextWidth(TEXT1)) / 2
Picture1.CurrentY = -30
Picture1.Print TEXT1
EndPath Picture1.hdc
hRgn = PathToRegion(Picture1.hdc)

' Переводим PictureBox в регион
SetWindowRgn Picture1.hWnd, hRgn, False

' Восстанавливаем старый шрифт
SelectObject hdc, old_font

' Обязательно освобождаем ресурсы
DeleteObject new_font
End Sub

' Функция для создания своего шрифта
' и получения его описателя
Private Function CustomFont(ByVal hgt As Long, _
ByVal wid As Long, ByVal escapement As Long, _
ByVal orientation As Long, ByVal wgt As Long, _
ByVal is_italic As Long, ByVal is_underscored As Long, _
ByVal is_striken_out As Long, ByVal face As String) As Long
Const CLIP_LH_ANGLES = 16

    CustomFont = CreateFont( _
        hgt, wid, escapement, orientation, wgt, _
        is_italic, is_underscored, is_striken_out, _
        RUSSIAN_CHARSET
, 0, CLIP_LH_ANGLES, 0, 0, face)
End Function

Смотри также

EndPath, FillPath, PathToRegion, SelectClipPath, StrokeAndFillPath, StrokePath, WidenPath

Категория

Траектории

Реклама