public string UserPassword { get; set; }
A String that contains the user password value to be used. To reset the user password, use either an empty string or null. Default value is null.
The user password is used by PDF viewers to grant or deny viewing the PDF document. For more information, refer to the Protected property.
The UserPassword property is only used when the Protected property is set to true.
Important: UserPassword and OwnerPassword will internally be converted to an ASCII string due to the specifications of the PDF format.
Note that UserPassword is not supported when DocumentType is PdfDocumentType.PdfA.
using Leadtools.Document.Writer;
using Leadtools.Ocr;
using Leadtools;
using Leadtools.Codecs;
public void PdfDocumentOptionsExample()
{
var inputFileName = Path.Combine(LEAD_VARS.ImagesDir, "test.docx");
var outputFileName = Path.Combine(LEAD_VARS.ImagesDir, "Example.pdf");
// Setup a new RasterCodecs object
var codecs = new RasterCodecs();
codecs.Options.RasterizeDocument.Load.Resolution = 300;
// Get the number of pages in the input document
var pageCount = codecs.GetTotalPages(inputFileName);
// Create a new instance of the LEADTOOLS Document Writer
var docWriter = new DocumentWriter();
// Change the PDF options
var pdfOptions = docWriter.GetOptions(DocumentFormat.Pdf) as PdfDocumentOptions;
pdfOptions.DocumentType = PdfDocumentType.Pdf;
pdfOptions.FontEmbedMode = DocumentFontEmbedMode.None;
pdfOptions.ImageOverText = false;
pdfOptions.Linearized = false;
pdfOptions.Title = "Add your title here";
pdfOptions.Subject = "Add your subject here";
pdfOptions.Keywords = "Add your keywords here";
pdfOptions.Author = "Add author name here";
pdfOptions.Protected = true;
pdfOptions.UserPassword = "User password";
pdfOptions.OwnerPassword = "Owner password";
pdfOptions.EncryptionMode = PdfDocumentEncryptionMode.RC128Bit;
pdfOptions.PrintEnabled = false;
pdfOptions.HighQualityPrintEnabled = true;
pdfOptions.CopyEnabled = false;
pdfOptions.EditEnabled = true;
pdfOptions.AnnotationsEnabled = true;
pdfOptions.AssemblyEnabled = false;
pdfOptions.OneBitImageCompression = OneBitImageCompressionType.Flate;
pdfOptions.ColoredImageCompression = ColoredImageCompressionType.FlateJpeg;
pdfOptions.QualityFactor = 2;
// Use default resolution
pdfOptions.DocumentResolution = 0;
pdfOptions.PageRestriction = DocumentPageRestriction.Relaxed;
// Setup empty page size (Letter size)
pdfOptions.EmptyPageWidth = 8.5;
pdfOptions.EmptyPageHeight = 11;
pdfOptions.EmptyPageResolution = 300;
docWriter.SetOptions(DocumentFormat.Pdf, pdfOptions);
// Create a new PDF document
Debug.WriteLine("Creating new PDF document: {0}", outputFileName);
docWriter.BeginDocument(outputFileName, DocumentFormat.Pdf);
// Loop through all the pages
for (var pageNumber = 1; pageNumber <= pageCount; pageNumber++)
{
// Get the page as SVG
Debug.WriteLine("Loading page {0}", pageNumber);
var page = new DocumentWriterSvgPage();
page.SvgDocument = codecs.LoadSvg(inputFileName, pageNumber, null);
// Add the page
Debug.WriteLine("Adding page {0}", pageNumber);
docWriter.AddPage(page);
page.SvgDocument.Dispose();
}
// Finally finish writing the PDF file on disk
docWriter.EndDocument();
codecs.Dispose();
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images";
}