PDA

View Full Version : Can iPhoto 6 export RAW images to jpegs in sRGB? (color profile)


Pretz
04-25-2006, 06:39 PM
Ok, here's my issue.
Whenever I import raw files from my Rebel XT, iPhoto wants to make them Adobe RGB.
That means when I export my images (to jpgs or to flickr), they look like crap in any browser that doesn't understand ICC profiles (which is everything but Safari, just about), because those browsers assume sRGB.

I don't know why iPhoto defaults to Adobe RGB, as in the help file for "Add ColorSync profile" which I have selected it says
If you select this option, the color profile assigned will usually be "cameraRGB," an Apple-specific version of the commonly used sRGB, which allows image colors to map more closely to Apple monitors. If your image file settings specify the use of Adobe RGB, iPhoto assigns that profile. If another color profile is already embedded, iPhoto uses the profile provided.

I'm almost certain my RAW files don't specify Adobe RGB, since RAW files don't inherently have any color profile and my camera is set to sRGB anyway.

Any ideas?

thanks.

naratesk
03-30-2008, 10:52 AM
I'd wondering around with this topic for a while and find my workflow solution. Hope this would help.

iPhoto 6 always export with Adobe RGB profile (as far as I know).

So, I use Automator workflow to convert the exported files' adobe RGB to sRGB.

Here's my workflow

1. Get Selected Finder Items
2. Copy Finder Items (to preserve original file)
3. Get Folder Contents (in the case that you apply to all picture in the folder. In the case that you apply directly to files, this step won't hurt you though)
4. Apply ColorSync Profile to Images

Then, save the workflow as a Finder plugin.

Now, anytime you export the iPhoto pictures, you can convert those to apply sRGB by right-click at the exported pictures (or folder) -> Automators -> the work flow you just did. Then you'll get the pictures with sRGB profile :)

Old Toad
03-30-2008, 07:36 PM
If you use this Applescript provided by Apple to embed the sRGB profile you won't get the jpg compression that the Automator method imports on the file reducing the file size a fair amount.

(*
Embed specific profile
©2002 Apple Computer, Inc.

Here's an example of using a specific profile installed in the ColorSync Profiles folder.
You can easily modify this script to make it embed any other installed profile
by replacing the string "sRGB Profile" with the name of the profile you want to use.

Notice we're referring to the profile as "profile" something, not something "as alias".
This means we're referring to it as a profile object, which would be
one of the profiles currently installed in the ColorSync Profiles folder.
The object name is the internal description name of the profile, not necessarily
the same as the file name. Use the script "Show profile info" to determine a profile's
internal description, and use the script "Rename profile" to change it.

A profile has to be in the profiles folder, it can't just be on the desktop.
*)



on open draggeditems
tell application "ColorSyncScripting" to launch

display dialog "Embed the sRGB Profile into images?"

set sourcefiles to filelistFromSelection(draggeditems)
repeat with thisFile in sourcefiles
set thisFile to thisFile as alias

try
tell application "ColorSyncScripting" to embed thisFile with source profile "sRGB Profile"
on error errmsg
activate
display dialog errmsg
end try
end repeat

tell application "ColorSyncScripting" to set quit delay to 5
end open


--returns dragged files OR files at first level of one dragged folder
on filelistFromSelection(theselection)
set hasfolder to false
tell application "Finder"
repeat with thisItem in (theselection as list)
if (class of item thisItem is folder) or (class of item thisItem is disk) then
set hasfolder to true
end if
end repeat
end tell
if ((count item of (theselection as list)) > 1) and hasfolder then
display dialog "Drag multiple files or a single folder." buttons {"OK"} default button 1
return ""
end if
tell application "Finder"
if hasfolder then
set filelist to (every item of folder (item 1 of (theselection as list))) as alias list
else
set filelist to (theselection as list)
end if
end tell
return filelist
end filelistFromSelection