educational

Image Manipulation Using PHP

I bet that many of you who develop websites have had this problem at least one time: how to resize, rotate and manipulate pics using PHP. I myself had this problem some time ago, and so I searched for the best solution. Among the options I found was a tool called ImageMagick.

ImageMagick is a standalone, command-line program that can be called with parameters to perform a requested change to either a single image, or to a set of images. ImageMagick is by far more complex than any other image processing tool I found, and although there may be other tools, I can recommend this one.

Since all of your image processing can be easily done by this tool, all you have to do is to install it on your Web server and then call it with the proper parameters. If you are using a Linux Web server, there are some configuration issues that you have to take care of, such as specifying full paths (paths from the root folder, not relative paths), and setting ‘umask’ to "0" in order to prevent changing file permissions in a way that will cause you problems in the future.

Here are some examples of how you can use ImageMagick:

• To Make Thumbnails:

<?
// Set the path to where the ImageMagick program is on your server
$path_imagemagick="/usr/X11R6/bin/";

// Set the path and filename to the picture
$path_picture="/www/sitename/pictures/picture1.jpg";

// Set the path and filename to where the thumb will be created
$path_thumb="/www/sitename/thumbs/thumb1.jpg";

// Set the largest dimension of the thumbnail (width for landscape and height for portraits)
$thumbnail_size=120;

// Set umask to 0 in order not to affect the file permissions during the next operation
umask(000);

// Execute the shell command that calls Image Magick with the proper parameters (as set above)
$ok=shell_exec($path_imagemagick."convert -size $thumbnail_size $path_picture -geometry $thumbnail_size $path_thumb");

// If shell_exec above returns 1 this mean that the operation was sucessful.
if ($ok)
{
echo "Thumbnail Created OK";
}

?>

• To Resize Images:
This is done the same way as above, except that the $path_thumb (which is the destination file) will have the same value as $path_picture – and this way the script will resize the original image, rather than create a new image.

• To Rotate Images:
To rotate an image, you must decide how much to rotate it (the number of degrees), and in which direction. Actually, all you have to know is the number of degrees you wish to rotate, since the direction is indicated by the plus and minus sign. So, +90 degrees means to rotate the pic counter clockwise for a quarter of circle (full circle is 360 degrees); -90 meens to rotate it clockwise for a quarter of circle:

<?
// Set the path to where the ImageMagick program is on your server
$path_imagemagick="/usr/X11R6/bin/";

// Set the path and filename to the picture
$path_picture="/www/sitename/pictures/picture1.jpg";

// Set the degrees with whom the picture will be rotated. Positive means counter clockwise and negative clockwise.
$degrees=-90;

// Set umask to 0 in order not to affect the file permissions with the next operation
umask(000);
$ok=shell_exec ($path_imagemagick."convert -rotate $degrees $path_picture $path_picture");

// If shell_exec above returns 1 this mean that the operation was sucessful.
if ($ok)
{
echo "Picture Rotated OK";
}

?>

• Apply A Watermark:

To do this, you will need to have an aditional image that will be used for the watermark.

<?
// Set the path to where the ImageMagick program is on your server
$path_imagemagick="/usr/X11R6/bin/";

// Set the path and filename to the picture
$path_picture="/www/sitename/pictures/picture1.jpg";

// Set the path and filename to the watermark picture
$path_watermark="/www/sitename/images/watermark.jpg";

// Set umask to 0 in order to not affect the file permissions during the next operation
umask(000);
$ok=shell_exec ($path_imagemagick."composite -watermark 15x70 -gravity SouthEast $path_watermark $path_picture
$path_picture");

// If shell_exec above returns 1 this mean that the operation was sucessful.
if ($ok)
{
echo "Picture Watermarked OK";
}

?>

As you can see, ImageMagick is a great tool for dynamically processing images using a PHP-enabled Web server. Try it for yourself, and see how easy automating your image manipulation tasks can be!

Copyright © 2026 Adnet Media. All Rights Reserved. XBIZ is a trademark of Adnet Media.
Reproduction in whole or in part in any form or medium without express written permission is prohibited.

More Articles

opinion

How to Maximize Value From Your Payment Processing Fees

Regulatory requirements are putting more and more pressure on the adult industry. To stay compliant, merchants need tools that help with content moderation, age verification and fraud solutions. Unfortunately, the fees for those tools are hitting merchants’ bottom lines — including fees charged by payment services providers.

Cathy Beardsley ·
opinion

Understanding Sin Taxes and the Legal Roadblocks Ahead

As of this writing, a bill sits on the desk of Utah’s governor, awaiting his signature to make it state law. That bill includes a provision imposing an excise tax of 2% on adult sites operating in the state.

Corey D. Silverstein ·
profile

LoyalFans' Anastasia Pierce Bridges Creator Education, Empowerment and Ownership

Anastasia Pierce beams when she talks about her 26 years in the industry. Full of passionate energy, she clearly doesn’t just work in adult; she loves it.

Women In Adult ·
opinion

Growing Site Revenue Under Ever-Changing Compliance Rules

Over the past year, many merchants have reported earnings that were flat or even a bit down. This is due to three main factors: age verification regulations, click-to-cancel rules, and banks backing away from cross-sales due to regulatory requirements and the rollout of the Visa Acquiring Monitoring Program (VAMP).

Cathy Beardsley ·
opinion

AI Safeguards for Platform Compliance and Trust

If your platform hosts user-generated content (UGC), then you already know protecting your brand is not merely a matter of good design or strong community guidelines. It requires systems that can verify who your users are, filter what they upload and ensure your business stays on the right side of regulators, payment processors and public opinion.

Christoph Hermes ·
opinion

How to Eliminate User Redirects and Improve Checkout Retention

Running an adult site, you work hard to create traffic and make sure your funnel is optimal, with the end goal of getting users to make a purchase. Then, right at that critical moment, what do you do? You send them somewhere else. Not good.

Jonathan Corona ·
profile

Stripchat's Jessica on Building Creator Success, One Step at a Time

At most industry events, the spotlight naturally falls on the creators whose personalities light up screens and social feeds. Behind the booths, parties and perfectly timed photo ops, however, there is someone else shaping the experience.

Jackie Backman ·
opinion

Inside the OCC's Debanking Review and Its Impact on the Adult Industry

For years, adult performers, creators, producers and adjacent businesses have routinely had their access to basic financial services curtailed — not because they are inherently higher-risk customers, but because a whole category of lawful work has long been treated as unacceptable.

Corey Silverstein ·
opinion

How to Build Operational Resilience Into Your Payment Ecosystem

Over the past year, we’ve watched adult merchants weather a variety of disruptions and speedbumps. Some even lost entire revenue streams overnight — simply because they relied too heavily on a single cloud provider that suffered an outage, lacked sufficient redundancy and failover, or otherwise fell short when it came to making sure their business was protected in case of unwelcome surprises.

Cathy Beardsley ·
opinion

Building a Stronger Strategy Against Card-Testing Bots

It’s a scenario every high-risk merchant dreads. You wake up one morning, check your dashboard and see a massive spike in transaction volume. For a fleeting moment, you’re excited at the premise that something went viral — but then reality sets in. You find thousands of transactions, all for $0.50 and all declined.

Jonathan Corona ·
Show More