使用 libpng 编码时如何将 8 位 png 的像素设置为透明?

发布于 2024-12-07 17:26:48 字数 140 浏览 2 评论 0原文

当使用 libpng 将 RGB 数据编码为 8 位 png 图像(调色板)时,我尝试将像素标记为透明。如果我在这种情况下创建一个单独的 Alpha 通道,则 Alpha 通道将被忽略。使用 8 位调色板时,有没有办法将像素设置为不透明或透明?

谢谢

I'm trying to mark pixels as transparent when encoding rgb data to 8-bit png image (palette) using libpng. If I create a separate alpha channel in this case, the alpha channel is getting ignored. Is there a way to set the pixels as opaque or transparent when using 8-bit color palette ?

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦行七里 2024-12-14 17:26:48

要将某些调色板索引标记为透明,您必须创建 tRNS 块。
libpng中,我猜你必须使用函数png_set_tRNS()

To mark some palette index(es) as transparent, you must create a tRNS chunk.
In libpng, I guess you must use the function png_set_tRNS()

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文