I have a base64 encoded image data . I am pasting the first few characters
string='data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD /2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopG R8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgo......'
I am doing following to it in ruby
decoded_string=Base64.decode64 string
output_file = Tempfile.new(['image','.jpeg'])
output_file.binmode
output_file.write image
After this when I am opening 'image.jpeg', It is giving error
Error interpreting JPEG image file (Not a JPEG file: starts with 0x75 0xab)
I also tried
File.open('a.jpeg', 'wb') do|f|
f.write decoded_string
end
In this case also, I got the same error.
What am I doing wrong?
File.open('shipping_label.gif', 'wb') do|f|
f.write(Base64.decode64(base_64_encoded_data))
end
This answer is from: How to save a base64 string as an image using ruby
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With