Creates a PDF document that is optimized for fast web viewing.
public bool Linearized {get; set;}
@property (nonatomic, assign) BOOL linearized;
public:
property bool Linearized
{
bool get()
void set(bool value)
}
Linearized # get and set (CodecsPdfSaveOptions)
Value | Description |
---|---|
true | To create a PDF document optimized for fast web viewing. |
false | To create a PDF document not optimized for fast web viewing. The default value is false. |
A linearized PDF file is a file that has been organized in such a way as to enable efficient, incremental access in a network environment. Linearized PDF files allow the first page of the PDF file to be displayed in a user web browser before the entire file is downloaded from the Web server.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Core;
public void CodecsPdfOptionsExample()
{
RasterCodecs codecs = new RasterCodecs();
string srcFileName = Path.Combine(LEAD_VARS.ImagesDir, "PDFSegmentation.pdf");
string destFileName1 = Path.Combine(LEAD_VARS.ImagesDir, "PdfOptions.pdf");
string destFileName2 = Path.Combine(LEAD_VARS.ImagesDir, "PdfOptions.bmp");
CodecsImageInfo info = codecs.GetInformation(srcFileName, true);
codecs.Options.Pdf.InitialPath = @"C:\MyApp\Bin";
info = codecs.GetInformation(srcFileName, true);
Debug.WriteLine("Information for: {0}", srcFileName);
Debug.WriteLine(string.Format("Document: {0}", info.Document)); // CodecsDocumentImageInfo reference
Debug.WriteLine(string.Format("Document: {0}", info.Document.IsDocumentFile));
Debug.WriteLine(string.Format("Document: {0}", info.Document.PageHeight));
Debug.WriteLine(string.Format("Document: {0}", info.Document.PageWidth));
Debug.WriteLine(string.Format("Document: {0}", info.Document.Unit));
Debug.WriteLine(string.Format("Document: {0}", info.IsGray8Alpha));
Debug.WriteLine(string.Format("Palette: {0}", info.GetPalette()));
// Check if the PDF engine is installed then get the load and save options of the PDF files.
if (codecs.Options.Pdf.IsEngineInstalled)
{
// Resulting image pixel depth.
// CodecsPdfOptions & CodecsPdfLoadOptions reference
codecs.Options.Pdf.Load.DisplayDepth = 24;
codecs.Options.Pdf.Load.GraphicsAlpha = 4;
codecs.Options.Pdf.Load.DisableCieColors = false;
codecs.Options.Pdf.Load.DisableCropping = false;
codecs.Options.Pdf.Load.EnableInterpolate = false;
codecs.Options.Pdf.Load.Password = "";
// Type of font anti-aliasing to use.
codecs.Options.Pdf.Load.TextAlpha = 1;
codecs.Options.Pdf.Load.UseLibFonts = true;
// Horizontal,vertical display resolution in dots per inch.
codecs.Options.RasterizeDocument.Load.XResolution = 150;
codecs.Options.RasterizeDocument.Load.YResolution = 150;
// CodecsRasterizeDocumentOptions & CodecsRasterizeDocumentLoadOptions reference
codecs.Options.RasterizeDocument.Load.BottomMargin = 0.1;
codecs.Options.RasterizeDocument.Load.LeftMargin = 0.1;
codecs.Options.RasterizeDocument.Load.PageHeight = 11;
codecs.Options.RasterizeDocument.Load.PageWidth = 8.5;
codecs.Options.RasterizeDocument.Load.Resolution = 150;
codecs.Options.RasterizeDocument.Load.RightMargin = 1.25;
codecs.Options.RasterizeDocument.Load.SizeMode = CodecsRasterizeDocumentSizeMode.None; // CodecsRasterizeDocumentSizeMode Enumeration reference
codecs.Options.RasterizeDocument.Load.TopMargin = 1.0;
codecs.Options.RasterizeDocument.Load.Unit = CodecsRasterizeDocumentUnit.Pixel; // CodecsRasterizeDocumentUnit Enumeration reference
using (RasterImage image = codecs.Load(srcFileName, 0, CodecsLoadByteOrder.BgrOrGray, 1, 1))
{
// Set access rights for the user when he\she opens the file we create
// CodecsPdfSaveOptions reference
codecs.Options.Pdf.Save.AssembleDocument = true;
codecs.Options.Pdf.Save.ExtractText = true;
codecs.Options.Pdf.Save.ExtractTextGraphics = true;
codecs.Options.Pdf.Save.PrintDocument = false;
codecs.Options.Pdf.Save.FillForm = true;
codecs.Options.Pdf.Save.ModifyAnnotation = true;
codecs.Options.Pdf.Save.ModifyDocument = true;
codecs.Options.Pdf.Save.OwnerPassword = "LEAD Technologies";
codecs.Options.Pdf.Save.PrintFaithful = false;
codecs.Options.Pdf.Save.TextEncoding = CodecsPdfTextEncoding.Hex;
codecs.Options.Pdf.Save.Use128BitEncryption = true;
codecs.Options.Pdf.Save.UserPassword = "LEAD";
// Set the PDF version to be v1.4
codecs.Options.Pdf.Save.Version = CodecsRasterPdfVersion.V14;
// Save it as linearized (optimized for web view)
codecs.Options.Pdf.Save.Linearized = true;
codecs.Options.Pdf.Save.LowMemoryUsage = false;
codecs.Options.Pdf.Save.SavePdfA = false;
codecs.Options.Pdf.Save.SavePdfv13 = false;
codecs.Options.Pdf.Save.SavePdfv14 = false;
codecs.Options.Pdf.Save.SavePdfv15 = false;
codecs.Options.Pdf.Save.SavePdfv16 = false;
codecs.Options.Pdf.Save.SavePdfv17 = false;
codecs.Options.Pdf.Save.UseImageResolution = true;
// Save the image back as PDF
codecs.Save(image, destFileName1, RasterImageFormat.RasPdf, 24);
}
// And load it back before saving it as BMP
using (RasterImage image = codecs.Load(destFileName1))
{
codecs.Save(image, destFileName2, RasterImageFormat.Bmp, image.BitsPerPixel);
}
}
else
{
Debug.WriteLine("PDF Engine is not found!");
}
// Clean up
codecs.Dispose();
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images";
}
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document