Partager via


Ink.Clip, méthode

Mise à jour : November 2007

Supprime les parties d'un objet Stroke ou de la collection Strokes qui sont à l'extérieur d'un rectangle donné.

Espace de noms :  Microsoft.Ink
Assembly :  Microsoft.Ink (dans Microsoft.Ink.dll)

Syntaxe

'Déclaration
Public Sub Clip ( _
    r As Rectangle _
)
'Utilisation
Dim instance As Ink
Dim r As Rectangle

instance.Clip(r)
public void Clip(
    Rectangle r
)
public:
void Clip(
    Rectangle r
)
public void Clip(
    Rectangle r
)
public function Clip(
    r : Rectangle
)

Paramètres

Notes

Le paramètre r est spécifié selon les coordonnées de l'espace d'entrée manuscrite.

Les parties de l'entrée manuscrite situées hors du rectangle sont supprimées de l'objet Ink. En conséquence, la méthode Clip risque d'ajouter de nouveaux points sur un objet Stroke au point d'intersection de l'objet Stroke et du rectangle.

Après avoir appelé la méthode Clip sur un objet Ink, les propriétés de chaque objet Stroke dans la collection Strokes de l'objet Ink risquent de changer. Par exemple, si un objet Stroke commence dans la zone du rectangle de découpage, en sort, puis y retourne, il se transforme en deux objets Stroke, dont au moins un a une nouvelle propriété Id. En dépit de ce comportement, toutes les propriétés Id sont uniques dans un objet Ink, même si elles sont modifiées. D'autres propriétés pour l'objet Stroke peuvent également subir des modifications similaires.

Cette méthode ne prend pas en compte la largeur du stylet lors du découpage. Seules l'entrée manuscrite ou les données de trait réels sont découpés.

Pour un objet Stroke ou une collection Strokes, la méthode Clip met à jour l'objet Ink parent. Lorsque l'entrée manuscrite est supprimée d'un objet Ink, tous les objets Stroke ou collections Strokes définis pour cet objet Ink peuvent être invalidés.

Pour plus d'informations sur la manipulation des données d'entrée manuscrite, consultez Ink Data.

Exemples

Dans cet exemple, la zone cliente du contrôle d'entrée manuscrite est obtenue, convertie en unités HIMETRIC, puis sa taille est réduite de 1 500 unités. La méthode Clip est ensuite utilisée pour supprimer les parties des objets Stroke situées à l'extérieur du rectangle.

' get the bottom right point of the client area for ink
' Note: InkOverlay.AttachedControl property must be set
Dim bottomRight As Point = New Point(mInkOverlay.AttachedControl.ClientSize)
' convert to HIMETRIC units
Using g As Graphics = mInkOverlay.AttachedControl.CreateGraphics()
    mInkOverlay.Renderer.PixelToInkSpace(g, bottomRight)
End Using
' create a rectangle of the client area (HIMETRIC units)
Dim R As Rectangle = New Rectangle(0, 0, bottomRight.X, bottomRight.Y)
' shrink the rectangle by 1500 
R.Inflate(-1500, -1500)
' clip the strokes to the rectangle
mInkOverlay.Ink.Clip(R)
mInkOverlay.AttachedControl.Invalidate()
// get the bottom right point of the client area for ink
// Note: InkOverlay.AttachedControl property must be set
Point bottomRight = new Point(mInkOverlay.AttachedControl.ClientSize);
// convert to HIMETRIC units
using (Graphics g = mInkOverlay.AttachedControl.CreateGraphics())
{
    mInkOverlay.Renderer.PixelToInkSpace(g, ref bottomRight);
}
// create a rectangle of the client area (HIMETRIC units)
Rectangle R = new Rectangle(0, 0, bottomRight.X, bottomRight.Y);
// shrink the rectangle by 1500 
R.Inflate(-1500, -1500);
// clip the strokes to the rectangle
mInkOverlay.Ink.Clip(R);
mInkOverlay.AttachedControl.Invalidate();

Plateformes

Windows Vista

Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Informations de version

.NET Framework

Pris en charge dans : 3.0

Voir aussi

Référence

Ink, classe

Membres Ink

Microsoft.Ink, espace de noms

Ink.HitTest

Stroke

Strokes