Arbeiten mit Seiten in PostScript | C++

Seiten zum PS-Dokument hinzufügen

Aspose.Page für C++ bietet zwei Möglichkeiten zum Hinzufügen von Seiten zum Objekt PsDocument.

Der folgende Codeausschnitt erstellt in 8 Schritten ein zweiseitiges PS-Dokument:

  1. Erstellen Sie einen Ausgabestream für die resultierende PS-Datei.
  2. Erstellen Sie ein PsSaveOptions-Objekt mit Standardoptionen.
  3. Erstellen Sie ein zweiseitiges PsDocument mit einem bereits erstellten Ausgabestream und Speicheroptionen.
  4. Öffnen Sie die erste Seite mit der Standardseitengröße des Dokuments (A4 im Hochformat).
  5. Schließen Sie die Seite.
  6. Öffnen Sie die zweite Seite mit einer neuen Größe.
  7. Schließen Sie die Seite.
  8. Speichern Sie das Dokument.
 1    // The path to the documents directory.
 2    System::String dataDir = RunExamples::GetDataDir_WorkingWithPages();
 3    
 4    //Create output stream for PostScript document
 5    {
 6        System::SharedPtr<System::IO::Stream> outPsStream = System::MakeObject<System::IO::FileStream>(dataDir + u"document1.ps", System::IO::FileMode::Create);
 7        // Clearing resources under 'using' statement
 8        System::Details::DisposeGuard<1> __dispose_guard_0({ outPsStream});
 9        // ------------------------------------------
10        
11        try
12        {
13            //Create save options with A4 size
14            System::SharedPtr<PsSaveOptions> options = System::MakeObject<PsSaveOptions>();
15            
16            // Create new 2-paged PS Document
17            System::SharedPtr<PsDocument> document = System::MakeObject<PsDocument>(outPsStream, options, 2);
18            
19            //Add the first page
20            document->OpenPage();
21            
22            //Add content
23            
24            //Close the first page
25            document->ClosePage();
26            
27            //Add the second page with different size
28            document->OpenPage(400.0f, 700.0f);
29            
30            //Add content
31            
32            //Close the second page
33            document->ClosePage();
34            
35            //Save the document
36            document->Save();
37        }
38        catch(...)
39        {
40            __dispose_guard_0.SetCurrentException(std::current_exception());
41        }
42    }

Weitere Informationen finden Sie unter „Arbeiten mit Seiten in PS-Dokumenten“ in .NET oder Java.

Der folgende Codeausschnitt erstellt ebenfalls ein zweiseitiges PS-Dokument, jedoch mit 7 Schritten:

  1. Erstellen Sie einen Ausgabestream für die resultierende PS-Datei.
  2. Erstellen Sie ein Objekt PsSaveOptions mit Standardoptionen.
  3. Erstellen Sie ein mehrseitiges PsDocument mit bereits erstelltem Ausgabestream und Speicheroptionen. In diesem Fall ist die erste Seite bereits geöffnet und ihre Größe entspricht der Standardseitengröße des Dokuments (A4 im Hochformat).
  4. Schließen Sie die Seite.
  5. Öffnen Sie die zweite Seite mit einer neuen Größe.
  6. Schließen Sie die Seite.
  7. Speichern Sie das Dokument. Diese Art des Hinzufügens von Seiten ist nützlich, wenn das Dokument eine Seite hat oder nicht bekannt ist, ob es sich um ein ein- oder zweiseitiges Dokument handelt.
 1    // The path to the documents directory.
 2    System::String dataDir = RunExamples::GetDataDir_WorkingWithPages();
 3    
 4    //Create output stream for PostScript document
 5    {
 6        System::SharedPtr<System::IO::Stream> outPsStream = System::MakeObject<System::IO::FileStream>(dataDir + u"document2.ps", System::IO::FileMode::Create);
 7        // Clearing resources under 'using' statement
 8        System::Details::DisposeGuard<1> __dispose_guard_0({ outPsStream});
 9        // ------------------------------------------
10        
11        try
12        {
13            //Create save options with A4 size
14            System::SharedPtr<PsSaveOptions> options = System::MakeObject<PsSaveOptions>();
15            
16            //Set variable that indicates if resulting PostScript document will be multipaged
17            bool multiPaged = true;
18            
19            // Create new multipaged PS Document with one page opened
20            System::SharedPtr<PsDocument> document = System::MakeObject<PsDocument>(outPsStream, options, multiPaged);
21            
22            //Add content
23            
24            //Close the first page
25            document->ClosePage();
26            
27            //Add the second page with different size
28            document->OpenPage(500.0f, 300.0f);
29            
30            //Add content
31            
32            //Close the second page
33            document->ClosePage();
34            
35            //Save the document
36            document->Save();
37        }
38        catch(...)
39        {
40            __dispose_guard_0.SetCurrentException(std::current_exception());
41        }
42    }

Sie können Beispiele und Datendateien herunterladen von GitHub.

Have any questions about Aspose.Page?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.