ImageEn for Delphi and C++ Builder ImageEn for Delphi and C++ Builder

 

ImageEn Forum
Profile    Join    Active Topics    Forum FAQ    Search this forumSearch
Forum membership is Free!  Click Join to sign-up
Username:
Password:
Save Password
Forgot your Password?

 All Forums
 ImageEn Library for Delphi, C++ and .Net
 ImageEn and IEvolution Support Forum
 ICC / ICM profile integration
 New Topic  Reply to Topic
Author Previous Topic Topic Next Topic  

tjarrault

France
9 Posts

Posted - Jul 07 2023 :  08:24:39  Show Profile  Reply
Hi,

1/
I am using the following code to insert a custom ICC / ICM profile within a jpeg file:


  ImageEnIO1.LoadFromFile( 'c:\testimage.JPG' );
  ImageEnIO1.params.InputICCProfile.LoadFromFile( 'c:\myprofile.icc' );

  ImageEnIO1.Params.JPEG_Quality         := 100;          //1 to 100
  ImageEnIO1.Params.JPEG_CromaSubsampling:= ioJPEG_NONE;  // 4:4:4 croma sub-sampling. Highest quality
  ImageEnIO1.Params.JPEG_DCTMethod       := ioJPEG_ISLOW; // Slow but accurate integer algorithm (default)
  ImageEnIO1.Params.JPEG_Progressive     := true;
  ImageEnIO1.Params.JPEG_Smooth          := 0;

  ImageEnIO1.SaveToFile( 'c:\testimage.JPG_ICC.JPG');


I don't want to alter original image quality, am I using correct JPEG settings?
I have noticed a significant increase of file size (from 0.7MB to 1.7MB with attached samples), what is causing such increase?


2/
I am then using the following code to display the ICC profile information contained this jpeg file:


  ImageEnView1.IO.LoadFromFile( 'c:\testimage.JPG_ICC.JPG' );

  labelICCIn.Enabled:= ierICC in ImageEnView1.IO.Params.ContainsInfo;

  labelICCIn.Caption:= 'IN    - Color space: '+ ImageEnView1.IO.Params.InputICCProfile.InputColorSpace
                      + ' - Description: '  + ImageEnView1.IO.params.InputICCProfile.Description
                      + ' - Copyright: '    + ImageEnView1.IO.params.InputICCProfile.Copyright;

  labelICCOut.Caption:= 'OUT - Color space: '+ ImageEnView1.IO.Params.OutputICCProfile.InputColorSpace
                      + ' - Description: '  + ImageEnView1.IO.params.OutputICCProfile.Description
                      + ' - Copyright: '    + ImageEnView1.IO.params.OutputICCProfile.Copyright;


With some profile, like the attached one, I obtain an empty description an copyright while color space is ok (RGB).
Opening the same file in GIMP show me the expected description & copyright values, am I missing something?

DELPHI 10.1
IMAGEEN 12.0

thanks for the support

Thomas

attach/tjarrault/20237782228_ICC_test_data.zip
2663.56 KB

Thomas

xequte

38611 Posts

Posted - Jul 07 2023 :  18:37:55  Show Profile  Reply
Hi Thomas

1. In this case, because the image content is being saved it will need to be reencoded which will make it larger at 100% quality (this is the nature of JPEG)

2. At this stage Unicode tags are not supported for ICC, but I have bumped up its priority in our to-do list

Nigel
Xequte Software
www.imageen.com
Go to Top of Page

tjarrault

France
9 Posts

Posted - Jul 10 2023 :  10:25:26  Show Profile  Reply
Hi Nigel,

1. I have finally used this function IECalcJpegFileQuality that allowed me to identify original image quality (97 in my case).
Setting quality to 97 with 4:2:2 chroma gave me equivalent file size than the original image.

2. Do you communicate on release / maintenance cycle timing?

thanks
Thomas

Thomas
Go to Top of Page

xequte

38611 Posts

Posted - Jul 10 2023 :  18:09:14  Show Profile  Reply
Hi Thomas

1. Yes, but there will be some loss of quality

2. The schedule we work to, is one major release per year, and several smaller releases, but the timing is not set. We are due for a big (but not major) release over the next month or so, depending on some items currently in development.

Nigel
Xequte Software
www.imageen.com
Go to Top of Page

xequte

38611 Posts

Posted - Jul 27 2023 :  23:05:17  Show Profile  Reply
Hi Thomas

In our latest beta we have support for Unicode tags in ICC. Can you email us to test it.

Nigel
Xequte Software
www.imageen.com
Go to Top of Page

tjarrault

France
9 Posts

Posted - Aug 29 2023 :  04:40:43  Show Profile  Reply
Hi Nigel,

unfortunately I was not able to test this beta prior 12.5 version release that I have just tested.
It seems this 12.5 version is not fully handling unicode (copyright is still empty) and more important introduced a regression on profile integration.

ICC profile name (decription field) seems not saved properly using the method described in first post of this topic, see below picture when resulting jpg is opened in GIMP:



With ImageEN V12.0 same code gives the following




I have built a sample project + data to demonstrate this:
attach/tjarrault/202382943751_ICC_TEST.zip
3944.92 KB


1/ reading ICC infos still display an empty Copyright while description is now properly read (true for jpg with ICC profile integrated using V12 version):



2/ integrating ICC profile now empty description field in resulting jpg while Copyright saving seems to act as in v12 version (= written but not readable):




thanks for your support


Thomas
Go to Top of Page

xequte

38611 Posts

Posted - Aug 30 2023 :  00:25:58  Show Profile  Reply
Hi Thomas

Please email me to test an updated version.

Nigel
Xequte Software
www.imageen.com
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
Jump To: