GraphicsPath::GetBounds(Rect*,constMatrix*,constPen*) metode (gdipluspath.h)
Metode GraphicsPath::GetBounds mendapatkan persegi panjang pembatas untuk jalur ini.
Sintaks
Status GetBounds(
[out] Rect *bounds,
[in] const Matrix *matrix,
[in] const Pen *pen
);
Parameter
[out] bounds
Jenis: Rect*
Penunjuk ke objek Rect yang menerima persegi panjang pembatas.
[in] matrix
Jenis: const Matrix*
Pilihan. Penunjuk ke objek Matriks yang menentukan transformasi yang akan diterapkan ke jalur ini sebelum persegi panjang pembatas dihitung. Jalur ini tidak diubah secara permanen; transformasi hanya digunakan selama proses penghitungan persegi panjang pembatas. Nilai defaultnya adalah NULL.
[in] pen
Jenis: const Pen*
Opsional. Penunjuk ke objek Pena yang memengaruhi ukuran persegi panjang pembatas. Persegi panjang pembatas yang diterima dalam batas akan cukup besar untuk mengapit jalur ini ketika jalur digambar dengan pena yang ditentukan oleh parameter ini. Ini memastikan bahwa jalur diapit oleh persegi panjang pembatas bahkan jika jalur digambar dengan pena lebar. Nilai defaultnya adalah NULL.
Nilai kembali
Jenis: Status
Jika metode berhasil, metode mengembalikan Ok, yang merupakan elemen dari enumerasi Status .
Jika metode gagal, metode mengembalikan salah satu elemen lain dari enumerasi Status .
Keterangan
Persegi panjang yang dikembalikan oleh metode ini mungkin lebih besar dari yang diperlukan untuk mengapit jalur seperti yang digambar oleh pena yang ditentukan. Persegi panjang dihitung untuk memungkinkan batas mil pena pada sudut tajam dan untuk memungkinkan tutup akhir pena.
Contoh
Contoh berikut membuat jalur yang memiliki satu kurva dan satu elips. Kode ini menggambar jalan dengan pena kuning tebal dan pena hitam tipis. Metode GraphicsPath::GetBounds menerima alamat pena kuning tebal dan menghitung persegi panjang pembatas untuk jalur tersebut. Kemudian kode menggambar persegi panjang pembatas.
VOID GetBoundsExample(HDC hdc)
{
Graphics graphics(hdc);
Pen blackPen(Color(255, 0, 0, 0), 1);
Pen yellowPen(Color(255, 255, 255, 0), 10);
Pen redPen(Color(255, 255, 0, 0), 1);
Point pts[] = {Point(120,120),
Point(200,130),
Point(150,200),
Point(130,180)};
// Create a path that has one curve and one ellipse.
GraphicsPath path;
path.AddClosedCurve(pts, 4);
path.AddEllipse(120, 220, 100, 40);
// Draw the path with a thick yellow pen and a thin black pen.
graphics.DrawPath(&yellowPen, &path);
graphics.DrawPath(&blackPen, &path);
// Get the path's bounding rectangle.
Rect rect;
path.GetBounds(&rect, NULL, &yellowPen);
graphics.DrawRectangle(&redPen, rect);
}
Color(255, 0, 0, 0)Color(255, 255, 0, 0)
Persyaratan
Klien minimum yang didukung | Windows XP, Windows 2000 Professional [hanya aplikasi desktop] |
Server minimum yang didukung | Windows 2000 Server [hanya aplikasi desktop] |
Target Platform | Windows |
Header | gdipluspath.h (termasuk Gdiplus.h) |
Pustaka | Gdiplus.lib |
DLL | Gdiplus.dll |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk