Rank: Member
Groups: Member
Joined: 5/27/2004(UTC) Posts: 7
|
I am trying to get color management (a proof preview in this case) to work and can't seem to do it. I am loading an RGB tif graphics file with no embedded color profile as a 32bppArgb bitmap. The code that I am using for profing is: Code: bitmap.Data.ColorManagement.Isnabled = False
bitmap.Data.ColorManagement.RgbProfile = path\AdobeRGB1998.icc
bitmap.Data.ColorManagement.Targetprofile = path\FargoProL.icm
bitmap.Data.ConvertTo24bppRgb True, ColorWhite
bitmap.DrawOnHdc ...
the image looks the same whether the Color Management conversion is done or not. If I use the above two profiles in Adobe Photoshop and do a proof, there is a noticable difference. The FargoProL.icm is a CMYK printer profile and the AdobeRGB1998.icc is an RGB color profile. Any suggestions. Edited by user Monday, December 24, 2007 4:47:04 PM(UTC)
| Reason: Not specified
|
|
|
|
Rank: Advanced Member
Groups: Member, Administration Joined: 8/2/2003(UTC) Posts: 876
Thanks: 2 times Was thanked: 27 time(s) in 27 post(s)
|
IsEnabled property must be set to True.
Besides, make sure if DataProfile is initialized too (if it is empty string, no profile is attached).
Please let me know if you need a code sample.
|
|
|
|
Rank: Member
Groups: Member
Joined: 5/27/2004(UTC) Posts: 7
|
I had tried setting IsEnabled to true as well as setting the DataProfile field with the same results (no noticable change). So a code sample would be appreciated. Thanks
|
|
|
|
Rank: Advanced Member
Groups: Member, Administration Joined: 8/2/2003(UTC) Posts: 876
Thanks: 2 times Was thanked: 27 time(s) in 27 post(s)
|
The code should be looking something like that: Code: Dim objBitmap As New Bitmap
objBitmap.LoadFromFile "c:\input.tif"
...
' Verify DataProfile. If you are sure that it always has embedded profile,
' you can omit this.
' Verify DataProfile
If objBitmap.Data.ColorManagement.DataProfile = "" Then
If objBitmap.Data.IsRgb Then
objBitmap.Data.ColorManagement.DataProfile = "c:\DefaultRgbProfile.icc"
ElseIf objBitmap.Data.IsCmyk Then
objBitmap.Data.ColorManagement.DataProfile = "c:\DefaultCmykProfile.icc"
Else ' if bitmap is grayscale
objBitmap.Data.ColorManagement.DataProfile = "c:\DefaultGrayscaleProfile.icc"
End If
End If
objBitmap.Data.ColorManagement.IsEnabled = True
objBitmap.Data.ColorManagement.RgbProfile = "C:\NecessaryRgbProfile.icm"
objBitmap.Data.ColorManagement.TargetProfile = "C:\IntermediateProfile.icm"
objBitmap.Data.ConvertTo24bppRgb
...
objBitmap.SaveToFile "c:\output.tif"
I just tried this code and here are the results: objBitmap.Data.ColorManagement.IsEnabled = True objBitmap.Data.ColorManagement.IsEnabled = False If you still has problems with it, please submit case with the input file and the profiles you are trying to use. Edited by user Monday, December 21, 2009 3:25:31 AM(UTC)
| Reason: Not specified Andrew attached the following image(s):
|
|
|
|
Rank: Member
Groups: Member
Joined: 5/27/2004(UTC) Posts: 7
|
I finally found my problem. I am working in 32bppArgb space and the color management doesn't seem to "take" if I apply it directly. However, if i first convert to 24bppRgb and then apply the color management, it works.
Could you tell me when you do the conversions, what algorithm do you use, Relative Colormetric, Perceptual, Saturation, Absolute Colormetric, something else. Also if a rendering method/intent is in the color profile does it overide your default?
Thanks
|
|
|
|
Forum Jump
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.