Freigeben über


IXpsOMObjectFactory::CreateFontResource-Methode (xpsobjectmodel.h)

Erstellt eine IXpsOMFontResource-Schnittstelle , die eine IStream-Schnittstelle für die Schriftartenressource bereitstellt.

Syntax

HRESULT CreateFontResource(
  [in]          IStream            *acquiredStream,
  [in]          XPS_FONT_EMBEDDING fontEmbedding,
  [in]          IOpcPartUri        *partUri,
  [in]          BOOL               isObfSourceStream,
  [out, retval] IXpsOMFontResource **fontResource
);

Parameter

[in] acquiredStream

Die schreibgeschützte IStream-Schnittstelle , die dieser Schriftartressource zugeordnet werden soll. Dieser Parameter darf nicht NULL sein.

Wichtig Behandeln Sie diesen Stream als Single-Threaded Apartment-Objekt (STA). geben Sie ihn nicht erneut ein.
 
Vorsicht Dieser Stream darf nicht verschleiert werden.
 

[in] fontEmbedding

Der XPS_FONT_EMBEDDING Wert, der die Einbettungsoption des Datenstroms angibt.

[in] partUri

Die IOpcPartUri-Schnittstelle , die den Teilnamen enthält, der dieser Ressource zugewiesen werden soll. Dieser Parameter darf nicht NULL sein.

[in] isObfSourceStream

Ein boolescher Wert, der angibt, ob der stream, auf den von acquiredStream verwiesen wird, verschleiert ist.

Wert Bedeutung
STIMMT
Der Stream, auf den von acquiredStream verwiesen wird, wird verschleiert.
FALSE
Der Stream, auf den von acquiredStream verwiesen wird, wird nicht verschleiert.

[out, retval] fontResource

Ein Zeiger auf die neue IXpsOMFontResource-Schnittstelle .

Rückgabewert

Die Methode gibt ein HRESULT zurück. Mögliche Werte sind unter anderem diejenigen in der folgenden Tabelle. Informationen zu Rückgabewerten der XPS-Dokument-API, die in dieser Tabelle nicht aufgeführt sind, finden Sie unter XPS-Dokumentfehler.

Rückgabecode Beschreibung
S_OK
Die Methode wurde erfolgreich ausgeführt.
E_INVALIDARG
Einer der folgenden Fehler ist aufgetreten:
E_POINTER
acquiredStream, partUri oder fontResource ist NULL.

Hinweise

Der Wert von isObfSourceStream beschreibt den Zustand des abgerufenen Streams, auf den verwiesen wird, zum Zeitpunkt der Erstellung der Schriftartressource. Alle nachfolgenden Aufrufe von GetStream oder SetContent werden mit nichtobfuzierten Versionen von IStream ausgeführt.

Ein Fehler wird zurückgegeben, wenn isObfSourceStream auf TRUE und fontEmbedding auf XPS_FONT_EMBEDDING_NORMAL festgelegt ist, oder wenn der Name, auf den von partUri verwiesen wird, nicht der Syntax für verschleierte Streams entspricht.

Im folgenden Codebeispiel wird veranschaulicht, wie diese Methode zum Erstellen einer neuen Schnittstelle verwendet wird.


IXpsOMFontResource    *newInterface;
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->CreateFontResource (
            acquiredStream, 
            XPS_FONT_EMBEDDING_NORMAL,    // normal
            partUri, 
            FALSE,                        // not obfuscated
            &newInterface);
        if (SUCCEEDED(hr))
        {
            // use newInterface

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

Anforderungen

   
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

Weitere Informationen

IOpcPartUri

IXpsOMFontResource

IXpsOMObjectFactory

XML Paper Specification

XPS-Dokumentfehler

XPS_FONT_EMBEDDING