java - 将带有 alpha 图像的 TrueColor 转换为带有透明图像的 256 色

标签 java image-processing transparency java-io

我编写了一个 java 应用程序来将屏幕捕获为真彩色图像,使它们的一部分透明,然后使用 ImageIO 将它们作为透明的 PNG 文件写入磁盘。现在为了节省空间,我正在考虑将真彩色图像转换为 8 位 256 色图像,使其中一种颜色透明,并将它们作为 GIF 写入磁盘。
我很难使这种转换起作用。那么有人有代码 spinet 如何在 Java 中创建 256 个透明图像文件吗?

最佳答案

您也可以使用具有 alpha 透明度的 PNG8 文件。它可能会生成小于 GIF 的文件。

如果你可以调用命令行可执行文件,那么你可以使用pngquant .

如果您想要纯 Java 解决方案,那么 Neuquant有一个Java port ,但是Java版本是基于不支持透明度的旧版本(如果您按照pngnq中的更改添加就不难了)。

关于java - 将带有 alpha 图像的 TrueColor 转换为带有透明图像的 256 色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4148331/

相关文章:

java - 尝试输出数学方程的解总是结果为 0

python - 从图像中删除边框但保留文字写在边框上(OCR 之前的预处理)

python - Python 图像库的应用程序配置不正确

python - 如何在opencv python中调整PNG图像的大小?

c# - Silverlight:为图像添加透明度

html - 背景透明度 crossbrowser 特别是 ie

android - 半透明 Activity 填充整个屏幕

java - 对齐两个 Javafx GridPane

java - 在 WebView 中显示视频问题

java - 使用实体列表的 JPA Criteria API 持久字段 IN 表达式