protected void Page_Load(object sender, EventArgs e) { String inputFile = Server.MapPath(@".\bin\sample1.pdf"); // Create Bytescout.PDFExtractor.UnsearchablePDFMaker instance UnsearchablePDFMaker unsearchablePDFMaker = new UnsearchablePDFMaker(); unsearchablePDFMaker.RegistrationName = "demo"; unsearchablePDFMaker.RegistrationKey = "demo"; // Load sample PDF document unsearchablePDFMaker.LoadDocumentFromFile(inputFile); // Set PDF rendering resolution to 150 DPI. Higher value - better quality, but larger output file. unsearchablePDFMaker.RenderingResolution = 150; // Set embedded images format unsearchablePDFMaker.ImageFormat = EmbeddedImageFormat.PNG; Response.Clear(); Response.ContentType = "application/pdf"; Response.AddHeader("Content-Disposition", "attachment;filename=result.pdf"); // Process document and write result to temporary stream. byte[] resultBytes; using (MemoryStream tempStream = new MemoryStream()) { unsearchablePDFMaker.MakePDFUnsearchable(tempStream); resultBytes = tempStream.ToArray(); } // Write result bytes to the output stream Response.BinaryWrite(resultBytes); Response.End(); }
static void Main() { // Create Bytescout.PDFExtractor.UnsearchablePDFMaker instance UnsearchablePDFMaker unsearchablePDFMaker = new UnsearchablePDFMaker(); unsearchablePDFMaker.RegistrationName = "demo"; unsearchablePDFMaker.RegistrationKey = "demo"; // Load sample PDF document unsearchablePDFMaker.LoadDocumentFromFile("sample1.pdf"); // Set PDF rendering resolution to 150 DPI. Higher value - better quality, but larger output file. unsearchablePDFMaker.RenderingResolution = 150; // Set embedded images format unsearchablePDFMaker.ImageFormat = EmbeddedImageFormat.PNG; // Process the document unsearchablePDFMaker.MakePDFUnsearchable("result.pdf"); // Cleanup unsearchablePDFMaker.Dispose(); // Open the result PDF file in default associated application ProcessStartInfo processStartInfo = new ProcessStartInfo("result.pdf"); processStartInfo.UseShellExecute = true; Process.Start(processStartInfo); }
static void Main() { // Create Bytescout.PDFExtractor.UnsearchablePDFMaker instance UnsearchablePDFMaker unsearchablePDFMaker = new UnsearchablePDFMaker(); unsearchablePDFMaker.RegistrationName = "demo"; unsearchablePDFMaker.RegistrationKey = "demo"; // Load sample PDF document unsearchablePDFMaker.LoadDocumentFromFile("sample1.pdf"); //maker.ImageFormat = EmbeddedImageFormat.JPEG; // use JPEG for smaller PDF file, but be ready to compression artefacts //maker.JPEGQuality = 75; // JPEG quality (1 - 100) unsearchablePDFMaker.RenderingResolution = 300; // larger resolution - longer processing and larger PDF file size // Enable Black and White mode unsearchablePDFMaker.Grayscale = true; // Process the document unsearchablePDFMaker.MakePDFUnsearchable("result.pdf"); // Cleanup unsearchablePDFMaker.Dispose(); // Open the result PDF file in default associated application ProcessStartInfo processStartInfo = new ProcessStartInfo("result.pdf"); processStartInfo.UseShellExecute = true; Process.Start(processStartInfo); }
static void Main() { // Create Bytescout.PDFExtractor.UnsearchablePDFMaker instance UnsearchablePDFMaker unsearchablePDFMaker = new UnsearchablePDFMaker(); unsearchablePDFMaker.RegistrationName = "demo"; unsearchablePDFMaker.RegistrationKey = "demo"; // Load sample PDF document unsearchablePDFMaker.LoadDocumentFromFile("sample1.pdf"); //maker.ImageFormat = EmbeddedImageFormat.JPEG; // use JPEG for smaller PDF file, but be ready to compression artefacts //maker.JPEGQuality = 75; // JPEG quality (1 - 100) unsearchablePDFMaker.RenderingResolution = 300; // larger resolution - longer processing and larger PDF file size // Enable Black and White Mode unsearchablePDFMaker.Grayscale = true; // Enable skipping black and white conversation of pages in range unsearchablePDFMaker.KeepSkippedPages = true; // "ranges" param is comma-separated list of page ranges in form "1-4,5,7,8-15,16-". // Pages covered by it will be converted to Black and White. // Page numbers are 1-based. Ending "-" means "to the last page". // You can also use inverted page numbers adding '!' before the number. E.g. "!1" means "the last page", // "2-!2" means "from the second to the penultimate page", "!2-" - last two pages unsearchablePDFMaker.MakePDFUnsearchable("result.pdf", ranges: "1"); // Cleanup unsearchablePDFMaker.Dispose(); // Open the result PDF file in default associated application ProcessStartInfo processStartInfo = new ProcessStartInfo("result.pdf"); processStartInfo.UseShellExecute = true; Process.Start(processStartInfo); }