CustomLineCap Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Incapsula un delimitatore di linea personalizzato definito dall'utente.
public ref class CustomLineCap : MarshalByRefObject, ICloneable, IDisposable
public class CustomLineCap : MarshalByRefObject, ICloneable, IDisposable
type CustomLineCap = class
inherit MarshalByRefObject
interface ICloneable
interface IDisposable
Public Class CustomLineCap
Inherits MarshalByRefObject
Implements ICloneable, IDisposable
- Ereditarietà
- Derivato
- Implementazioni
Esempio
Nell'esempio riportato di seguito viene illustrato come utilizzare la classe CustomLineCap. Per eseguire questo esempio incollare il codice in un Windows Form. Gestire l'evento e la chiamata DrawCaps
del Paint modulo dal metodo di gestione degli eventi del Paint modulo, passando e
come PaintEventArgs.
protected void DrawCaps(PaintEventArgs e)
{
GraphicsPath hPath = new GraphicsPath();
// Create the outline for our custom end cap.
hPath.AddLine(new Point(0, 0), new Point(0, 5));
hPath.AddLine(new Point(0, 5), new Point(5, 1));
hPath.AddLine(new Point(5, 1), new Point(3, 1));
// Construct the hook-shaped end cap.
CustomLineCap HookCap = new CustomLineCap(null, hPath);
// Set the start cap and end cap of the HookCap to be rounded.
HookCap.SetStrokeCaps(LineCap.Round, LineCap.Round);
// Create a pen and set end custom start and end
// caps to the hook cap.
Pen customCapPen = new Pen(Color.Black, 5);
customCapPen.CustomStartCap = HookCap;
customCapPen.CustomEndCap = HookCap;
// Create a second pen using the start and end caps from
// the hook cap.
Pen capPen = new Pen(Color.Red, 10);
LineCap startCap;
LineCap endCap;
HookCap.GetStrokeCaps(out startCap, out endCap);
capPen.StartCap = startCap;
capPen.EndCap = endCap;
// Create a line to draw.
Point[] points = { new Point(100, 100), new Point(200, 50),
new Point(250, 300) };
// Draw the lines.
e.Graphics.DrawLines(capPen, points);
e.Graphics.DrawLines(customCapPen, points);
}
Protected Sub DrawCaps(ByVal e As PaintEventArgs)
Dim hPath As New GraphicsPath()
' Create the outline for our custom end cap.
hPath.AddLine(New Point(0, 0), New Point(0, 5))
hPath.AddLine(New Point(0, 5), New Point(5, 1))
hPath.AddLine(New Point(5, 1), New Point(3, 1))
' Construct the hook-shaped end cap.
Dim HookCap As New CustomLineCap(Nothing, hPath)
' Set the start cap and end cap of the HookCap to be rounded.
HookCap.SetStrokeCaps(LineCap.Round, LineCap.Round)
' Create a pen and set end custom start and end
' caps to the hook cap.
Dim customCapPen As New Pen(Color.Black, 5)
customCapPen.CustomStartCap = HookCap
customCapPen.CustomEndCap = HookCap
' Create a second pen using the start and end caps from
' the hook cap.
Dim capPen As New Pen(Color.Red, 10)
Dim startCap As LineCap
Dim endCap As LineCap
HookCap.GetStrokeCaps(startCap, endCap)
capPen.StartCap = startCap
capPen.EndCap = endCap
' Create a line to draw.
Dim points As Point() = {New Point(100, 100), New Point(200, 50), _
New Point(250, 300)}
' Draw the lines.
e.Graphics.DrawLines(capPen, points)
e.Graphics.DrawLines(customCapPen, points)
End Sub
Commenti
I limiti di linea vengono usati all'inizio e alle estremità di linee o curve disegnate da oggetti GDI+ Pen . GDI+ supporta diversi stili di limite predefiniti e consente anche agli utenti di definire i propri stili di limite. Questa classe viene usata per creare stili di limite personalizzati.
Nota
In .NET 6 e versioni successive il pacchetto System.Drawing.Common, che include questo tipo, è supportato solo nei sistemi operativi Windows. L'uso di questo tipo nelle app multipiattaforma causa avvisi in fase di compilazione e eccezioni in fase di esecuzione. Per altre informazioni, vedere System.Drawing.Common supportato solo in Windows.
Costruttori
CustomLineCap(GraphicsPath, GraphicsPath) |
Inizializza una nuova istanza della classe CustomLineCap con il contorno e il riempimento specificati. |
CustomLineCap(GraphicsPath, GraphicsPath, LineCap) |
Inizializza una nuova istanza della classe CustomLineCap dall'enumerazione LineCap esistente specificata con il contorno e il riempimento indicati. |
CustomLineCap(GraphicsPath, GraphicsPath, LineCap, Single) |
Inizializza una nuova istanza della classe CustomLineCap dall'enumerazione LineCap esistente specificata con il contorno, riempimento e interno indicati. |
Proprietà
BaseCap |
Ottiene o imposta l'enumerazione LineCap sulla quale si basa questo CustomLineCap. |
BaseInset |
Ottiene o imposta la distanza tra il delimitatore e la linea. |
StrokeJoin |
Ottiene o imposta l'enumerazione LineJoin che determina la modalità di unione delle linee che compongono questo oggetto CustomLineCap. |
WidthScale |
Ottiene o imposta il valore in base al quale modificare le proporzioni di questo oggetto della classe CustomLineCap rispetto alla larghezza dell'oggetto Pen. |
Metodi
Clone() |
Crea una copia esatta di questo CustomLineCap. |
CreateObjRef(Type) |
Consente di creare un oggetto che contiene tutte le informazioni rilevanti necessarie per la generazione del proxy utilizzato per effettuare la comunicazione con un oggetto remoto. (Ereditato da MarshalByRefObject) |
Dispose() |
Rilascia tutte le risorse usate dall'oggetto CustomLineCap. |
Dispose(Boolean) |
Rilascia le risorse non gestite usate da CustomLineCap e, facoltativamente, le risorse gestite. |
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
Finalize() |
Consente a un oggetto CustomLineCap di provare a liberare risorse ed eseguire altre operazioni di pulizia prima che l'oggetto CustomLineCap stesso venga recuperato dalla procedura di Garbage Collection. |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetLifetimeService() |
Obsoleti.
Consente di recuperare l'oggetto servizio di durata corrente per controllare i criteri di durata per l'istanza. (Ereditato da MarshalByRefObject) |
GetStrokeCaps(LineCap, LineCap) |
Ottiene i delimitatori utilizzati per iniziare e terminare le linee che compongono questo delimitatore personalizzato. |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
InitializeLifetimeService() |
Obsoleti.
Ottiene un oggetto servizio di durata per controllare i criteri di durata per questa istanza. (Ereditato da MarshalByRefObject) |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
MemberwiseClone(Boolean) |
Crea una copia dei riferimenti dell'oggetto MarshalByRefObject corrente. (Ereditato da MarshalByRefObject) |
SetStrokeCaps(LineCap, LineCap) |
Imposta i delimitatori utilizzati per iniziare e terminare le linee che compongono questo delimitatore personalizzato. |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |