1

以下是申请步骤

  1. 从 html 电子邮件消息或网站复制一些富文本(文本 + 图像的组合)
  2. 在您的 java 代码中检索从剪贴板对象复制的内容作为 BufferredImage
  3. 将检索到的图像对象保存为磁盘上的图像文件

您会注意到在保存的文件中,图像很好,任何非黑色文本都很好,但黑色文本似乎在黑色背景中丢失。找不到覆盖生成图像的黑色背景的方法。下面的一些示例代码。

     BufferedImage image = null;
try {
     image = (BufferedImage) transferable.getTransferData(DataFlavor.imageFlavor);

} catch (UnsupportedFlavorException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
      } catch (IOException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
}

saveImageToDisk(image);

      private void saveImageToDisk(BufferedImage image) {
    File outputFile = new File("c:\\image.png");
    try {
        ImageIO.write(image, "png", outputFile);
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

}

找到了解决方案 - 它是使用一个自定义系统风格,它理解“image\x-emf”的 mimetype。剥离前 8 个字节并将剩余内容写入 Bufferred 图像

4

1 回答 1

2

找到了解决方案 - 它是使用一个自定义系统风格,它理解“image\x-emf”的 mimetype。剥离前 8 个字节并将剩余内容写入 Bufferred 图像

于 2013-04-18T17:41:08.570 回答