←Select platform

DocumentPages Class

Summary

Represents a collection of DocumentPage objects.

Syntax
C#
C++/CLI
Java
Python
[CollectionDataContractAttribute()] 
public class DocumentPages : LeadCollection<DocumentPage> 
public [CollectionDataContractAttribute] 
   ref class DocumentPages : LeadCollection<DocumentPage^> 
public class DocumentPages extends LeadCollection<DocumentPage> 
class DocumentPages(LeadCollection): 
Remarks

DocumentPages manages the pages of the document. It can be accessed through the Pages property of LEADDocument.

DocumentPages derives from LeadCollection<T> and thus can implement [System.Collections.ObjectModel.Collection1](https://msdn.microsoft.com/en-us/library/System.Collections.ObjectModel.Collection1.aspx). You can use any of the collection methods to add, remove, insert, get, set and iterate through the pages.

As well as the collection support, DocumentPages has the following:

DocumentPage instances that belong to a source document can be added to a target (virtual) document at will. This allows the user to create a document that contain pages from various other documents in any order or number desired. When such pages are added to or removed from a DocumentPages collection, the DocumentDocuments collection in the target document will be updated to contain all the various child (source) documents owning the source pages.

Example
C#
Java
using Leadtools; 
using Leadtools.Caching; 
using Leadtools.Document; 
 
 
public void DocumentExample() 
{ 
   var cache = GetCache(); 
 
   var policy = new CacheItemPolicy(); 
   policy.AbsoluteExpiration = DateTime.Now + new TimeSpan(0, 0, 1); 
   policy.SlidingExpiration = new TimeSpan(0, 0, 1); 
 
   var options = new LoadDocumentOptions(); 
   options.CachePolicy = policy; 
   options.Cache = cache; 
 
   if(options.Cache == null) 
   { 
      options.Cache = DocumentFactory.Cache; 
   } 
 
   string documentId = null; 
 
   using (var document = DocumentFactory.LoadFromFile(Path.Combine(LEAD_VARS.ImagesDir, "Leadtools.pdf"), options)) 
   { 
      document.GetDocumentFileName(); 
      document.IsReadOnly = false; 
      document.AutoDeleteFromCache = false; 
      // DocumentImages reference 
      document.Images.DefaultBitsPerPixel = 24; 
 
      Console.WriteLine(document.Images.IsResolutionsSupported); 
      Console.WriteLine(document.Images.IsSvgSupported); 
 
      // Check if the document has a stream in memory 
      if (document.HasStream) 
      { 
         // Get the document stream 
         document.GetDocumentStream(); 
      } 
 
      // Indicate whether the document is using the cache or not 
      Console.WriteLine(document.HasCache); 
             
      //Indicate if the document was downloaded 
      Console.WriteLine(document.IsDownloaded); 
 
      // Gets a value that determines whether the document structure is supported 
      Console.WriteLine(document.IsStructureSupported); 
 
      // Output metadata values (DocumentMetadata reference) 
      Console.WriteLine(document.Metadata.Values.Count); 
 
      // Get the Mime type of the document 
      Console.WriteLine(document.MimeType); 
 
      // Parse document structure data (DocumentStructure reference) 
      foreach(DocumentBookmark bookmark in document.Structure.Bookmarks) 
      { 
         bookmark.Title = null; 
         bookmark.FontStyles = DocumentFontStyles.Normal; 
         document.Structure.Bookmarks.Add(bookmark); 
         Console.WriteLine(bookmark.Children); 
         Console.WriteLine(bookmark.Target); 
         Console.WriteLine(document.Structure.Bookmarks.Count); 
         Console.WriteLine(document.Structure.IsParsed); 
         Console.WriteLine(document.Structure.ParseBookmarks); 
      } 
 
      document.Structure.Parse(); 
 
      // Get the document URI 
      Console.WriteLine(document.Uri); 
 
      // Get each DocumentPage object (DocumentPage & DocumentPages reference) 
      foreach (DocumentPage page in document.Pages) 
      { 
         // Get the page as a raster image at the specified resolution 
         page.GetImage(0); 
         // Get the page as an Svg with specified options 
         page.GetSvg(null); 
         // Flip this page horizontally 
         page.Reverse(); 
         // Use this method to add an array of links for this page 
         page.SetLinks(null); 
         page.IsLinksModified = false; 
         page.Resolution = 0; 
         page.ViewPerspective = RasterViewPerspective.TopLeft; 
         page.SetLinks(page.GetLinks()); 
         Console.WriteLine($"Page Number: {page.PageNumber}, Original PageNumber: {page.OriginalPageNumber}, Size of the page: {page.Size}"); 
      } 
 
      PrintOutDocumentInfo(document); 
 
      documentId = document.DocumentId; 
      document.SaveToCache(); 
   } 
 
   System.Threading.Thread.Sleep(2000); 
 
   var loadFromCacheOptions = new LoadFromCacheOptions(); 
   loadFromCacheOptions.Cache = cache; 
   loadFromCacheOptions.DocumentId = documentId; 
   using (var document = DocumentFactory.LoadFromCache(loadFromCacheOptions)) 
   { 
      if (null == document) 
      { 
         Console.WriteLine("Cached document was expired and deleted!"); 
      } 
   } 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images"; 
} 
 
import java.io.File; 
import java.io.FileInputStream; 
import java.io.FileNotFoundException; 
import java.io.IOException; 
import java.io.InputStream; 
import java.net.URI; 
import java.net.URISyntaxException; 
import java.util.Calendar; 
 
import org.junit.*; 
import org.junit.runner.JUnitCore; 
import org.junit.runner.Result; 
import org.junit.runner.notification.Failure; 
import static org.junit.Assert.*; 
 
import leadtools.*; 
import leadtools.caching.*; 
import leadtools.document.*; 
 
 
public void documentExample() throws InterruptedException, IOException { 
   final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images"; 
 
   FileCache cache = getCache(); 
 
   CacheItemPolicy policy = new CacheItemPolicy(); 
   Calendar nowPlus = Calendar.getInstance(); 
   nowPlus.add(Calendar.SECOND, 1); 
   policy.setAbsoluteExpiration(nowPlus.getTime()); 
 
   policy.setSlidingExpiration(1); 
 
   LoadDocumentOptions options = new LoadDocumentOptions(); 
   options.setCachePolicy(policy); 
   options.setCache(cache); 
 
   if (options.getCache() == null) { 
      options.setCache(DocumentFactory.getCache()); 
   } 
 
   LEADDocument document = DocumentFactory.loadFromFile(combine(LEAD_VARS_IMAGES_DIR, "Leadtools.pdf"), options); 
 
   document.getDocumentFileName(); 
   document.setReadOnly(false); 
   document.setAutoDeleteFromCache(false); 
   // DocumentImages reference 
   document.getImages().setDefaultBitsPerPixel(24); 
 
   System.out.println(document.getImages().isResolutionsSupported()); 
   System.out.println(document.getImages().isSvgSupported()); 
 
   // Check if the document has a stream in memory 
   if (document.hasStream()) { 
      // Get the document stream 
      document.getDocumentStream(); 
   } 
 
   // Indicate whether the document is using the cache or not 
   System.out.println(document.hasCache()); 
 
   // Indicate if the document was downloaded 
   System.out.println(document.isDownloaded()); 
 
   // Gets a value that determines whether the document structure is supported 
   System.out.println(document.isStructureSupported()); 
 
   // Output metadata values (DocumentMetadata reference) 
   System.out.println(document.getMetadata().values().size()); 
 
   // Get the Mime type of the document 
   System.out.println(document.getMimeType()); 
 
   // Parse document structure data (DocumentStructure reference) 
   for (DocumentBookmark bookmark : document.getStructure().getBookmarks()) { 
      bookmark.setTitle(null); 
      bookmark.setFontStyles(DocumentFontStyles.NORMAL); 
      document.getStructure().getBookmarks().add(bookmark); 
      System.out.println(bookmark.getChildren()); 
      System.out.println(bookmark.getTarget()); 
      System.out.println(document.getStructure().getBookmarks().size()); 
      System.out.println(document.getStructure().isParsed()); 
      System.out.println(document.getStructure().getParseBookmarks()); 
   } 
 
   document.getStructure().parse(); 
 
   // Get the document URI 
   System.out.println(document.getUri()); 
 
   // Get each DocumentPage object (DocumentPage & DocumentPages reference) 
   document.setCacheOptions(document.getCacheOptions()); 
   for (DocumentPage page : document.getPages()) { 
      assertTrue(document != null); 
      System.out.println("Document created successfully"); 
 
      // Get the page as a raster image at the specified resolution 
      page.getImage(0); 
      // Get the page as an Svg with specified options 
      page.getSvg(null); 
      // Flip this page horizontally 
      page.reverse(); 
      // Use this method to add an array of links for this page 
      page.setLinks(null); 
      page.setLinkedModified(false); 
      page.setResolution(0); 
      page.setViewPerspective(RasterViewPerspective.TOP_LEFT); 
      page.setLinks(page.getLinks()); 
      System.out.println("Page Number: " + page.getPageNumber() + ", Original PageNumber: " 
            + page.getOriginalPageNumber() + ", Size of the page: " + page.getSize() + ""); 
   } 
 
   printOutDocumentInfo(document); 
   document.saveToCache(); 
   document.dispose(); 
} 
Requirements

Target Platforms

Help Version 23.0.2024.2.29
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Document Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.