LEADTOOLS (Leadtools assembly) Send comments on this topic. | Back to Introduction - All Topics | Help Version 17.0.3.29
Page Property
See Also 
Leadtools Namespace > RasterImage Class : Page Property



Gets or sets the current active page for this RasterImage. Supported in Silverlight, Windows Phone 7

Syntax

Visual Basic (Declaration) 
Public Property Page As Integer
Visual Basic (Usage)Copy Code
Dim instance As RasterImage
Dim value As Integer
 
instance.Page = value
 
value = instance.Page
C# 
public int Page {get; set;}
C++/CLI 
public:
property int Page {
   int get();
   void set (    int value);
}

Property Value

The 1-based index of the current page for this RasterImage.

Example

This example demonstrates how to deal with multi-page RasterImage objects.

Visual BasicCopy Code
Public Sub PagesExample()
      Dim codecs As RasterCodecs = New RasterCodecs()

      Dim srcFileName1 As String = Path.Combine(LEAD_VARS.ImagesDir, "eye.gif")
      Dim srcFileName2 As String = Path.Combine(LEAD_VARS.ImagesDir, "image1.cmp")

      ' Load the multi-page image
      Dim srcImage As RasterImage = codecs.Load(srcFileName1)

      ' Show the number of pages in this file
      Console.WriteLine("Pages in the image: {0}", srcImage.PageCount)

      ' Show and change the active page
      Console.WriteLine("Active page: {0}", srcImage.Page)
      srcImage.Page = 3
      Console.WriteLine("Active page: {0}", srcImage.Page)
      srcImage.Page = 1

      ' Load a single page image and add it to the end
      Dim pageImage As RasterImage = codecs.Load(srcFileName2)
      Console.WriteLine("Adding a single page")
      srcImage.AddPage(pageImage)
      Console.WriteLine("Pages in the image: {0}", srcImage.PageCount)

      ' Load a multi page image and add a few pages to this image
      pageImage = codecs.Load(srcFileName1)
      Console.WriteLine("Adding multi-pages")
      srcImage.AddPages(pageImage, 1, 2)
      Console.WriteLine("Pages in the image: {0}", srcImage.PageCount)

      ' Insert a page in the middle
      Console.WriteLine("Inserting a page")
      srcImage.InsertPage(4, pageImage)
      Console.WriteLine("Pages in the image: {0}", srcImage.PageCount)

      ' Insert the rest of the pages at the beginning
      Console.WriteLine("Inserting pages")
      srcImage.InsertPages(0, pageImage, 1, -1)
      Console.WriteLine("Pages in the image: {0}", srcImage.PageCount)

      ' Remove the first page
      Console.WriteLine("Removing a page")
      srcImage.RemovePageAt(1)
      Console.WriteLine("Pages in the image: {0}", srcImage.PageCount)

      ' Remove the last 3 pages
      Console.WriteLine("Removing pages")
      srcImage.RemovePages(srcImage.PageCount - 3, -1)
      Console.WriteLine("Pages in the image: {0}", srcImage.PageCount)

      ' Remove all the pages (leaves 1)
      Console.WriteLine("Removing all pages")
      srcImage.RemoveAllPages()
      Console.WriteLine("Pages in the image: {0}", srcImage.PageCount)

      srcImage.Dispose()
      codecs.Dispose()
   End Sub

