In This Topic
Clones a page specified by its page number, that means creates exactly the same copy of the specified page, in the currently loaded PDF document. The newly created page is added at the end of the document as the last page and it is automatically selected as the current page.
Just to inform you, that the toolkit offers the adaptive file caching mechanism to significantly reduce memory usage while cloning large documents. The feature is available in both 32-bit and 64-bit mode by default.
Syntax
Parameters
- PageNo
- The page number of a page you want to clone. It must be a value from 1 to GetPageCount.
Return Value
A member of the GdPictureStatus enumeration. If the method has been successfully followed, then the return value is GdPictureStatus.OK.
We strongly recommend always checking this status first.
Example
How to clone all pages of the PDF document.
Dim caption As String = "Example: ClonePage"
Dim gdpicturePDF As New GdPicturePDF()
If gdpicturePDF.LoadFromFile("test.pdf", False) = GdPictureStatus.OK Then
Dim count As Integer = gdpicturePDF.GetPageCount()
Dim status As GdPictureStatus = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then
For i As Integer = 1 To count
status = gdpicturePDF.ClonePage(i)
If status <> GdPictureStatus.OK Then
MessageBox.Show("The ClonePage() method has failed with the status: " + status.ToString(), caption)
Exit For
End If
Next
If status = GdPictureStatus.OK Then
If gdpicturePDF.SaveToFile("test_ClonePage.pdf") = GdPictureStatus.OK Then
MessageBox.Show("The pages have been cloned successfully and the file has been saved.", caption)
Else
MessageBox.Show("The pages have been cloned successfully, but the file can't be saved.", caption)
End If
End If
Else
MessageBox.Show("The GetPageCount() method has failed with the status: " + status.ToString(), caption)
End If
Else
MessageBox.Show("The file can't be loaded.", caption)
End If
gdpicturePDF.Dispose()
string caption = "Example: ClonePage";
GdPicturePDF gdpicturePDF = new GdPicturePDF();
if (gdpicturePDF.LoadFromFile("test.pdf", false) == GdPictureStatus.OK)
{
int count = gdpicturePDF.GetPageCount();
GdPictureStatus status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK)
{
for (int i = 1; i <= count; i++)
{
status = gdpicturePDF.ClonePage(i);
if (status != GdPictureStatus.OK)
{
MessageBox.Show("The ClonePage() method has failed with the status: " + status.ToString(), caption);
break;
}
}
if (status == GdPictureStatus.OK)
{
if (gdpicturePDF.SaveToFile("test_ClonePage.pdf") == GdPictureStatus.OK)
MessageBox.Show("The pages have been cloned successfully and the file has been saved.", caption);
else
MessageBox.Show("The pages have been cloned successfully, but the file can't be saved.", caption);
}
}
else
MessageBox.Show("The GetPageCount() method has failed with the status: " + status.ToString(), caption);
}
else
MessageBox.Show("The file can't be loaded.", caption);
gdpicturePDF.Dispose();
Example
How to clone all pages of the PDF document.
Dim caption As String = "Example: ClonePage"
Dim gdpicturePDF As New GdPicturePDF()
If gdpicturePDF.LoadFromFile("test.pdf", False) = GdPictureStatus.OK Then
Dim count As Integer = gdpicturePDF.GetPageCount()
Dim status As GdPictureStatus = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then
For i As Integer = 1 To count
status = gdpicturePDF.ClonePage(i)
If status <> GdPictureStatus.OK Then
MessageBox.Show("The ClonePage() method has failed with the status: " + status.ToString(), caption)
Exit For
End If
Next
If status = GdPictureStatus.OK Then
If gdpicturePDF.SaveToFile("test_ClonePage.pdf") = GdPictureStatus.OK Then
MessageBox.Show("The pages have been cloned successfully and the file has been saved.", caption)
Else
MessageBox.Show("The pages have been cloned successfully, but the file can't be saved.", caption)
End If
End If
Else
MessageBox.Show("The GetPageCount() method has failed with the status: " + status.ToString(), caption)
End If
Else
MessageBox.Show("The file can't be loaded.", caption)
End If
gdpicturePDF.Dispose()
string caption = "Example: ClonePage";
GdPicturePDF gdpicturePDF = new GdPicturePDF();
if (gdpicturePDF.LoadFromFile("test.pdf", false) == GdPictureStatus.OK)
{
int count = gdpicturePDF.GetPageCount();
GdPictureStatus status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK)
{
for (int i = 1; i <= count; i++)
{
status = gdpicturePDF.ClonePage(i);
if (status != GdPictureStatus.OK)
{
MessageBox.Show("The ClonePage() method has failed with the status: " + status.ToString(), caption);
break;
}
}
if (status == GdPictureStatus.OK)
{
if (gdpicturePDF.SaveToFile("test_ClonePage.pdf") == GdPictureStatus.OK)
MessageBox.Show("The pages have been cloned successfully and the file has been saved.", caption);
else
MessageBox.Show("The pages have been cloned successfully, but the file can't be saved.", caption);
}
}
else
MessageBox.Show("The GetPageCount() method has failed with the status: " + status.ToString(), caption);
}
else
MessageBox.Show("The file can't be loaded.", caption);
gdpicturePDF.Dispose();
See Also