Tag: 透明度

在Java中更改png的非透明部分的颜色

我试图自动更改一组图标的颜色。 每个图标都有一个白色填充图层,另一个图标是透明的。 这是一个例子:(在这种情况下它是绿色的,只是为了让它可见) 我试着做以下事情: private static BufferedImage colorImage(BufferedImage image) { int width = image.getWidth(); int height = image.getHeight(); for (int xx = 0; xx < width; xx++) { for (int yy = 0; yy < height; yy++) { Color originalColor = new Color(image.getRGB(xx, yy)); System.out.println(xx + "|" + yy + " color: " + originalColor.toString() […]

我通过一些代码使java图像的某些部分变得透明,它在我制作的笔记本电脑上工作正常,但在其他部分没有,为什么?

没有透明度的图像在其他笔记本电脑中不可见。 当我创建一个新的Eclipse项目时: 当我将粘贴代码复制到单独的类文件中时,它在我的机器上运行正常,但在其他机器上运行正常,具有相同的代码和项目设置。 bin中的图像不会被复制,我必须单独复制图像。 这是用于透明度的代码。 public static class Transparency { public static Image makeColorTransparent(Image im, final Color color) { ImageFilter filter = new RGBImageFilter() { public int markerRGB = color.getRGB() | 0xFF000000; public final int filterRGB(int x, int y, int rgb) { if ( ( rgb | 0xFF000000 ) == markerRGB ) { // Mark […]

Java Swing – 造成工件的半透明组件

我目前正在为大学课程开展一个小组项目,而且我遇到了一些绊脚石。 我们决定实施的程序是一个点对点聊天客户端,它有一个用于存储和共享用户名等的中央服务器。我被分配到GUI。 一位朋友开玩笑地建议我加入“火红的背景!” 所以我决定这样做,但要有一个用户选择的背景图像。 按原样,只有背景图像的一些部分可见,所有组件都在其上方,因此我决定尝试实现半透明效果。 这就是我的问题所在: 当从输入框向聊天窗口发送信息,或者在导航朋友列表或滚动聊天窗口时,遗留了奇怪的伪像。 这些工件有时是发送按钮的半透明“鬼”,有时是菜单的一部分,或旧文本。 它看起来像整个框架没有正确重绘,但我不知道它是如何工作的。 对于实现JTextComponent的组件,我将其选择颜色设置为半透明颜色。 对于其他组件,我将背景设置为半透明。 我有一个函数,setTranslucency(组件com),它查看一个组件,根据它是什么设置它的半透明,然后看它是否是某种类型的容器并递归设置每个项目的半透明度。 现在,我发现解决这个问题的方法是将窗口拖出视线(例如最小化或拖动屏幕外的窗口)。 所以, 1)是否有办法强制整个窗口更新,就像我将其拖离屏幕或最小化时一样? 要么, 2)我首先做错了吗? 如果是这样,我该如何解决? 这是一张参考图片: http://sofzh.miximages.com/java/4J9GJ.png

GIF / PNG图像的透明部分在JLabel java中以黑色显示

我有一个图像(gif或png),其中有一些透明的部分,当放入JLabel时会显示为黑色。 ClassLoader cl = this.getClass().getClassLoader(); ImageIcon img = new ImageIcon(cl.getResource(“resources/myPicture.png”)); label = new JLabel(img); 我该如何解决这个问题? 我不需要JLabel,也许有更好的方法可以直接在JPanel上正确显示图像(即透明度)? 谢谢大卫

如何设置JDialog的透明背景

HY,.. 如何设置背景透明并“删除”近距离操作(标记为红色)? 我只想出示卡片:-) 谢谢..!

用于加载PNG图像的替代库

我的java J2SE应用程序正在从Web读取大量(png)图像,其中一些使用诸如真彩色图像(tRNS部分)的透明度颜色等function,而Sun的/ Oracle的PNGImageReader实现完全忽略了这些function。 因此通过ImageIO.read(…);加载的通用解决方案ImageIO.read(…); 对我不起作用,因为它依赖于这个不完整的PNGImageReader实现。 有没有人知道可以正确读取所有forms的PNG图像的png阅读器实现 – 具有颜色表或真彩色和alpha透明度或透明颜色的那些? 与GPL项目一样,它应该是非商业性的,可以包含在应用程序中的许可问题中。 编辑:我的这个问题太具体了。 因此,让我重新设计我的问题: 谁知道能够加载PNG文件的替代实现和库? 然后,我将测试它们加载一些测试png图像的能力的实现。 Edit2:最终结果必须是BufferedImage

将鼠标事件传递给Java UI后面的应用程序

我的问题与如何将鼠标事件传递给我在C#/ Vista中的应用程序中的要求完全相同? ,但我对透明Java UI也需要相同的东西。 我可以使用6.0轻松创建透明的Java UI,但无法获得有关通过应用程序将事件传递给后面的任何应用程序(例如浏览器)的任何信息。

如何在SWT中显示文件的系统图标?

我想显示一个文件树,类似于java2s.com’创建一个懒惰的文件树’ ,但包括实际的系统图标 – 特别是对于文件夹。 SWT似乎没有提供这个(程序API不支持文件夹),所以我想出了以下内容: public Image getImage(File file) { ImageIcon systemIcon = (ImageIcon) FileSystemView.getFileSystemView().getSystemIcon(file); java.awt.Image image = systemIcon.getImage(); int width = image.getWidth(null); int height = image.getHeight(null); BufferedImage bufferedImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); Graphics2D g2d = bufferedImage.createGraphics(); g2d.drawImage(image, 0, 0, null); g2d.dispose(); int[] data = ((DataBufferInt) bufferedImage.getData().getDataBuffer()).getData(); ImageData imageData = new ImageData(width, height, 24, […]

Java淡入淡出图像

我正在尝试学习如何淡入淡出图像到另一个图像或另一个图像。 因此,如果我有2张图像,此时显示1,我想在背景中显示另一张图像,并将第一张图像淡入第二张图像。 或者,我想将焦点设置在新图像上并在第一张图像上慢慢淡入,然后停止显示第一张图像。 我不确定如何: 即使需要也能设定焦点。 如果我将alpha更改为0并递增并仅绘制一个图像,我可以淡入,但是我无法通过此代码的任何变化使其淡出。 (即评论出一幅图像)。 编辑:真的,我所担心的是能够拥有2张图像并使当前正在显示的图像慢慢消失在第2张图像中。 如何实现这一点并不需要与此相关。 这是我正在搞乱的代码示例: import java.awt.AlphaComposite; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.Image; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.Timer; public class FadeIn extends JPanel implements ActionListener { private Image imagem; private Image image2; private Timer timer; private float alpha = 1f; public FadeIn() { […]

使具有特定颜色的图像的每个像素透明

这个问题与这个问题重复: 使具有特定颜色的图像的每个像素都透明 但我需要Java等价物。 我需要一个图像类型(如PNG , BMP ,…),它可以保持这种颜色的完全透明度(alpha = 0)。 当然还有一种将其保存为文件的方法。