downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

Imagick::quantizeImage> <Imagick::previousImage
Last updated: Fri, 27 Nov 2009

view this page in

Imagick::profileImage

(PECL imagick 2.0.0)

Imagick::profileImageAdds or removes a profile from an image

Description

bool Imagick::profileImage ( string $name , string $profile )
Warning

This function is currently not documented; only its argument list is available.

Adds or removes a ICC, IPTC, or generic profile from an image. If the profile is NULL, it is removed from the image otherwise added. Use a name of '*' and a profile of NULL to remove all profiles from the image.

Parameters

name

profile

Return Values

Returns TRUE on success.

Errors/Exceptions

Throws ImagickException on error.



add a note add a note User Contributed Notes
Imagick::profileImage
gavin at softyolk dot com
12-Jul-2009 11:28
Thanks for this very valuable information.
For a further push in the correct direction please
consider that you have to download the profiles,

and your most likely sources are:

http://www.color.org/srgbprofiles.xalter

and

http://www.adobe.com/support/downloads/product.jsp?product=62&platform=Windows

Note that the profiles are free, but you must install them
to make them available on you host system.
Eero Niemi (eero at eero dot info)
29-Apr-2008 02:01
If you need to convert images that are on CMYK format into RGB and want to preserve colour information, this may be helpful:

<?php
$image
= new Imagick("CMYK_image.jpg"); // load image
$profiles = $image->getImageProfiles('*', false); // get profiles
$has_icc_profile = (array_search('icc', $profiles) !== false); // we're interested if ICC profile(s) exist

if ($has_icc_profile === false)
{
 
// image does not have CMYK ICC profile, we add one
 
$icc_cmyk = file_get_contents('/path/to/icc/SomeCMYKProfile.icc');
 
$image->profileImage('icc', $icc_cmyk);
}

// Then we need to add RGB profile
$icc_rgb = file_get_contents('/path/to/icc/SomeRGBProfile.icc');
$image->profileImage('icc', $icc_rgb);

$image->setImageColorSpace(Imagick::COLORSPACE_RGB);

$image->writeImage("RGB_image.jpg");

?>

There may be better and more elegant ways to do this, but hope this helped.

Imagick::quantizeImage> <Imagick::previousImage
Last updated: Fri, 27 Nov 2009
 
 
show source | credits | stats | sitemap | contact | advertising | mirror sites