Reading PSD file format

masfenix picture masfenix · Jan 6, 2009 · Viewed 32.6k times · Source

I wonder if this is even possible. I have an application that adds a context menu when you right click a file. It all works fine but here is what I'd like to do:

If the file is a PSD then I want the program to extract the image. Is this possible to do without having Photoshop installed?

Basically I want the user to right click and click "image" which would save a .jpg of the file for them.

edit: will be using c# Thanks

Answer

Dirk Vollmar picture Dirk Vollmar · Jan 6, 2009

The ImageMagick libraries (which provide bindings for C#) also support the PSD format. They might be easier to get started with than getting into the Paint.NET code and also come with a quite free (BSD-like) license.

A simple sample (found at http://midimick.com/magicknet/magickDoc.html) using MagickNet would look like this:

using System;

static void Main(string[] args)
{
    MagickNet.Magick.Init();
    MagicNet.Image img = new MagicNet.Image("file.psd");
    img.Resize(System.Drawing.Size(100,100));
    img.Write("newFile.png");
    MagickNet.Magick.Term();
}

Note: MagickNet has moved to http://www.codeproject.com/KB/dotnet/ImageMagick_in_VBNET.aspx