Public NotInheritable Class LEAD_VARS
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
C#Copy Code
public void PagesExample()
   {
      RasterCodecs codecs = new RasterCodecs();

      string srcFileName1 = Path.Combine(LEAD_VARS.ImagesDir, "eye.gif");
      string srcFileName2 = Path.Combine(LEAD_VARS.ImagesDir, "image1.cmp");

      // Load the multi-page image
      RasterImage srcImage = codecs.Load(srcFileName1);

      // Show the number of pages in this file
      Console.WriteLine("Pages in the image: {0}", srcImage.PageCount);

      // Show and change the active page
      Console.WriteLine("Active page: {0}", srcImage.Page);
      srcImage.Page = 3;
      Console.WriteLine("Active page: {0}", srcImage.Page);
      srcImage.Page = 1;

      // Load a single page image and add it to the end
      RasterImage pageImage = codecs.Load(srcFileName2);
      Console.WriteLine("Adding a single page");
      srcImage.AddPage(pageImage);
      Console.WriteLine("Pages in the image: {0}", srcImage.PageCount);

      // Load a multi page image and add a few pages to this image
      pageImage = codecs.Load(srcFileName1);
      Console.WriteLine("Adding multi-pages");
      srcImage.AddPages(pageImage, 1, 2);
      Console.WriteLine("Pages in the image: {0}", srcImage.PageCount);

      // Insert a page in the middle
      Console.WriteLine("Inserting a page");
      srcImage.InsertPage(4, pageImage);
      Console.WriteLine("Pages in the image: {0}", srcImage.PageCount);

      // Insert the rest of the pages at the beginning
      Console.WriteLine("Inserting pages");
      srcImage.InsertPages(0, pageImage, 1, -1);
      Console.WriteLine("Pages in the image: {0}", srcImage.PageCount);

      // Remove the first page
      Console.WriteLine("Removing a page");
      srcImage.RemovePageAt(1);
      Console.WriteLine("Pages in the image: {0}", srcImage.PageCount);

      // Remove the last 3 pages
      Console.WriteLine("Removing pages");
      srcImage.RemovePages(srcImage.PageCount - 3, -1);
      Console.WriteLine("Pages in the image: {0}", srcImage.PageCount);

      // Remove all the pages (leaves 1)
      Console.WriteLine("Removing all pages");
      srcImage.RemoveAllPages();
      Console.WriteLine("Pages in the image: {0}", srcImage.PageCount);

      srcImage.Dispose();
      codecs.Dispose();
   }

static class LEAD_VARS
{
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
SilverlightCSharpCopy Code
public void PagesExample(RasterImage image)
{
   RasterImage srcImage = image; // should be a multi-page image (eye.gif)
   // Show the number of pages in this file
   Debug.WriteLine("Pages in the image: {0}", srcImage.PageCount);

   // Show and change the active page
   Debug.WriteLine("Active page: {0}", srcImage.Page);
   srcImage.Page = 3;
   Debug.WriteLine("Active page: {0}", srcImage.Page);
   srcImage.Page = 1;

   // create a new image and add it to the end
   RasterImage pageImage = new RasterImage(RasterMemoryFlags.Conventional, 200, 200, 8, RasterByteOrder.Bgr, RasterViewPerspective.TopLeft, null, null, 0);
   Debug.WriteLine("Adding a single page");
   srcImage.AddPage(pageImage);
   Debug.WriteLine("Pages in the image: {0}", srcImage.PageCount);

   // create a multi page image and add a few pages to this image
   RasterImage multiPageImage = new RasterImage(RasterMemoryFlags.Conventional, 200, 200, 8, RasterByteOrder.Bgr, RasterViewPerspective.TopLeft, null, null, 0);
   // add a few more pages
   for (int x = 0; x < 10; x++)
   {
      pageImage = new RasterImage(RasterMemoryFlags.Conventional, 200, 200, 8, RasterByteOrder.Bgr, RasterViewPerspective.TopLeft, null, null, 0);
      multiPageImage.AddPage(pageImage);
   }

   Debug.WriteLine("Adding multi-pages");
   srcImage.AddPages(multiPageImage, 1, 2);
   Debug.WriteLine("Pages in the image: {0}", srcImage.PageCount);

   // Insert a page in the middle
   Debug.WriteLine("Inserting a page");
   srcImage.InsertPage(4, multiPageImage);
   Debug.WriteLine("Pages in the image: {0}", srcImage.PageCount);

   // Insert the rest of the pages at the beginning
   Debug.WriteLine("Inserting pages");
   srcImage.InsertPages(0, multiPageImage, 1, -1);
   Debug.WriteLine("Pages in the image: {0}", srcImage.PageCount);

   // Remove the first page
   Debug.WriteLine("Removing a page");
   srcImage.RemovePageAt(1);
   Debug.WriteLine("Pages in the image: {0}", srcImage.PageCount);

   // Remove the last 3 pages
   Debug.WriteLine("Removing pages");
   srcImage.RemovePages(srcImage.PageCount - 3, -1);
   Debug.WriteLine("Pages in the image: {0}", srcImage.PageCount);

   // Remove all the pages (leaves 1)
   Debug.WriteLine("Removing all pages");
   srcImage.RemoveAllPages();
   Debug.WriteLine("Pages in the image: {0}", srcImage.PageCount);

   srcImage.Dispose();
}
SilverlightVBCopy Code
Public Sub PagesExample(ByVal image As RasterImage)
   Dim srcImage As RasterImage = image ' should be a multi-page image (eye.gif)
   ' Show the number of pages in this file
   Debug.WriteLine("Pages in the image: {0}", srcImage.PageCount)

