PHPFixing
  • Privacy Policy
  • TOS
  • Ask Question
  • Contact Us
  • Home
  • PHP
  • Programming
  • SQL Injection
  • Web3.0

Monday, October 10, 2022

[FIXED] How to encode an image resource to base64?

 October 10, 2022     base64, encode, gd, image, php     No comments   

Issue

I was wondering if there's a way to encode an image to a base64 if it was a resource for example if I loaded an image using GD

    $image = imagecreatefromjpeg("captcha/$captcha-$num.jpg");

    // Add some filters
    imagefilter($image, IMG_FILTER_PIXELATE, 1, true);
    imagefilter($image, IMG_FILTER_MEAN_REMOVAL);

If this was my code and instead of saving the image and displaying it using

<img src='someimage.jpg'>

I wanted to display it as a data URI without having to save it, like

<img data='src="data:image/jpeg;base64,BASE64_HERE'>

How can I do that?


Solution

$image = imagecreatefromjpeg("captcha/$captcha-$num.jpg");

// Add some filters
imagefilter($image, IMG_FILTER_PIXELATE, 1, true);
imagefilter($image, IMG_FILTER_MEAN_REMOVAL);

ob_start(); // Let's start output buffering.
    imagejpeg($image); //This will normally output the image, but because of ob_start(), it won't.
    $contents = ob_get_contents(); //Instead, output above is saved to $contents
ob_end_clean(); //End the output buffer.

$dataUri = "data:image/jpeg;base64," . base64_encode($contents);


Answered By - Bez Hermoso
Answer Checked By - David Marino (PHPFixing Volunteer)
  • Share This:  
  •  Facebook
  •  Twitter
  •  Stumble
  •  Digg
Newer Post Older Post Home

0 Comments:

Post a Comment

Note: Only a member of this blog may post a comment.

Total Pageviews

Featured Post

Why Learn PHP Programming

Why Learn PHP Programming A widely-used open source scripting language PHP is one of the most popular programming languages in the world. It...

Subscribe To

Posts
Atom
Posts
Comments
Atom
Comments

Copyright © PHPFixing