Solved

DPI Conversion

Posted on 2009-07-09
2
2,406 Views
Last Modified: 2013-12-03
I have a scanned image of a document that is 366dpi

width: 3424
height: 5606

I want to convert the DPI to 300.  I have used the code attached to convert it successfully to 300.  However the physical size of the image has increased and is unacceptable for our needs.  I am looking for a way to change the dpi of a tiff/bitmap and keep the original physical size of the image.  Any ideas would be great.  I am working in C# .net.


Bitmap pages = null;

System.IO.FileStream myStream = new FileStream(strImageFile, System.IO.FileMode.Open);

 pages = (Bitmap)Image.FromStream(myStream);

 pages.SetResolution(newDPI, newDPI);

  pages.Save(outFile, info, ep);

Open in new window

0
Comment
Question by:alpacaman
2 Comments
 
LVL 15

Accepted Solution

by:
oobayly earned 125 total points
ID: 24823579
You have to work out the physical size of the original first. Then you can create a duplicate of the original with a calculated pixel size based on your new resolution
      // Determine the Physical size of the original

      SizeF physical = new SizeF(

        pages.Width / pages.HorizontalResolution,

        pages.Height / pages.VerticalResolution);
 

      // Determine the required pixel size of the new image

      float newResolution = 300;

      SizeF newPixelSize = new SizeF(

        physical.Width * newResolution,

        physical.Height * newResolution);
 

      Bitmap newImage = new Bitmap(pages, Size.Round(newPixelSize));

      newImage.SetResolution(newResolution, newResolution);

Open in new window

0
 
LVL 1

Author Closing Comment

by:alpacaman
ID: 31601668
thanks for the snippet, helped a lot
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Read about why website design really matters in today's demanding market.
This article shows how to deploy dynamic backgrounds to computers depending on the aspect ratio of display
This tutorial demonstrates how to identify and create boundary or building outlines in Google Maps. In this example, I outline the boundaries of an enclosed skatepark within a community park.  Login to your Google Account, then  Google for "Google M…
The viewer will learn how to count occurrences of each item in an array.

863 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

25 Experts available now in Live!

Get 1:1 Help Now