Products | Support | Email a link to this topic. | Send comments on this topic. | Back to Introduction - All Topics | Help Version 19.0.3.14
|
Leadtools.PdfCompressor Namespace > PdfCompressorEngine Class > Insert Method : Insert(RasterImage,PdfCompressorOptions) Method |
public void Insert( RasterImage image, PdfCompressorOptions options )
'Declaration
Public Overloads Sub Insert( _ ByVal image As RasterImage, _ ByVal options As PdfCompressorOptions _ )
'Usage
Dim instance As PdfCompressorEngine Dim image As RasterImage Dim options As PdfCompressorOptions instance.Insert(image, options)
public: void Insert( RasterImage^ image, PdfCompressorOptions options )
For more information, refer to Creating a Compressed PDF File.
This example inserts an image into a PDF document and uses the MRC to make a proper segment for this image.
Imports Leadtools Imports Leadtools.PdfCompressor Imports Leadtools.Codecs Public Sub pdfCompressor_SegmentImage_MrcDocument(ByVal sender As Object, ByVal e As PdfCompressorSegmentImageEventArgs) 'This will prevent addition to any segment with type background If e.Segment.Type = SegmentTypeFlags.Background Then e.Cancel = True Else e.Cancel = False End If End Sub <TestMethod()> _ Public Sub PdfCompressorExample_MrcDocument() ' Load an image Dim codecs As RasterCodecs = New RasterCodecs() codecs.ThrowExceptionsOnInvalidImages = True Dim image As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "MRCSegmentation.mrc")) Dim pdfCompressor As New PdfCompressorEngine() Dim compressionTypes As PdfCompressorCompressionTypes = New PdfCompressorCompressionTypes() Dim pdfCompressorOptions As PdfCompressorOptions = New PdfCompressorOptions() 'Sets compression types needed for each segment compressionTypes.Comp1Bit = PdfCompressor1BitCompression.Zip1Bit compressionTypes.Comp2Bit = PdfCompressor2BitCompression.Lzw2Bit compressionTypes.CompPicture = PdfCompressorPictureCompression.JpgPic compressionTypes.QFactor = 2 'Flags for used compression types should be set compressionTypes.Flags = EnabledCompressionsFlags.EnableOneBit Or EnabledCompressionsFlags.EnableTwoBit Or EnabledCompressionsFlags.EnablePicture pdfCompressor.SetCompression(compressionTypes) 'Specify suitable profiles for input and output image pdfCompressorOptions.ImageQuality = PdfCompressorImageQuality.ComputerGenerated pdfCompressorOptions.OutputQuality = PdfCompressorOutputQuality.Excellent pdfCompressorOptions.Flags = SegmentationOptionsFlags.FavorOneBit Or SegmentationOptionsFlags.WithBackground AddHandler pdfCompressor.SegmentImage, AddressOf pdfCompressor_SegmentImage_MrcDocument pdfCompressor.Insert(image, pdfCompressorOptions) pdfCompressor.Write(Path.Combine(LEAD_VARS.ImagesDir, "Image.pdf")) End Sub Public NotInheritable Class LEAD_VARS Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" End Class
using Leadtools; using Leadtools.PdfCompressor; using Leadtools.Codecs; public void pdfCompressor_SegmentImage_MrcDocument(object sender, PdfCompressorSegmentImageEventArgs e) { //This will prevent addition to any segment with type background if(e.Segment.Type == SegmentTypeFlags.Background) e.Cancel = true; else e.Cancel = false; } [TestMethod] public void PdfCompressorExample_MrcDocument() { // Load an image RasterCodecs codecs = new RasterCodecs(); codecs.ThrowExceptionsOnInvalidImages = true; RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir,"MRCSegmentation.mrc")); PdfCompressorEngine pdfCompressor = new PdfCompressorEngine(); PdfCompressorCompressionTypes compressionTypes = new PdfCompressorCompressionTypes(); PdfCompressorOptions pdfCompressorOptions = new PdfCompressorOptions(); //Sets compression types needed for each segment compressionTypes.Comp1Bit = PdfCompressor1BitCompression.Zip1Bit; compressionTypes.Comp2Bit = PdfCompressor2BitCompression.Lzw2Bit; compressionTypes.CompPicture = PdfCompressorPictureCompression.JpgPic; compressionTypes.QFactor = 2; //Flags for used compression types should be set compressionTypes.Flags = EnabledCompressionsFlags.EnableOneBit | EnabledCompressionsFlags.EnableTwoBit | EnabledCompressionsFlags.EnablePicture; pdfCompressor.SetCompression(compressionTypes); //Specify suitable profiles for input and output image pdfCompressorOptions.ImageQuality = PdfCompressorImageQuality.ComputerGenerated; pdfCompressorOptions.OutputQuality = PdfCompressorOutputQuality.Excellent; pdfCompressorOptions.Flags = SegmentationOptionsFlags.FavorOneBit | SegmentationOptionsFlags.WithBackground; pdfCompressor.SegmentImage += new EventHandler<PdfCompressorSegmentImageEventArgs>(pdfCompressor_SegmentImage_MrcDocument); pdfCompressor.Insert(image, pdfCompressorOptions); pdfCompressor.Write(Path.Combine(LEAD_VARS.ImagesDir,"Out_Image.pdf")); } static class LEAD_VARS { public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; }