Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Trying to save base64 image using imagecreatefromstring and it is completely black

Tags:

php

base64

gd

I am trying to take a Base64 encoded image from the database and save it to a file. For whatever reason, when I try using imagecreatefromstring & imagepng the image is completely black. I have tried many different approaches, but I still end up with a black box. Below is my best attempt to get it to work. Any ideas? Thank you so much in advance!

$thefile = base64_decode($strImage);  
$img = imagecreatefromstring($thefile);  

if($img !== false)  
{
    header('Content-Type: image/png');  
    imagepng($img);  
    imagedestroy($img);   
}

This should be above, but the formatting did not look right....
$strImage='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';

like image 259
apple_coder Avatar asked Jan 27 '11 06:01

apple_coder


1 Answers

Call imagesavealpha() before your imagepng()

imagesavealpha($img, true);
imagepng($img);
like image 139
Scuzzy Avatar answered Sep 20 '22 01:09

Scuzzy