【问题标题】:Get pixel color from image in Vaadin从 Vaadin 中的图像获取像素颜色
【发布时间】:2014-12-06 11:45:38
【问题描述】:

我有一张图片,我想从图片中获取像素颜色。像这样的:

image.getPixel(100,100).Color

Vaadin中可以吗?

【问题讨论】:

    标签: image vaadin pixel


    【解决方案1】:

    如果你确定 com.vaadin.ui.Image.getSource() 方法会返回一个 FileResource 你可以使用这个代码

    FileResource resource = (FileResource) image.getSource();
    File file = resource.getSourceFile();
    BufferedImage img = ImageIO.read(file);
    img.getRGB(0,0);
    

    方法 BufferedImage.getRGB() 返回表示 rgba 颜色的整数。您可以使用Stack Overflow answer 中提供的方法提取红色、绿色、蓝色和 Alpha 值。

    假设其他情况(getSource() 返回 ExternalResource 即)我强烈建议编写基于 GWT Image 的自定义 Vaadin 组件,在向用户显示内容之前将链接/资源/文件/图像转换为 BufferedImage。因此,您将能够在每次需要时从您的自定义组件中实际获取 BufferedImage。

    【讨论】:

      猜你喜欢
      • 2013-07-21
      • 2019-07-27
      • 1970-01-01
      • 1970-01-01
      • 2013-07-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多