Clippfade
Wie ein Clippingbereich ist ein Clippfad ein weiteres Grafikobjekt, das eine Anwendung in einen Gerätekontext auswählen kann. Im Gegensatz zu einem Beschneidungsbereich wird ein Clippfad immer von einer Anwendung erstellt und zum Beschneiden auf eine oder mehrere unregelmäßige Formen verwendet. Beispielsweise kann eine Anwendung die Linien und Kurven verwenden, die die Umrisse von Zeichen in einer Textzeichenfolge bilden, um einen Clippfad zu definieren.
Um einen Clippfad zu erstellen, muss zunächst ein Pfad erstellt werden, der die erforderliche unregelmäßige Form beschreibt. Pfade werden erstellt, indem die entsprechenden GDI-Zeichnungsfunktionen (Graphics Device Interface) nach dem Aufruf der BeginPath-Funktion und vor dem Aufruf der EndPath-Funktion aufgerufen werden. Diese Auflistung von Funktionen wird als Pfadklammer bezeichnet. Weitere Informationen zu Pfaden und Pfadklammern finden Sie unter Pfade.
Nachdem der Pfad erstellt wurde, kann er in einen Clippfad konvertiert werden, indem die SelectClipPath-Funktion aufgerufen, ein Gerätekontext identifiziert und ein Verwendungsmodus angegeben wird. Der Verwendungsmodus bestimmt, wie das System den neuen Clippfad mit dem ursprünglichen Clippingbereich des Gerätekontexts kombiniert. In der folgenden Tabelle werden die Verwendungsmodi beschrieben.
Mode | BESCHREIBUNG |
---|---|
RGN_AND | Der Clippfad enthält die Schnittmenge (überlappende Bereiche) des Beschneidungsbereichs des Gerätekontexts und den aktuellen Pfad. |
RGN_COPY | Der Clippfad ist der aktuelle Pfad. |
RGN_DIFF | Der Clippfad enthält den Clippingbereich des Gerätekontexts, wobei alle sich überschneidende Teile des aktuellen Pfads ausgeschlossen sind. |
RGN_OR | Der Clippfad enthält die Union (kombinierte Bereiche) des Beschneidungsbereichs des Gerätekontexts und den aktuellen Pfad. |
RGN_XOR | Der Clippfad enthält die Union des Beschneidungsbereichs des Gerätekontexts und den aktuellen Pfad, schließt jedoch die Schnittmenge aus. |