Condividi tramite


Metodo Ink.Clip

Aggiornamento: novembre 2007

Rimuove le parti di un oggetto Stroke o di un insieme Strokes esterne al rettangolo specificato.

Spazio dei nomi:  Microsoft.Ink
Assembly:  Microsoft.Ink (in Microsoft.Ink.dll)

Sintassi

'Dichiarazione
Public Sub Clip ( _
    r As Rectangle _
)
'Utilizzo
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
)

Parametri

Note

Il parametro r viene specificato nelle coordinate dello spazio di input penna.

Le parti dell'input penna esterne del rettangolo sono eliminate dall'oggetto Ink. Per questo motivo, il metodo Clip può aggiungere nuovi punti a un oggetto Stroke nel punto in cui l'oggetto Stroke interseca il rettangolo.

Dopo avere chiamato il metodo Clip in un oggetto Ink, le proprietà di ciascun oggetto Stroke nell'insieme Strokes dell'oggetto Ink possono cambiare. Ad esempio, quando un oggetto Stroke inizia all'interno dell'area del rettangolo di ritaglio, esce da tale rettangolo e quindi ritorna al suo interno; si ottengono due oggetti Stroke, di cui almeno uno dispone di una nuova proprietà Id. Nonostante questo comportamento, viene garantita l'unicità di tutte le proprietà Id all'interno di un oggetto Ink, anche se cambiano. Anche altre proprietà dell'oggetto Stroke possono essere sottoposte a modifiche simili.

Questo metodo non prende in considerazione lo spessore della penna durante il ritaglio. Ritaglia solo l'input penna effettivo o i dati relativi al tratto.

Per un oggetto Stroke o insieme Strokes, il metodo Clip aggiorna l'oggetto Ink padre. Tutte le volte che l'input penna viene rimosso da un oggetto Ink, tutti gli oggetti Stroke o insiemi Strokes definiti per quell'oggetto Ink possono essere invalidati.

Per ulteriori informazioni sulle modalità di modifica dei dati di input penna, vedere Ink Data.

Esempi

In questo esempio, l'area client del controllo dell'input penna viene ottenuta, convertita alle unità HIMETRIC, quindi ridotta in dimensione da 1500 unità. Il metodo Clip è utilizzato quindi per rimuovere le parti di oggetti Stroke che possono rimanere fuori del rettangolo.

' 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();

Piattaforme

Windows Vista

.NET Framework e .NET Compact Framework non supportano tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

Informazioni sulla versione

.NET Framework

Supportato in: 3.0

Vedere anche

Riferimenti

Ink Classe

Membri Ink

Spazio dei nomi Microsoft.Ink

Ink.HitTest

Stroke

Strokes