What is causing pdf to image to output blurry image?

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Puneeth kamath
    New Member
    • Dec 2010
    • 10

    What is causing pdf to image to output blurry image?

    I am working on pdf to xml conversion. I achieved pdf to text by using pdf clown samples. Now I am able to extract the pdf to text and image as well.

    But the problem is,the saved image is blurry.


    Code:
    [LEFT][/LEFT]else if (content is it.stefanochizzolini.clown.documents.contents.objects.GraphicsObject)
                    {
                        /*=============================================================================
                         *  TO EXTRACT THE GRAPHICAL OBJECT WITHIN THE PDF
                         =============================================================================*/
                        ContentScanner.GraphicsObjectWrapper objectWrapper = level.CurrentWrapper;
                        if (objectWrapper == null)
                        {
                            continue;
                        }
    
    
                        /*
                          NOTE: Images can be represented on a page either as
                          external objects (XObject) or inline objects.
                        */
                        SizeF? imageSize = null; // Image native size.
                        /*if (objectWrapper is PdfDataObject)
                        {
                         ContentScanner.GraphicsObjectWrapper gobjectwrapper=(ContentScanner.GraphicsObjectWrapper)gobjectwrapper;
                            it.stefanochizzolini.clown.objects.PdfDataObject pdobjt=gobjectwrapper
                        }*/
                        //if(objectWrapper is Image)
                        //{
                        //    }
                        if (objectWrapper is ContentScanner.XObjectWrapper)
                        {
                            ContentScanner.XObjectWrapper xObjectWrapper = (ContentScanner.XObjectWrapper)objectWrapper;
                            it.stefanochizzolini.clown.documents.contents.xObjects.XObject Xobject = xObjectWrapper.XObject;
                            // Is the external object an image?
                            if (Xobject is it.stefanochizzolini.clown.documents.contents.xObjects.ImageXObject)
                            {
                                txtOutput.Text = txtOutput.Text + Environment.NewLine +
                                  "External Image '" + xObjectWrapper.Name + "' (" + Xobject.BaseObject + ")"; // Image key and indirect reference.
    
                                imageSize = Xobject.Size; // Image native size.
    
                                PdfDataObject dataObject = Xobject.BaseDataObject;
    ;
                                PdfDictionary header = ((PdfStream)dataObject).Header;
                                if (header.ContainsKey(PdfName.Type) && header[PdfName.Type].Equals(PdfName.XObject) && header[PdfName.Subtype].Equals(PdfName.Image))
                                {
                                    if (header[PdfName.Filter].Equals(PdfName.DCTDecode)) // JPEG image.
                                    {
                                        // Get the image data (keeping it encoded)!
                                        IBuffer body1 = ((PdfStream)dataObject).GetBody(false);
                                           
                                        // Export the image!
                                       
                                        ExportImage(
                                          body1,
                                          txtOutputPath.Text + System.IO.Path.DirectorySeparatorChar + "Image_" + (index++) + ".bmp"
                                          );
                                    }
                                }
    
    
    
                            }
    
    
    
     private void ExportImage(IBuffer data, string outputPath)
            {
                FileStream outputStream;
                try
                { outputStream = new FileStream(outputPath, FileMode.CreateNew); }
                catch (Exception e)
                { throw new Exception(outputPath + " file couldn't be created.", e); }
    
                try
                {
                    BinaryWriter writer = new BinaryWriter(outputStream);
                    writer.Write(data.ToByteArray());
                    writer.Close();
                    outputStream.Close();
                }
                catch (Exception e)
                { throw new Exception(outputPath + " file writing has failed.", e); }
    
                Console.WriteLine("Output: " + outputPath);
            }
    Last edited by Niheel; Jan 27 '11, 05:13 AM.
  • Puneeth kamath
    New Member
    • Dec 2010
    • 10

    #2
    Now that extracted images are negative,actull y it is correctly in MAC OS,but when it comes to windows it is showing negative image.Please help me to get the solution.

    Comment

    Working...