Giter Site home page Giter Site logo

Comments (23)

ahtabbasi avatar ahtabbasi commented on May 19, 2024 12

I have found a solution for this, might help others. Please test and verify.

I replaced below code:

BufferedImage finalImage = Thumbnails.of(temp)
                        .size(videoWidth, videoHeight)                    
                        .asBufferedImage();

with:

BufferedImage finalImage = Thumbnails.of(temp)
                        .size(videoWidth, videoHeight)                        
                        .imageType(BufferedImage.TYPE_INT_ARGB)
                        .asBufferedImage();

Input image used was indexed 8 bit png with transparency.

from thumbnailator.

jforjava1981 avatar jforjava1981 commented on May 19, 2024 1

+1: We will also like to have this feature.

from thumbnailator.

theyuv avatar theyuv commented on May 19, 2024 1

Is there something that's wrong with the option suggested here for solving this issue:
https://stackoverflow.com/questions/44383332/how-to-replace-black-background-with-white-on-image-resizing-using-thumbnailator

ie: call .addFilter(new Canvas(...., Color.WHITE))

It seems to work, is there a reason why shouldn't use this?

from thumbnailator.

GoogleCodeExporter avatar GoogleCodeExporter commented on May 19, 2024
Hi,

Thank you for reporting this issue.

I was able to reproduce the issue you have encountered with Thumbnailator 0.4.2.

The root cause is that the original image is a image which is using an indexed 
palette with a specific color used for the transparent pixels. (Similar to how 
transparent GIFs work)

There is no workaround for this issue (as fixing this problem will require 
additional checks in the code), so there isn't anything that can be done at 
this moment.

If it is possible, if you can use a PNG image with an actual alpha 
(transparency) channel, then it should be able to keep the transparency 
correctly.

Original comment by [email protected] on 11 Nov 2012 at 11:56

  • Changed title: Resizing an index-paletted transparent PNG results in a black background
  • Changed state: Accepted
  • Added labels: Priority-Low
  • Removed labels: Priority-Medium

from thumbnailator.

GoogleCodeExporter avatar GoogleCodeExporter commented on May 19, 2024
Thank you for your help.
Sincerely

Original comment by [email protected] on 13 Nov 2012 at 9:25

from thumbnailator.

GoogleCodeExporter avatar GoogleCodeExporter commented on May 19, 2024
I would love to see this resolved since I can't control whether the source 
image has an alpha channel or not.

Let me know if there's anything I can do.

Original comment by [email protected] on 13 Feb 2013 at 10:33

from thumbnailator.

GoogleCodeExporter avatar GoogleCodeExporter commented on May 19, 2024
Use the following with your image to replace the Transparent Pixels with White 
color.  It worked perfectly with me.

if( buffered.getColorModel().getTransparency() != Transparency.OPAQUE) {
            int w = buffered.getWidth();
            int h = buffered.getHeight();
            image2 = new BufferedImage(w,h,BufferedImage.TYPE_INT_RGB);
            Graphics2D g = image2.createGraphics();
            g.setColor(Color.WHITE);
            g.fillRect(0,0,w,h);
            g.drawRenderedImage(buffered, null);
            g.dispose();
        }
Thanks..

Original comment by [email protected] on 25 Feb 2013 at 9:44

from thumbnailator.

GoogleCodeExporter avatar GoogleCodeExporter commented on May 19, 2024
[deleted comment]

from thumbnailator.

GoogleCodeExporter avatar GoogleCodeExporter commented on May 19, 2024
This happens also with GIFs.

Original comment by [email protected] on 3 Mar 2013 at 9:41

from thumbnailator.

GoogleCodeExporter avatar GoogleCodeExporter commented on May 19, 2024
I have verified that the background will turn black for both PNG and GIF files 
(which have a transparent color set in their indexed pallete) using 
Thumbnailator 0.4.3 running Java 7.

I will increase the priority of this issue, as it appears to affect more users 
than I had initially expected.

I would like to thank everyone who has taken their time to provide input toward 
this issue.

Original comment by [email protected] on 7 Apr 2013 at 8:15

  • Added labels: Priority-Medium
  • Removed labels: Priority-Low

from thumbnailator.

GoogleCodeExporter avatar GoogleCodeExporter commented on May 19, 2024
Plz let the user choose what color to use as background when pngs with 
transparency are converted to jpg

