Click or drag to resize

PdfWebControlCopyDocument Method (Int32, Boolean, PdfDocumentSettings)

Copy an existing a previously loaded PDF document to a new document instance and load it

Namespace:  RadPdf.Web.UI
Assembly:  RadPdf (in RadPdf.dll) Version: 3.20.0.0 (3.20.0.0)
Syntax
public int CopyDocument(
	int documentID,
	bool commitChanges,
	PdfDocumentSettings documentSettings
)

Parameters

documentID
Type: SystemInt32
Document ID of a previously loaded PDF document
commitChanges
Type: SystemBoolean
Commit previous changes, saving them into the PDF
documentSettings
Type: RadPdf.Data.DocumentPdfDocumentSettings
Flags for this document to obey

Return Value

Type: Int32
Document ID
Remarks

commitChanges must be true if the new PdfDocumentSettings are more permissive than the current ones. Tools enabled in the current document can not be disabled when copying the document. That is, new settings must satisfy the condition:

C#
((documentSettings ^ existing.DocumentProperties.DocumentSettings) & PdfDocumentSettings.IsReadOnly) == PdfDocumentSettings.None

using documentSettings, existing.DocumentProperties.DocumentSettings, PdfDocumentSettings.IsReadOnly, and PdfDocumentSettings.None

Examples
The following aspx and code behind files use the CopyDocument method to make a copy and load a previously loaded document, changing the document's settings.
C#
using System;

partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            // Get Document ID, for example from user's session variables
            int documentID = (int)Session["UserDocumentID"];

            // Copy that PDF document, making a read-only copy. All changes must be committed for this to work (presuming the original document didn't have the same document settings).
            this.PdfWebControl1.CopyDocument(documentID, true, PdfDocumentSettings.IsReadOnly);
        }
    }
}
XML
<%@ Page Language="C#" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<%@ Register Assembly="RadPdf" Namespace="RadPdf.Web.UI" TagPrefix="radPdf" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>RAD PDF Sample</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <radPdf:PdfWebControl id="PdfWebControl1" runat="server" height="600px" width="100%" />
    </div>
    </form>
</body>
</html>
See Also