DPI Conversion

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

Who is Participating?
oobaylyConnect With a Mentor Commented:
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

alpacamanAuthor Commented:
thanks for the snippet, helped a lot
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.