Uso delle interfacce IXpsOMDocumentSequence
In questo argomento viene descritto come usare le interfacce che forniscono l'accesso a FixedDocumentSequence, ovvero il livello principale della gerarchia di documenti in un file XPS OM.
Nome interfaccia | Interfacce figlio logiche | Descrizione |
---|---|---|
IXpsOMDocumentSequence |
IXpsOMDocument |
Raggruppa un set di FixedDocuments in un elenco ordinato. |
IXpsOMDocumentCollection |
Nessuno |
Raccolta di FixedDocuments in una sequenza di documenti XPS. |
Esempio di codice
Nell'esempio di codice seguente viene ottenuto un puntatore all'interfaccia IXpsOMDocumentSequence che contiene la sequenza di documento dell'om XPS rappresentato da xpsPackage. Nell'esempio vengono quindi enumerati i documenti nella raccolta.
HRESULT hr = S_OK;
IXpsOMDocumentSequence *docSeq;
IXpsOMDocumentCollection *docs;
IXpsOMDocument *doc;
UINT32 numDocs = 0;
UINT32 thisDoc = 0;
// get the fixed document sequence of the package
hr = xpsPackage->GetDocumentSequence(&docSeq);
// get the collection of fixed documents in
// the fixed document sequence
hr = docSeq->GetDocuments(&docs);
// walk the collection of documents;
hr = docs->GetCount(&numDocs);
thisDoc = 0;
while (thisDoc < numDocs) {
hr = docs->GetAt(thisDoc, &doc);
// use this doc for something
// release this doc and then go to the next one
doc->Release();
thisDoc++;
}
// release the document collection and
// the document sequence
docs->Release();
docSeq->Release();