草庐IT

BufferedImage

全部标签

java - 当我说红色时 BufferedImage 绘制白色

这一定是一个非常愚蠢的解决方案,但我是瞎子。我有这个代码:BufferedImagebi=newBufferedImage(800,600,BufferedImage.TYPE_INT_RGB);bi.getGraphics().setColor(Color.red);bi.getGraphics().fillRect(300,350,100,50);ImageIO.write(bi,"jpeg",newFile("image.jpg"));然后我得到了这个黑色的800x600矩形和一个白色矩形。这是为什么?谢谢:) 最佳答案 每次

java - 保存调整大小的图像java

如何将调整大小的图像保存到特定文件夹?privatevoidjButton1ActionPerformed(java.awt.event.ActionEventevt){ImgChooseric=newImgChooser();ImageIconicon=newImageIcon(me,"idpic");Imageimg1=icon.getImage();Imageimg2=img1.getScaledInstance(105,105,0);icon.setImage(img2);jLabel1.setIcon(icon);}第一个代码是我获取图像并调整其大小的地方。然后我想将调整大小

java - 获取 BufferedImage 作为资源,以便它可以在 JAR 文件中工作

我正在尝试将图像作为BufferedImage加载到我的Java应用程序中,目的是让它在JAR文件中工作。我尝试使用ImageIO.read(newFile("images/grass.png"));它在IDE中有效,但在JAR中无效。我也试过(BufferedImage)newImageIcon(getClass().getResource("/images/grass.png")).getImage();由于NullPointerException,它甚至无法在IDE中工作。我尝试在路径中使用../images、/images和images来执行此操作。这些都不起作用。我是不是漏掉

Java2D 图形抗锯齿

我是Java的新手,正在尝试使用Java2DGraphics创建图像。但是输出是抗锯齿的。我尝试了很多方法来纠正它,但没有用。字符变得扭曲或参差不齐。publicBufferedImagecreateNameOnButton(Stringlabel){intmessageWidth=0;Fontfont=newFont("Arial",Font.PLAIN,11);BufferedImagebi=newBufferedImage(10,10,BufferedImage.TYPE_INT_RGB);Graphics2Dg2d=(Graphics2D)bi.getGraphics();g2

java - 将可序列化对象存储到文件中,并排除一些数据

我有一个对象,它允许我将BufferedImage存储到我的对象文件中。在同一个对象中,我有BufferedImage变量,在第一次从原始数据数组加载图像后,我用它来缓存图像。当我创建对象并将其存储到文件时一切正常,因为BufferedImage为空。当我更新加载的对象并且正在初始化变量并且我想在更新后保存对象时出现问题。是否有可能将可序列化对象存储到文件中,不包括一些变量?或者也许我可以在存储到文件时以某种方式重置我的BufferedImage变量?提前致谢,谢尔盖。 最佳答案 您应该将不想序列化的属性标记为transient:p

java - 如何绘制大型 BufferedImage 的一部分?

我有一个10000x10000的BufferedImage,我希望只将它的一部分绘制到Canvas上,有没有办法使用args来做到这一点,例如:x,y,width,height?例如,drawImage(img,x,y,width,height)会从图像中绘制一个矩形,起点为(x,y),尺寸为(width,height)?编辑:我要重新表述这个问题:我有一个10000x10000的图像,我只想在屏幕上显示它的一部分,仅通过x和y偏移它的问题是,这仍然会导致延迟,因为整个图像正在渲染,只是其中的大部分关闭Canvas。我怎样才能基本上做到这一点,以便呈现整个图像,但我可以在不导致Canv

java - SWT:如何进行高质量图像调整大小

我的应用程序需要调整ImageData的大小。不幸的是,我还没有通过GC(启用抗锯齿和高插值)或ImageData.scaledTo()获得我想要的结果。生成的图像质量太低,无法接受。调整高质量ImageData大小的最佳方法是什么?编辑:我正在缩小。 最佳答案 AWT提供不同模式的图像缩放。对于降尺度,区域平均提供最佳质量。当然可以为SWT重新实现面积平均缩放算法,或者,对于通常足够的快速解决方案:将SWT图像转换为AWT图像使用适当的模式重新缩放(如果缩小则为面积平均,否则为双线性)将其转换回为SWT图像可以找到在SWT和AWT

java - 绘制一个不会在下次绘制中消失的矩形

我试图创建一个绘制矩形的JPanel。面板需要绘制很多矩形,但它们不会移动。我的问题的一个解决方案是创建一个列表,其中包含我已经创建的所有矩形,并在每次调用“Paint”时将它们全部绘制出来。但是有很多矩形,它会减慢计算机的速度。我还尝试使用repaint(x,y,height,width)来重绘新矩形的空间,但它没有用。(JPanel不断删除以前的矩形。)在某种程度上,我需要绘制不会消失所有油漆的矩形。或者一种不会删除以前绘制或不会绘制背景的绘制方法。这是我的JPanel类的一部分:classMyPanelextendsJPanel{privateintx,y,size;privat

java - Swing:在鼠标悬停时显示/隐藏按钮

所以我想在JPanel中放置一个按钮,但我想让它不可见/隐藏,除非鼠标指针悬停在它上面。此时,按钮应该可见,对点击使用react等等。当鼠标离开该区域时,它应该再次隐藏。我尝试将MouseListener添加到我的JButton并使用setVisible(),但是当我隐藏按钮时(setVisible(false)),则监听器不再工作-应用程序的行为就好像按钮根本不存在一样。实现此行为的正确方法是什么?编辑:我使用的是绝对布局(setLayout(null)),我使用setBounds(x,y,width,height)手动放置我的组件。 最佳答案

java - 如何使用Java将图像转换为黑白图像

我使用如下命令在imagemagick中将图像转换为黑白图像:convertmyimg.png-monochromeout3.png我想知道是否有可能在Java中实现相同的结果?不使用Im4Java或JMagick? 最佳答案 我想这取决于你所说的“单色”/“黑白”是什么意思......publicclassTestBlackAndWhite{publicstaticvoidmain(String[]args){newTestBlackAndWhite();}publicTestBlackAndWhite(){EventQueue.