2by
2by

Reputation: 1093

PHP: how to create an image from another PNG image

I have a small Minecraft server where people can upload their skins. Minecraft skins are small png images. Is it possible to convert this png image to another png image via PHP (e.g. GD library)?

I have made this image to help me explain what I am trying to do:

Minecraft skin php converter

Upvotes: 1

Views: 1088

Answers (3)

KodeFor.Me
KodeFor.Me

Reputation: 13511

Here is the PHP manual for creating images from png :

http://php.net/manual/en/function.imagecreatefrompng.php

Here is a simple tutorial :

http://www.phptutorial.info/?imagecreatefrompng

Upvotes: 1

Marc B
Marc B

Reputation: 360572

Yes, it's possible. You'd need multiple imagecopy commands to pull out sections of the skin image and paste it into the proper spots in the "output" image.

Basic order of operations would be:

$input = imagecreatefrompng('skin.png');
$output = imagecreatetruecolor(800, 600); // whatever the dimensions should be.

imagecopy($output, $input, 0,0, 10,20, 50,60);
imagecopy(...);
...
...

The first copy command is saying "take a 50x60 section of the input image, starting at coordinates 10x20, and paste it into the destination image in the top left corner".

The actual sequence/coordinates/sizes will be up to you to figure out.

If you're not doing a 1:1 copy of the image and are doing resizing, then you'll want imagecopyresampled() instead.

Upvotes: 5

user937450
user937450

Reputation: 733

You can do this with CSS

Here is a tutorial: http://www.w3schools.com/css/css_image_sprites.asp

Upvotes: 0

Related Questions