Método IXpsOMObjectFactory::CreateRadialGradientBrush (xpsobjectmodel.h)
Crea una interfaz IXpsOMRadialGradientBrush .
Sintaxis
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
);
Parámetros
[in] gradStop1
Interfaz IXpsOMGradientStop que especifica las propiedades del degradado en el origen del degradado. Este parámetro no debe ser NULL.
[in] gradStop2
Interfaz IXpsOMGradientStop que especifica las propiedades del degradado al final del vector del degradado, que es la elipse que incluye la región de degradado. Este parámetro no debe ser NULL.
[in] centerPoint
Coordenadas del punto central de la elipse de degradado radial.
[in] gradientOrigin
Coordenadas del origen del degradado radial.
[in] radiiSizes
Estructura XPS_SIZE cuyos miembros especifican las longitudes de los radios de la región degradada.
El tamaño se describe en unidades XPS. Hay 96 unidades XPS por pulgada. Por ejemplo, un radio de 1" es de 96 unidades XPS.
XPS_SIZE Miembro | Significado |
---|---|
width | Longitud del radio a lo largo del eje X. |
height | Longitud del radio a lo largo del eje Y. |
[out, retval] radialGradientBrush
Puntero a la nueva interfaz IXpsOMRadialGradientBrush .
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 descrito por centerPoint, radiiSizes o gradientOrigin no es válido. Los miembros de la estructura XPS_POINT deben contener valores de punto flotante válidos y finitos. |
|
gradStop1, gradStop2, centerPoint, gradientOrigin, radiiSizes o radialGradientBrush 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
Como se muestra en la ilustración siguiente, la región de degradado de un degradado radial es el área entre la elipse descrita por el punto central y los radios x e y que se extienden desde el punto central. El área de propagación es el área fuera de esa elipse. La ruta de degradado (no se muestra) es una línea radial que se dibuja entre el origen del degradado y la elipse que enlaza la región de degradado.
Para los pinceles de degradado radial, el delimitador de degradado establecido por el parámetro gradStop1 corresponde a la ubicación de origen del degradado y un valor de desplazamiento de 0,0. La parada de degradado establecida por el parámetro gradStop2 corresponde a la circunferencia de la región de degradado y un valor de desplazamiento de 1,0. Para obtener más información sobre las paradas de degradado, vea IXpsOMGradientStop.En el ejemplo de código siguiente se muestra cómo se usa este método para crear una nueva interfaz.
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
}
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 |