←Select platform

FirstPageNumber Property

Summary

Gets or sets the 1-based index of the first page associated with this PDFPageRangeFromStream.

Syntax
C#
C++/CLI
Java
Python
public int FirstPageNumber 
public int FirstPageNumber; 
public: 
property int FirstPageNumber; 
FirstPageNumber (PDFPageRangeFromStream) 

Property Value

An integer number indicating the first page that should be merged using PDFFile.MergeFiles(PDFPageRangeFromStream[],Stream). The first page in the file has the index 1, so this value should be greater than or equal to 1.

Remarks

The last page that should be merged is indicated by PDFPageRangeFromStream.LastPageNumber.

Example

C#
Java
import java.io.ByteArrayInputStream; 
import java.io.File; 
import java.io.FileInputStream; 
import java.io.FileNotFoundException; 
import java.io.FileOutputStream; 
import java.io.FileReader; 
import java.io.IOException; 
import java.io.InputStream; 
import java.nio.file.Files; 
import java.nio.file.Paths; 
import java.nio.file.StandardCopyOption; 
import java.util.ArrayList; 
import java.util.Date; 
import java.util.List; 
import java.util.Scanner; 
 
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.codecs.*; 
import leadtools.pdf.*; 
 
private static void pdfMergeTest() {

   String folder = "C:\temp\";
   String pdfFile1 = "1.pdf";
   String pdfFile2 = "2.pdf";
   String outputFile = "Result.pdf";
   try (FileInputStream pdfStreamFile1 = new FileInputStream(new File(folder + pdfFile1));
       FileInputStream pdfStreamFile2 = new FileInputStream(new File(folder + pdfFile2));
       FileOutputStream pdfStreamFile3 = new FileOutputStream(new File(folder + outputFile))) {

          PDFPageRangeFromStream[] range = new PDFPageRangeFromStream[2];

          range[0] = new PDFPageRangeFromStream();
          range[0].setFirstPageNumber(1);
          range[0].setLastPageNumber(-1);
          range[0].setStream(pdfStreamFile1);
          if (PDFFile.IsEncrypted(pdfFile1))
             range[0].setPassword("LEAD");

          range[1] = new PDFPageRangeFromStream();
          range[1].setFirstPageNumber(1);
          range[1].setLastPageNumber(-1);
          range[1].setStream(pdfStreamFile2);
          if (PDFFile.IsEncrypted(pdfFile2))
             range[1].setPassword("LEAD");

          PDFFile.mergeFiles(range, pdfStreamFile3);

   } catch (IOException e) {
      e.printStackTrace();
   }
}
using Leadtools.WinForms; 
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.Controls; 
using Leadtools.Drawing; 
using Leadtools.ImageProcessing; 
using Leadtools.Pdf; 
using Leadtools.Svg; 
 
 
private static void PDFMergeTest()
{
   string folder = @"C:\temp\";
   string pdfFile1 = "1.pdf";
   string pdfFile2 = "2.pdf";
   string outputFile = @"Result.pdf";
   using (FileStream pdfStreamFile1 = File.Open(folder + pdfFile1, FileMode.Open, FileAccess.Read, FileShare.Read))
   using (FileStream pdfStreamFile2 = File.Open(folder + pdfFile2, FileMode.Open, FileAccess.Read, FileShare.Read))
   using (FileStream pdfStreamFile3 = File.Create(folder + outputFile))
   {
      PDFPageRangeFromStream[] range = new PDFPageRangeFromStream[2];

      range[0].FirstPageNumber = 1;
      range[0].LastPageNumber = -1;
      range[0].Stream = pdfStreamFile1;
      if (PDFFile.IsEncrypted(pdfFile1))
         range[0].password = "LEAD";

      range[1].FirstPageNumber = 1;
      range[1].LastPageNumber = -1;
      range[1].Stream = pdfStreamFile2;
      if (PDFFile.IsEncrypted(pdfFile2))
         range[1].password = "LEAD";

      PDFFile.MergeFiles(range, pdfStreamFile3);
   }
}
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images"; 
} 

Requirements

Target Platforms

See Also

Help Version 23.0.2026.9.14
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2025 Apryse Sofware Corp. All Rights Reserved.

Leadtools.Pdf Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2025 Apryse Sofware Corp. All Rights Reserved.