IXpsOMObjectFactory::CreateLinearGradientBrush-Methode (xpsobjectmodel.h)
Erstellt eine IXpsOMLinearGradientBrush-Schnittstelle .
Syntax
HRESULT CreateLinearGradientBrush(
[in] IXpsOMGradientStop *gradStop1,
[in] IXpsOMGradientStop *gradStop2,
[in] const XPS_POINT *startPoint,
[in] const XPS_POINT *endPoint,
[out, retval] IXpsOMLinearGradientBrush **linearGradientBrush
);
Parameter
[in] gradStop1
Die IXpsOMGradientStop-Schnittstelle , die die Farbverlaufseigenschaften am Anfang des Farbverlaufsvektors angibt. Dieser Parameter darf nicht NULL sein.
[in] gradStop2
Die IXpsOMGradientStop-Schnittstelle , die die Farbverlaufseigenschaften am Ende des Farbverlaufsvektors angibt. Dieser Parameter darf nicht NULL sein.
[in] startPoint
Die XPS_POINT Struktur, die die Koordinaten des Startpunkts im zweidimensionalen Raum enthält.
[in] endPoint
Die XPS_POINT Struktur, die die Koordinaten des Endpunkts im zweidimensionalen Raum enthält.
[out, retval] linearGradientBrush
Ein Zeiger auf die neue IXpsOMLinearGradientBrush-Schnittstelle .
Rückgabewert
Die Methode gibt ein HRESULT zurück. Mögliche Werte sind unter anderem diejenigen in der folgenden Tabelle. Informationen zu Rückgabewerten der XPS-Dokument-API, die in dieser Tabelle nicht aufgeführt sind, finden Sie unter XPS-Dokumentfehler.
Rückgabecode | BESCHREIBUNG |
---|---|
|
Die Methode wurde erfolgreich ausgeführt. |
|
Der von startPoint oder endPoint angegebene Punkt war ungültig. Die Member der XPS_POINT-Struktur müssen gültige und endliche Gleitkommawerte enthalten. |
|
gradStop1, gradStop2, startPoint, figure oder linearGradientBrush ist NULL. |
|
gradStop1 oder gradStop1 verweist nicht auf eine erkannte Schnittstellenimplementierung. Die benutzerdefinierte Implementierung von XPS-Dokument-API-Schnittstellen wird nicht unterstützt. |
Hinweise
Der Farbverlaufsbereich eines linearen Farbverlaufs ist der Bereich zwischen und einschließlich des Start- und Endpunkts und erstreckt sich in beiden Richtungen im rechten Winkel zum Farbverlaufspfad. Der Verteilungsbereich ist der Bereich der Geometrie, der außerhalb des Farbverlaufsbereichs liegt.
Farbverlaufsstopps definieren die Farbe an bestimmten Stellen entlang des Farbverlaufspfads. In der Abbildung befindet sich der durch den gradStop1-Parameter angegebene Farbverlaufsstopp 0 am Startpunkt des Farbverlaufspfads, und der Durch den gradStop2-Parameter angegebene Gradientenstopp 1 befindet sich am Endpunkt.
Wie in der folgenden Abbildung gezeigt, sind die Anfangs- und Endpunkte eines linearen Farbverlaufs auch die Anfangs- und Endpunkte des Farbverlaufspfads, d. h. die gerade Linie, die diese Punkte verbindet.
Im folgenden Codebeispiel wird veranschaulicht, wie diese Methode zum Erstellen einer neuen Schnittstelle verwendet wird.
IXpsOMLinearGradientBrush *newInterface;
// The following values are defined outside of
// this example.
// IXpsOMGradientStop *gradStop1, *gradStop2;
// XPS_POINT startPoint, endPoint;
// Note the implicit requirement that CoInitializeEx
// has previously been called from this thread.
hr = CoCreateInstance(
__uuidof(XpsOMObjectFactory),
NULL,
CLSCTX_INPROC_SERVER,
_uuidof(IXpsOMObjectFactory),
reinterpret_cast<LPVOID*>(&xpsFactory)
);
if (SUCCEEDED(hr))
{
hr = xpsFactory->CreateLinearGradientBrush (
gradStop1,
gradStop2,
&startPoint,
&endPoint,
&newInterface);
if (SUCCEEDED(hr))
{
// use newInterface
newInterface->Release();
}
xpsFactory->Release();
}
else
{
// evaluate HRESULT error returned in hr
}
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 7, Windows Vista mit SP2 und Plattformupdate für Windows Vista [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 R2, Windows Server 2008 mit SP2 und Plattformupdate für Windows Server 2008 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | xpsobjectmodel.h |