Compartilhar via


Método IXpsOMObjectFactory::CreateImageResource (xpsobjectmodel.h)

Cria uma interface IXpsOMImageResource , que é usada para acessar um fluxo de recursos de imagem.

Sintaxe

HRESULT CreateImageResource(
  [in]          IStream             *acquiredStream,
  [in]          XPS_IMAGE_TYPE      contentType,
  [in]          IOpcPartUri         *partUri,
  [out, retval] IXpsOMImageResource **imageResource
);

Parâmetros

[in] acquiredStream

O fluxo somente leitura a ser associado a esse recurso. Esse parâmetro não deve ser NULL.

Importante Trate esse fluxo como um objeto STA (Single-Threaded Apartment) ; não insira novamente.
 

[in] contentType

O valor XPS_IMAGE_TYPE que descreve o tipo de imagem do fluxo referenciado por acquiredStream.

[in] partUri

A interface IOpcPartUri que contém o nome da parte a ser atribuída a esse recurso. Esse parâmetro não deve ser NULL.

[out, retval] imageResource

Um ponteiro para a nova interface IXpsOMImageResource .

Retornar valor

O método retorna um HRESULT. Os valores possíveis incluem, mas não se limitam, aqueles na tabela a seguir. Para obter informações sobre valores retornados da API de documento XPS que não estão listados nesta tabela, consulte Erros de documento XPS.

Código de retorno Descrição
S_OK
O método foi bem-sucedido.
E_INVALIDARG
contentType não era um valor de XPS_IMAGE_TYPE válido.
E_POINTER
acquiredStream, partUri ou imageResource é NULL.

Comentários

O exemplo de código a seguir ilustra como esse método é usado para criar uma nova interface.


IXpsOMImageResource    *newInterface;
// The following values are defined outside of 
// this example.
//  IStream            *acquiredStream;
//  XPS_IMAGE_TYPE     contentType;
//  IOpcPartUri        *partUri;
    
// 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))
{
    // The partUriString and acquiredStream variables 
    //   are defined outside of this example.
    hr = xpsFactory->CreatePartUri(partUriString, &partUri);
    if (SUCCEEDED(hr))
    {
        hr = xpsFactory->CreateImageResource (
            acquiredStream,
            contentType,
            partUri,
            &newInterface);
        if (SUCCEEDED(hr))
        {
            // use newInterface

            newInterface->Release();
        }
        partUri->Release();
    }
    xpsFactory->Release();
}
else
{
    // evaluate HRESULT error returned in hr
}

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 7, Windows Vista com SP2 e Atualização de Plataforma para Windows Vista [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2008 R2, Windows Server 2008 com SP2 e Platform Update para Windows Server 2008 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho xpsobjectmodel.h

Confira também

IOpcPartUri

IXpsOMImageResource

IXpsOMObjectFactory

Especificação de Papel XML

Erros de documento XPS

XPS_IMAGE_TYPE