Segments the specified image using Mixed Raster Content (MRC segmentation) and then compresses it and
inserts it into the PDF file.
Syntax
Parameters
- image
- Image to be inserted into the PDF file.
- options
- The PdfCompressorOptions structure that contains the options to be used to write the image to the PDF file.
Example
This example inserts an image to pdf document and uses the MRC to make a proper segment for this image.
Visual Basic | Copy Code |
---|
Public Sub pdfCompressor_SegmentImage_MrcDocument(ByVal sender As Object, ByVal e As PdfCompressorSegmentImageEventArgs)
If e.Segment.Type = SegmentTypeFlags.Background Then
e.Cancel = True
Else
e.Cancel = False
End If
End Sub
Public Sub PdfCompressorExample_MrcDocument()
RasterCodecs.Startup()
Dim codecs As RasterCodecs = New RasterCodecs()
codecs.ThrowExceptionsOnInvalidImages = True
Dim image As RasterImage = codecs.Load(LeadtoolsExamples.Common.ImagesPath.Path + "MRCSegmentation.mrc")
Dim pdfCompressor As PdfCompressor = New PdfCompressor()
Dim compressionTypes As PdfCompressorCompressionTypes = New PdfCompressorCompressionTypes()
Dim pdfCompressorOptions As PdfCompressorOptions = New PdfCompressorOptions()
compressionTypes.Comp1Bit = PdfCompressor1BitCompression.Zip1Bit
compressionTypes.Comp2Bit = PdfCompressor2BitCompression.Lzw2Bit
compressionTypes.CompPicture = PdfCompressorPictureCompression.JpgPic
compressionTypes.QFactor = 2
compressionTypes.Flags = EnabledCompressionsFlags.EnableOneBit Or EnabledCompressionsFlags.EnableTwoBit Or EnabledCompressionsFlags.EnablePicture
pdfCompressor.SetCompression(compressionTypes)
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(LeadtoolsExamples.Common.ImagesPath.Path + "Image.pdf")
End Sub |
C# | Copy Code |
---|
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; } public void PdfCompressorExample_MrcDocument() { // Load an image RasterCodecs.Startup(); RasterCodecs codecs = new RasterCodecs(); codecs.ThrowExceptionsOnInvalidImages = true; RasterImage image = codecs.Load(LeadtoolsExamples.Common.ImagesPath.Path + "MRCSegmentation.mrc"); PdfCompressor pdfCompressor = new PdfCompressor(); 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(LeadtoolsExamples.Common.ImagesPath.Path + "Image.pdf"); } |
Remarks
Requirements
Target Platforms: Microsoft .NET Framework 2.0, Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family
See Also