Problems with ConvertToMonitorRGB and ConvertForDisplay


hello,

 

i working on photoshop plug-in artivity (http://artivity.io/). goal capture data of creative process.

additionally pure metadata, want capture small renderings of changed layer png.

the main plug-in implemented automation plug-in, works fine.

on changes export plug-in triggered supposed write layer png.

i tried different methods haven't found 1 works.

 

first tried using png export of photoshop. required me change state of document (hide layers) , takes way long. additionally image not scaled down.

 

my next approach use readpixelsfromlevel() gave me scaled down representation of layer exportrecord::documentinfo::layersdescriptor

this means don't have worry scaling, awesome! saved images pngs boost::gil (something hope can in thread, have not tried yet).

for rgb8 images worked reasonably well.

when started implement same mechanism cmyk8 ran number of issues.

converting boost::gil resulted in vastly different image because didn't account colour profiles.

 

i tried convert cmyk image pscolorspacesuite2::converttomonitorrgb() find out takes int16 count parameter.

this means means function can convert 32767 byte in 1 call. needed call function multiple times.

well result looks fine performance bad solution not acceptable.

 

now hope find here.

is possible call pscolorspacesuite2::converttomonitorrgb() in different thread? time takes complete wouldn't bother me if it's not in ui thread.

would faster if call once? why count int16?

i tried using pscolorspacesuite2::convertfordisplay there no examples function , documentation bit ambiguous didn't far. managed kspbadparametererrors. function faster converttomonitorrgb()? worth trying out?

 

what other options have? need colour correction myself?

 

thank in advance,

moritz eberl



More discussions in Photoshop Plugin and Companion App SDK


adobe

Comments

Popular posts from this blog

Illustrator CS6 Ocurrío un error E/S en el archivo.

InDesign CC 2015 won't open - plugplugowl.dll

Why is os_ViewContainer running?