IXpsOMObjectFactory ::CreateLinearGradientBrush, méthode (xpsobjectmodel.h)
Crée une interface IXpsOMLinearGradientBrush .
Syntaxe
HRESULT CreateLinearGradientBrush(
[in] IXpsOMGradientStop *gradStop1,
[in] IXpsOMGradientStop *gradStop2,
[in] const XPS_POINT *startPoint,
[in] const XPS_POINT *endPoint,
[out, retval] IXpsOMLinearGradientBrush **linearGradientBrush
);
Paramètres
[in] gradStop1
Interface IXpsOMGradientStop qui spécifie les propriétés de dégradé au début du vecteur du dégradé. Ce paramètre ne doit pas être NULL.
[in] gradStop2
Interface IXpsOMGradientStop qui spécifie les propriétés de dégradé à la fin du vecteur du dégradé. Ce paramètre ne doit pas être NULL.
[in] startPoint
Le XPS_POINT structure qui contient les coordonnées du point de départ dans un espace à deux dimensions.
[in] endPoint
Le XPS_POINT structure qui contient les coordonnées du point de terminaison dans un espace à deux dimensions.
[out, retval] linearGradientBrush
Pointeur vers la nouvelle interface IXpsOMLinearGradientBrush .
Valeur retournée
Cette méthode retourne un code HRESULT. Les valeurs possibles incluent, sans s’y limiter, celles du tableau qui suit. Pour plus d’informations sur les valeurs de retour de l’API de document XPS qui ne sont pas répertoriées dans ce tableau, consultez Erreurs de document XPS.
Code de retour | Description |
---|---|
|
S_OK |
|
Le point spécifié par startPoint ou endPoint n’était pas valide. Les membres de la structure XPS_POINT doivent contenir des valeurs à virgule flottante valides et finies. |
|
gradStop1, gradStop2, startPoint, figure ou linearGradientBrush a la valeur NULL. |
|
gradStop1 ou gradStop1 ne pointe pas vers une implémentation d’interface reconnue. L’implémentation personnalisée des interfaces d’API document XPS n’est pas prise en charge. |
Remarques
La région de dégradé d’un dégradé linéaire est la zone comprise entre et y compris les points de début et d’arrivée et s’étendant dans les deux directions à un angle droit du chemin de dégradé. La zone de répartition est la zone de la géométrie qui se trouve en dehors de la région de dégradé.
Les points de dégradé définissent la couleur à des emplacements spécifiques le long du chemin de dégradé. Dans l’illustration, l’arrêt de dégradé 0, spécifié par le paramètre gradStop1 , se trouve au point de début du chemin de dégradé, et l’arrêt de dégradé 1, spécifié par le paramètre gradStop2 , se trouve au point de fin.
Comme le montre l’illustration qui suit, les points de début et de fin d’un dégradé linéaire sont également les points de début et de fin du chemin de dégradé, qui est la ligne droite qui relie ces points.
L’exemple de code qui suit illustre la façon dont cette méthode est utilisée pour créer une interface.
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
}
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 7, Windows Vista avec SP2 et Mise à jour de plateforme pour Windows Vista [applications de bureau | Applications UWP] |
Serveur minimal pris en charge | Windows Server 2008 R2, Windows Server 2008 avec SP2 et Platform Update pour Windows Server 2008 [applications de bureau | Applications UWP] |
Plateforme cible | Windows |
En-tête | xpsobjectmodel.h |