Recorte com uma região
Uma das propriedades da classe Graphics é a região de recorte. Todo o desenho feito por um determinado objeto Graphics é restrito à região de recorte desse objeto Graphics . Você pode definir a região de recorte chamando o método SetClip .
O exemplo a seguir constrói um caminho que consiste em um único polígono. Em seguida, o código constrói uma região com base nesse caminho. O endereço da região é passado para o método SetClip de um objeto Graphics e, em seguida, duas cadeias de caracteres são desenhadas.
// Create a path that consists of a single polygon.
Point polyPoints[] = {Point(10, 10), Point(150, 10),
Point(100, 75), Point(100, 150)};
GraphicsPath path;
path.AddPolygon(polyPoints, 4);
// Construct a region based on the path.
Region region(&path);
// Draw the outline of the region.
Pen pen(Color(255, 0, 0, 0));
graphics.DrawPath(&pen, &path);
// Set the clipping region of the Graphics object.
graphics.SetClip(®ion);
// Draw some clipped strings.
FontFamily fontFamily(L"Arial");
Font font(&fontFamily, 36, FontStyleBold, UnitPixel);
SolidBrush solidBrush(Color(255, 255, 0, 0));
graphics.DrawString(L"A Clipping Region", 20, &font,
PointF(15, 25), &solidBrush);
graphics.DrawString(L"A Clipping Region", 20, &font,
PointF(15, 68), &solidBrush);
A ilustração a seguir mostra as cadeias de caracteres recortadas.