IXpsOMObjectFactory::CreateRadialGradientBrush-Methode (xpsobjectmodel.h)
Erstellt eine IXpsOMRadialGradientBrush-Schnittstelle .
Syntax
HRESULT CreateRadialGradientBrush(
[in] IXpsOMGradientStop *gradStop1,
[in] IXpsOMGradientStop *gradStop2,
[in] const XPS_POINT *centerPoint,
[in] const XPS_POINT *gradientOrigin,
[in] const XPS_SIZE *radiiSizes,
[out, retval] IXpsOMRadialGradientBrush **radialGradientBrush
);
Parameter
[in] gradStop1
Die IXpsOMGradientStop-Schnittstelle , die die Eigenschaften des Farbverlaufs am Ursprung des Farbverlaufs angibt. Dieser Parameter darf nicht NULL sein.
[in] gradStop2
Die IXpsOMGradientStop-Schnittstelle , die die Eigenschaften des Farbverlaufs am Ende des Farbverlaufsvektors angibt, d. h. die Ellipse, die den Farbverlaufsbereich umschließt. Dieser Parameter darf nicht NULL sein.
[in] centerPoint
Die Koordinaten des Mittelpunkts der radialen Farbverlaufsellipse.
[in] gradientOrigin
Die Koordinaten des Ursprungs des radialen Farbverlaufs.
[in] radiiSizes
Die XPS_SIZE Struktur, deren Elemente die Längen der Radien des Farbverlaufsbereichs angeben.
Die Größe wird in XPS-Einheiten beschrieben. Es gibt 96 XPS-Einheiten pro Zoll. Ein 1"-Radius ist beispielsweise 96 XPS-Einheiten.
XPS_SIZE Mitglied | Bedeutung |
---|---|
width | Länge des Radius entlang der x-Achse. |
height | Länge des Radius entlang der y-Achse. |
[out, retval] radialGradientBrush
Ein Zeiger auf die neue IXpsOMRadialGradientBrush-Schnittstelle .
Rückgabewert
Die Methode gibt ein HRESULT zurück. Mögliche Werte sind unter anderem die Werte in der folgenden Tabelle. Informationen zu XPS-Dokument-API-Rückgabewerten, die in dieser Tabelle nicht aufgeführt sind, finden Sie unter XPS-Dokumentfehler.
Rückgabecode | BESCHREIBUNG |
---|---|
|
Die Methode wurde erfolgreich ausgeführt. |
|
Der Von centerPoint, radiiSizes oder gradientOrigin beschriebene Punkt ist ungültig. Die Member der XPS_POINT-Struktur müssen gültige und endliche Gleitkommawerte enthalten. |
|
gradStop1, gradStop2, centerPoint, gradientOrigin, radiiSizes oder radialGradientBrush ist NULL. |
|
gradStop1 oder gradStop1 verweist nicht auf eine erkannte Schnittstellenimplementierung. Die benutzerdefinierte Implementierung von XPS-Dokument-API-Schnittstellen wird nicht unterstützt. |
Hinweise
Wie in der folgenden Abbildung gezeigt, ist der Farbverlaufsbereich eines radialen Farbverlaufs der von der Ellipse eingeschlossene Bereich, der durch den Mittelpunkt und die x- und y-Radien beschrieben wird, die sich vom Mittelpunkt erstrecken. Der Spreizbereich ist der Bereich außerhalb dieser Ellipse. Der Farbverlaufspfad (nicht dargestellt) ist eine radiale Linie, die zwischen dem Farbverlaufsursprung und der Ellipse gezeichnet wird, die den Farbverlaufsbereich begrenzt.
Bei radialen Farbverlaufspinsel entspricht der Farbverlaufsstopp, der durch den gradStop1-Parameter festgelegt wird, der Position des Farbverlaufsursprungs und einem Offsetwert von 0,0. Der durch den gradStop2-Parameter festgelegte Farbverlaufsstopp entspricht dem Umfang des Farbverlaufsbereichs und einem Offsetwert von 1,0. Weitere Informationen zu Farbverlaufsstopps finden Sie unter IXpsOMGradientStop.Das folgende Codebeispiel veranschaulicht, wie diese Methode zum Erstellen einer neuen Schnittstelle verwendet wird.
IXpsOMRadialGradientBrush *newInterface;
// The following values are defined outside of
// this example.
// IXpsOMGradientStop *gradStop1, *gradStop2;
// XPS_POINT centerPoint, gradientOrigin;
// XPS_SIZE radiiSizes;
// 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->CreateRadialGradientBrush (
gradStop1,
gradStop2,
¢erPoint,
&gradientOrigin,
&radiiSizes,
&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 |