Original comment by [email protected] on 14 May 2013 at 6:31

from thumbnailator.

GoogleCodeExporter avatar GoogleCodeExporter commented on May 19, 2024
I would also like to be able to choose what color is used to replace the 
transparency.

Original comment by [email protected] on 4 Dec 2013 at 9:31

from thumbnailator.

GoogleCodeExporter avatar GoogleCodeExporter commented on May 19, 2024
I have exactly the same problem. Do we have any update on this?

Original comment by [email protected] on 12 Aug 2014 at 11:25

from thumbnailator.

GoogleCodeExporter avatar GoogleCodeExporter commented on May 19, 2024
Hi guys,

is there any update on this? I ran into the same problem. Would also like to 
have an easy way to configure the resulting background color out of a 
transparent image.

Original comment by [email protected] on 9 Sep 2014 at 5:00

from thumbnailator.

GoogleCodeExporter avatar GoogleCodeExporter commented on May 19, 2024
HI

I just ran into this issue and cant seem to find a workaround. 

E.g if I have a PNG and do this 
File fn = new File("test.png") ;
File f = new File("test-small.png)" ;
int s = 300 ;
Thumbnails.of(fn).size(s, s).toFile(f);

The resultant file has a back background when displayed


Original comment by [email protected] on 17 Mar 2015 at 11:33

Attachments:

from thumbnailator.

GoogleCodeExporter avatar GoogleCodeExporter commented on May 19, 2024
Hello there,

Yes, I can confirm that the newly uploaded image also exhibits the same issue 
as the image originally attached to this issue. (The image of the star)

The issue with this new image (headset) is also the same as the original image 
(star) in that they are both index-paletted PNGs which specifies a specific 
color to be transparent.

Original comment by [email protected] on 18 Mar 2015 at 5:25

from thumbnailator.

GoogleCodeExporter avatar GoogleCodeExporter commented on May 19, 2024
Hi,
I'm developing an application where many users will be submitting a screenshot 
taken from their computer.  We are receiving a complaint that all screenshots 
taken from Mac saved as PNG files are resized with color distortion.  Is this 
the same problem reported on this issue?  Please see attached files for 
original file and thumbnail generated.  Is there any workaround or fix for this?
Thank you in advance.

Original comment by [email protected] on 16 Apr 2015 at 3:57

Attachments:

from thumbnailator.

GoogleCodeExporter avatar GoogleCodeExporter commented on May 19, 2024
I tried to resizing the image on Java 6 (Linux) with Thumbnailator 0.4.8, and 
was unable to reproduce the issue.

Which environment (OS, Java vendor/version) and version of Thumbnailator are 
you using?

Also, could you provide the code that is being used to invoke Thumbnailator?

The code doesn't need to be exact -- I would like to know what type of input 
(`BufferedImage`? `File`?) and output (`BufferedImage`? `File`?) you are 
working with.

Original comment by [email protected] on 22 Apr 2015 at 1:29

from thumbnailator.

GoogleCodeExporter avatar GoogleCodeExporter commented on May 19, 2024
This issue is also affecting me!
A fix would be appreciated

Original comment by [email protected] on 14 May 2015 at 6:56

from thumbnailator.

ClintEsteMadera avatar ClintEsteMadera commented on May 19, 2024

4 years since this issue was firstly reported and no solution. Clearly thumbnailator developers don't care about this issue that's affecting lots of people. Thank you!

from thumbnailator.

coobird avatar coobird commented on May 19, 2024

@theyuv, it's not clear whether the linked Stack Overflow question is using a transparent PNG that's index-paletted. This issue was filed regarding a PNG image that was using index-palette transparency.

If the original image is a PNG with an alpha channel, then the answer in the linked Stack Overflow question would work, if what you're trying to accomplish is to add a solid color background.

from thumbnailator.

theyuv avatar theyuv commented on May 19, 2024

@coobird Thanks for the response and the clarification. It worked for my png file but I didn't check whether or not it was index-paletted.

from thumbnailator.

simonguertin avatar simonguertin commented on May 19, 2024

I have tried many PNG configuration, with GIMP, and I don't seem to have it working, even with the Alpha Channel. Someone has a sample PNG with transparency that works for them ? I am using the latest lib also from maven

from thumbnailator.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.