Skip to main content

Converting PSD with PHP/ImageMagick

After seeing feature rich options in Imagick PECL extension at Mikko Koppanen's (the author) website and also impressed with ImageMagick's features, I have decided to use it for the PSD to XHTML conversion website that I'm architecting and managing.

Since, the team wants programming help for converting PSD images, I have tried it (documentation is sparse on PSD handling)

Converting PSD to PNG/JPEG/etc


Note that, flattenImages() is needed for layered/multi-page PSD file.


<?php
$im = new Imagick('test.psd');
$im->flattenImages();
$im->setImageFormat('png');
$im->writeImage('test.png');
?>



Extracting PSD layers


One by one



<?php
$im = new Imagick('test.psd');
$im->setImageFormat('png');
for ($i = 0, $num_layers = $im->getNumberImages(); $i < $num_layers; ++$i) {
$im->setImageIndex($i);
$im->writeImage('layer' . $i . '.png');
}
?>


Note that, there is a better version below

In a single call with writeImages()



<?php
$im = new Imagick('test.psd');
$im->setImageFormat('png');
$im->writeImages('layer%d.png', true);
?>


Note: Second parameter of writeImages() is for adjoin

Bug

While doing so and comparing with the results of XnView, I have noted a same problem/issue as mentioned here in the forum--that is, most of the extracted layers/images are distorted. By the way, I have tried in WAMP and yet to try it in LAMP

Comments

Rinto Geroge said…
Great work Rajesh ,Thanks anyway
Rinto said…
Rajesh,I am experiencing some problem while exporting psd to png ,looses the resolution .Actually I converted 500 dpi psd to png ,but got 72 dpi png .How can keep the resolution ?
Rinto:

After second thought, you'd be better off with the command line "convert" instead of this extension

Popular posts from this blog

Zac Brown Band rocks...

When I was doing UG, my super-senior friend Ronald introduced me to MLTR and I was totally taken away by the music then. About 15-years later, I'm feeling same ecstasy when listening to Zac Brown Band 's Whatever It Is and Highway 20 Ride . The voice and music are amazingly cool.

HRM systems diagnostic checklists

For last couple of days, I have tried to get overall idea about appraisal system in other companies and materials about appraisals. While checking, I came across an interesting checklist and warning indicators : Your organization is more than likely in trouble if any of the following holds true: chronic industrial relations problems no means of resolving employee grievances increasing / erratic employee turnover increasing number of customer complaints no pride in the organization inter-group conflicts no career paths for ambitious talented employees dissatisfaction with pay and conditions unclear job roles no clear performance measures quality is unimportant bad product service / delivery records poor recruitment standards / practices no management development programs no induction training for new employees critical skill shortages inter-departmental conflict you do not know if any of the above are applicable you ignore any of the above