←Select platform

Linearize Method

Summary
Converts the file associated with this PDFFile object into a linearized version (one optimized for Web viewing).
Syntax
C#
C++/CLI
Java
Python
public void Linearize( 
   string destinationFileName 
) 
public: 
void Linearize(  
   String^ destinationFileName 
)  
public void linearize( 
   java.lang.String string 
); 
def Linearize(self,destinationFileName): 

Parameters

destinationFileName
Name of the destination PDF file to be created. If the value of this parameter is null, the file name will be pulled from FileName.

Remarks

A linearized PDF file is a file that has been organized to enable efficient, incremental access in a network environment. The requested page of the PDF file is displayed in a user Web browser while the rest of the file is downloaded from the Web server.

To use this method, associate the PDFFile object with a valid PDF file name and optional password. Do this by either using the PDFFile(string fileName) or PDFFile(string fileName, string password) constructor, or set the file name and optional password directly by setting the FileName and Password properties. It is not necessary to call Load before using this method.

This method will use the following properties of the PDFFile object:

The following property is not used by this method:

Call IsLinearized to quickly determine if a PDF file is linearized.

Note: Currently, generating linearized PDF files with PDF/A compatibility can result in a PDF file that is not compatible with Adobe Preflight.

Example

This example will linearize a PDF (optimize it for Web viewing).

C#
Java
using Leadtools.WinForms; 
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.Controls; 
using Leadtools.Drawing; 
using Leadtools.ImageProcessing; 
using Leadtools.Pdf; 
using Leadtools.Svg; 
 
 
public void PDFFileLinearizeExample() 
{ 
   string sourceFileName = Path.Combine(LEAD_VARS.ImagesDir, @"Leadtools.pdf"); 
   string destinationFileName = Path.Combine(LEAD_VARS.ImagesDir, @"LEAD_linearized.pdf"); 
 
   // Ensure that the source file is not linearized 
   bool isLinearized = PDFFile.IsLinearized(sourceFileName, null); 
   Console.WriteLine("PDF file {0} isLinearized = {1}", sourceFileName, isLinearized); 
   Assert.IsFalse(isLinearized); 
 
   PDFFile pdf = new PDFFile(sourceFileName); 
   pdf.Linearize(destinationFileName); 
 
   // Ensure that the destination file is linearized 
   isLinearized = PDFFile.IsLinearized(destinationFileName, null); 
   Console.WriteLine("PDF file {0} isLinearized = {1}", destinationFileName, isLinearized); 
   Assert.IsTrue(isLinearized); 
 
   // Check again using PDFDocument class 
   using (PDFDocument document = new PDFDocument(destinationFileName)) 
   { 
      isLinearized = document.IsLinearized; 
      Console.WriteLine("PDF document {0} isLinearized = {1}", destinationFileName, isLinearized); 
      Assert.IsTrue(isLinearized); 
   } 
 
   // Open the destination file in Adobe Acrobat and go to 
   // File/Properties. You should see the "Fast Web View" option as "Yes"; 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images"; 
} 
 
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.*; 
 
 
public void pdfFileLinearizeExample() { 
 
   final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images"; 
   String sourceFileName = combine(LEAD_VARS_IMAGES_DIR, "Leadtools.pdf"); 
   String destinationFileName = combine(LEAD_VARS_IMAGES_DIR, "LEAD_linearized.pdf"); 
 
   // Ensure that the source file is not linearized 
   boolean isLinearized = PDFFile.isLinearized(sourceFileName, null); 
   System.out.printf("PDF file %s isLinearized = %b%n", sourceFileName, isLinearized); 
   assertFalse(isLinearized); 
 
   PDFFile pdf = new PDFFile(sourceFileName); 
   pdf.linearize(destinationFileName); 
 
   // Ensure that the destination file is linearized 
   isLinearized = PDFFile.isLinearized(destinationFileName, null); 
   System.out.printf("PDF file %s isLinearized = %b%n", destinationFileName, isLinearized); 
   assertTrue(isLinearized); 
 
   // Check again using PDFDocument class 
   PDFDocument document = new PDFDocument(destinationFileName); 
 
   isLinearized = document.isLinearized(); 
   System.out.printf("PDF document %s isLinearized = %b%n", destinationFileName, isLinearized); 
   assertTrue(isLinearized); 
   document = null; 
 
   // Open the destination file in Adobe Acrobat and go to 
   // File/Properties. You should see the "Fast Web View" option as "Yes"; 
} 
Requirements

Target Platforms

See Also

Reference

PDFFile Class

PDFFile Members

Help Version 23.0.2024.2.29
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Pdf Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.