JPEGExporterMBS CMYK image too dark

I’m using JPEGImporterMBS to create thumbnails of images that are displayed in a listbox.

It works well, however when CMYK images are being displayed, they are “too dark.”

RGB images display well.

Is there a way to bypass the CMYK darkening affects and just use a default profile for viewing?

I had considered making copies, opening and then converting all of the files to RGB, but would like to avoid that if possible.


You use LCMS here?
You add a color profile?
Without a ICC profile, this can’t work well.

Which is what I had been experimenting with. I will see if I can figure out how to do this to the thumbnail rather than the original file.


I did get this working, but wanted to bypass conversion if possible.

I noticed that Windows does a decent job of quickly displaying thumbnails for RGB and CMYK images, so I decided to try using built-in options. It displayed well, but both methods seemed slow.

I ended up switching to WinThumbnailMBS which is very fast and produces nice looking thumbnails. Thanks for offering this.

A few questions:

  1. As noted in the documentation, there is a risk using WinThumbnailMBS. The risk being that the thumbs are pulled from Windows and this Windows feature can be turned off.

Any suggestions for dealing with this or at least detecting whether or not thumbnails are turned off?

  1. This is a part of a bigger project using the XMP plugin. I am using it to read various entries. This is also very fast.

Because it is so fast, I am also using it to read color mode and image dimensions rather than opening or importing the image to get this info.

Since this is metadata from the image rather than info gathered from the image itself, is it reliable? For instance, is the Photoshop schema always in images?

Color mode and dimensions always seem to update themselves in the Photoshop XML.

  1. I also noticed that the following line doesn’t return “3” for RGB images. It returns an empty string. Grayscale returns 1 and CMYK returns 4, as it should.

Am I doing something wrong here?
hasStuff = xmp.GetProperty ( xmp.kNS_Photoshop, “ColorMode”, tmpStr1, options )

Thanks for any input.