Método IXpsOMObjectFactory::CreateLinearGradientBrush (xpsobjectmodel.h)
Crea una interfaz IXpsOMLinearGradientBrush .
Sintaxis
HRESULT CreateLinearGradientBrush(
[in] IXpsOMGradientStop *gradStop1,
[in] IXpsOMGradientStop *gradStop2,
[in] const XPS_POINT *startPoint,
[in] const XPS_POINT *endPoint,
[out, retval] IXpsOMLinearGradientBrush **linearGradientBrush
);
Parámetros
[in] gradStop1
La interfaz IXpsOMGradientStop que especifica las propiedades de degradado al principio del vector del degradado. Este parámetro no debe ser NULL.
[in] gradStop2
La interfaz IXpsOMGradientStop que especifica las propiedades de degradado al final del vector del degradado. Este parámetro no debe ser NULL.
[in] startPoint
Estructura XPS_POINT que contiene las coordenadas del punto inicial en el espacio bidimensional.
[in] endPoint
Estructura XPS_POINT que contiene las coordenadas del punto final en un espacio bidimensional.
[out, retval] linearGradientBrush
Puntero a la nueva interfaz IXpsOMLinearGradientBrush .
Valor devuelto
El método devuelve un valor HRESULT. Entre los valores posibles se incluyen, entre otros, los de la tabla siguiente. Para obtener información sobre los valores devueltos de la API de documentos XPS que no aparecen en esta tabla, vea Errores del documento XPS.
Código devuelto | Descripción |
---|---|
|
El método se ha llevado a cabo de forma correcta. |
|
El punto especificado por startPoint o endPoint no era válido. Los miembros de la estructura de XPS_POINT deben contener valores de punto flotante válidos y finitos. |
|
gradStop1, gradStop2, startPoint, figure o linearGradientBrush es NULL. |
|
gradStop1 o gradStop1 no apunta a una implementación de interfaz reconocida. No se admite la implementación personalizada de interfaces de LA API de documentos XPS. |
Comentarios
La región de degradado de un degradado lineal es el área entre los puntos inicial y final, y se extiende en ambas direcciones en un ángulo derecho al trazado de degradado. El área de propagación es el área de la geometría que se encuentra fuera de la región degradada.
Los delimitadores de degradado definen el color en ubicaciones específicas a lo largo del trazado de degradado. En la ilustración, el delimitador de degradado 0, especificado por el parámetro gradStop1 , se encuentra en el punto inicial de la ruta de degradado y el degradado 1, especificado por el parámetro gradStop2 , está en el punto final.
Como se muestra en la ilustración siguiente, los puntos inicial y final de un degradado lineal también son los puntos inicial y final del trazado de degradado, que es la línea recta que conecta esos puntos.
En el ejemplo de código siguiente se muestra cómo se usa este método para crear una nueva interfaz.
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
}
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 7, Windows Vista con SP2 y Platform Update para Windows Vista [aplicaciones de escritorio | Aplicaciones para UWP] |
Servidor mínimo compatible | Windows Server 2008 R2, Windows Server 2008 con SP2 y Actualización de plataforma para Windows Server 2008 [aplicaciones de escritorio | Aplicaciones para UWP] |
Plataforma de destino | Windows |
Encabezado | xpsobjectmodel.h |