Steps to reproduce:
- Create a PNG-8 with a transparent background.
- Upload to WordPress 3.3.1.
- View original PNG in any browser, Chrome, Firefox, IE, etc. Notice that it retains transparency as it should.
- View a resized version of that PNG in any browser. Observe that the transparent portions of the PNG are now black.
Examples:
- Original uploaded image: http://me.mikelee.org/wp-content/uploads/icon-facebook-lg.png
- Resized version of the uploaded image: http://me.mikelee.org/wp-content/uploads/icon-facebook-lg-150×150.png
This occurs even with a clean install of WordPress 3.3.1 with no plugins activated. Any ideas on what might be causing this bug? I’ve been searching all over this forum, the WordPress support forums, and anywhere else Google can find. All I see out there are mentions of a NextGEN Gallery plugin bug and the infamous IE6 PNG transparency bug, neither of which appear to pertain to this problem.
Thanks in advance.
I’d try saving it as a PNG 24 first.
If that doesn’t work have a look at these:
http://www.akemapa.com/2008/07/10/php-gd-resize-transparent-image-png-gif/
https://stackoverflow.com/questions/6382448/png-transparency-resize-with-simpleimage-php-class
I can save you hours searching on the internet to solve this problem.
Make sure you do this when adding a PNG to WordPress
png must be png 24 bit
If you are adding a logo to your WordPress site make sure the size of the logo is the exact size of what is already there.
If the size of the png is too big it makes the transparent background go black.
WordPress 3.5 introduces WP_Image_editor, allowing use of either GD or Imagemagick, and apparently installing and using the PHP Imagemagick library is the solution to black transparency when resizing GIF files (or PNGs): http://lists.automattic.com/pipermail/wp-hackers/2014-January/047573.html
I got a similar problem: my PNG with transparency wasn’t recognized by WordPress.
It turns out that my PNG got imbeded a custom color profile. Once a took out and replace by a standard one, it worked fine.