   ' Show and change the active page
   Debug.WriteLine("Active page: {0}", srcImage.Page)
   srcImage.Page = 3
   Debug.WriteLine("Active page: {0}", srcImage.Page)
   srcImage.Page = 1

   ' create a new image and add it to the end
   Dim pageImage As RasterImage = New RasterImage(RasterMemoryFlags.Conventional, 200, 200, 8, RasterByteOrder.Bgr, RasterViewPerspective.TopLeft, Nothing, Nothing, 0)
   Debug.WriteLine("Adding a single page")
   srcImage.AddPage(pageImage)
   Debug.WriteLine("Pages in the image: {0}", srcImage.PageCount)

   ' create a multi page image and add a few pages to this image
   Dim multiPageImage As RasterImage = New RasterImage(RasterMemoryFlags.Conventional, 200, 200, 8, RasterByteOrder.Bgr, RasterViewPerspective.TopLeft, Nothing, Nothing, 0)
   ' add a few more pages
   For x As Integer = 0 To 9
      pageImage = New RasterImage(RasterMemoryFlags.Conventional, 200, 200, 8, RasterByteOrder.Bgr, RasterViewPerspective.TopLeft, Nothing, Nothing, 0)
      multiPageImage.AddPage(pageImage)
   Next x

   Debug.WriteLine("Adding multi-pages")
   srcImage.AddPages(multiPageImage, 1, 2)
   Debug.WriteLine("Pages in the image: {0}", srcImage.PageCount)

   ' Insert a page in the middle
   Debug.WriteLine("Inserting a page")
   srcImage.InsertPage(4, multiPageImage)
   Debug.WriteLine("Pages in the image: {0}", srcImage.PageCount)

   ' Insert the rest of the pages at the beginning
   Debug.WriteLine("Inserting pages")
   srcImage.InsertPages(0, multiPageImage, 1, -1)
   Debug.WriteLine("Pages in the image: {0}", srcImage.PageCount)

   ' Remove the first page
   Debug.WriteLine("Removing a page")
   srcImage.RemovePageAt(1)
   Debug.WriteLine("Pages in the image: {0}", srcImage.PageCount)

   ' Remove the last 3 pages
   Debug.WriteLine("Removing pages")
   srcImage.RemovePages(srcImage.PageCount - 3, -1)
   Debug.WriteLine("Pages in the image: {0}", srcImage.PageCount)

   ' Remove all the pages (leaves 1)
   Debug.WriteLine("Removing all pages")
   srcImage.RemoveAllPages()
   Debug.WriteLine("Pages in the image: {0}", srcImage.PageCount)

   srcImage.Dispose()
End Sub

Remarks

The RasterImage object can hold multiple pages with different sizes. The AddPage, AddPages, InsertPage and InsertPages methods allows adding new pages to an existing RasterImage.

The RemovePageAt, RemovePages and RemoveAllPages methods allows removing existing pages from a RasterImage object.

The ReplacePage and ReplacePages methods allows replace existing pages in a RasterImage object.

The PageCount property holds the total number of pages in a RasterImage object while the Page property allows you to change the current active page.

The current active page (The page indicated by the Page property) is used by default when accessing the data of a RasterImage object unless otherwise indicated.

Requirements

Target Platforms: Silverlight, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7, MAC OS/X (Intel Only), Windows Phone 7

See Also