PSD to JPEG : Blank white image is generated (C# .NET)

Hi,

I’ve upgraded aspose-imaging to the latest version (2015 version to v19.4) and it seems to have broken PSD to JPEG conversion.

Here’s the code that worked properly before:

case PSD: {
    final Image image = Image.load(inputStream);
    try {
        ImageOptionsBase opts = new JpegOptions();
        image.save(outputStream, opts);
    } finally {
        image.dispose();
    }
    break;
}

Here’s an example file that converts to a blank white picture - Free PSD | Tropical foliage background . The .psd files that are blank have something in common: they are “3x 16-bit channels”.

$ file example_psd_doesnt_work.psd
example_psd_doesnt_work.psd: Adobe Photoshop Image, 4000 x 2666, RGB, 3x 16-bit channels

The rest have “3x 8-bit channels” and generate properly, so perhaps this is related to the cause of the problem?

I can’t find proper examples of converting PSD to JPEG that actually work with all PSD files. Any help is appreciated.

This problem breaks thumbnail generation as well, but I’m using this solution for now: Manipulating Photoshop Formats|Documentation

The quality of this thumbnail isn’t very good - is there a way to increase the quality?

Thanks

@atlassian,

I have worked with the sample file shared by you and have been able to observe the issue specified. An issue with ID IMAGINGJAVA-1328 has been created in our issue tracking system to further investigate and resolve the issue. This thread has been linked with the issue so that you may be notified once the issue will be fixed.

Thanks @Adnan.Ahmad, please let us know when you have an update for that.

As for the second question, is there any way to increase the quality of the thumbnail generation? https://docs.aspose.com/display/imagingjava/Manipulating+Photoshop+Formats#ManipulatingPhotoshopFormats-CreatingThumbnailsfromPSDFiles

If not I’ll just hope that there’s a solution to the PSD issue and resize and convert them.

Thanks

@atlassian,

You can try exploring different options in BmpImage class, which include different options like setting vertical or horizontal resolution or also Resize() method. If you still face issue, please share the sample code used on your end along with source file, obtained image and desired output image.

Changing the resolution doesn’t help with the thumbnail quality. I think this is just a limitation in the quality of the actual thumbnail image, so that’s okay.

If there’s any progress on the investigation on the PSD issue, please let me know. Thank you.

@atlassian,

We have internally observed the associated issue. Most likely this PSD file contains unsupported features, but we suggest you to please try the following workaround:

final Image image = Image.load(inputStream, 
                new PsdLoadOptions() {{ 
                    setReadOnlyMode(true); 
                }});
try
{
    ImageOptionsBase opts = new JpegOptions();
    image.save(outputStream, opts);
}
finally
{
    image.dispose();
}

EDIT: The readonly works for fix the incorrect conversions on 19.7, thank you.

Only the performance problems now (How to reduce memory usage of Image.load()).

@atlassian,

Thank you for your feedback. I like to share that the issue is still in progress. In fact this was a work around that was offered to see if that works on your end or not. We will share good news with you as soon as the issue will be fixed.