问题标签 [apng]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
396 浏览

android - 如何使用 apng 补丁在 libpng 中执行“SKIP”/“SEEK”操作

我正在尝试将 libpng/apng 移植到 Android 平台,使用带有 apng 补丁的 libpng 来读取动画 png 文件。

我的问题是我没有找到在 png.h 中声明的任何“跳过”方法。我想要做的是直接跳转到特定的帧。但是除非我从头开始阅读并为前面的每一帧执行 png_read_frame_head() 和 png_read_image() ,否则我无法获得正确的结果。

有没有什么方法可以通过指定索引来跳转到特定的帧,而无需提前读取所有帧信息/数据?

以下代码来自 apng 示例http://littlesvr.ca/apng/tutorial/x57.html您可以看到它循环读取 apng 文件。而且您似乎必须调用 png_read_frame_head() 和 png_read_image() 才能更新png_ptr_readinfo_ptr_read中的内部信息。因此,如果有任何方法可以简单地修改这两个结构以更正为读取特定帧准备的信息,那么我的问题就解决了。

0 投票
3 回答
9759 浏览

ios - iOS 应用程序中的 APNG

我可能会因此而发火。

我想知道是否有人知道在 iPhone 应用程序中加载 APNG(动画 PNG)的任何方法?

我不是在谈论将多个 PNG 图像作为一个添加NSArrayUIImages一个UIImageView. 我已经可以使用这种方法,但这需要多个 PNG 图像。

我说的是一种特殊的 PNG 格式,称为 APNG ( http://en.wikipedia.org/wiki/APNG ),它只包含 1 个 PNG 文件,但有动画元数据。

我发现了这个名为 AVAnimator 的库:http ://www.modejong.com/AVAnimator/index.html 据说可以加载 APNG 格式,但许可证成本为 475 美元,而且该库似乎是几年前的(iOS 4 )。

我还读到 Apple iOS 8 Safari 和 Yosemite Safari 内置了对 APNG 的支持。

我真的不想仅仅使用 UIWebView 来显示 APNG 文件。它有效,我已经对其进行了测试,但我认为这并不理想。

我希望有一些未被发现的新 iOS SDK 可以让我们将 APNG 加载到我不知道的应用程序中,也许你们可能知道。

Line 应用程序 ( http://line.me/en/ ) 是如何做到的?他们的“贴纸”似乎有动画PNG。

0 投票
1 回答
145 浏览

javascript - 将数据 URI 组合成 APNG?

查看 APNG 规范,似乎 APNG 是在其“额外”块中描述第一个帧之后的帧的 PNG。因此,通过组合 PNG 标头和附加 dataURI,在 Javascript 中轻松创建 APNG 似乎是可行的对他们来说。但是进展并不顺利。

CRC 计算的计算成本很高,所以我试图通过将它们全部设置为 0 来伪造它们。这就是 Firefox 不接受 dataURI 作为图像的原因吗?

0 投票
2 回答
1433 浏览

python - 在 Python 中读取动画 PNG?

PyPNG是 Python 中使用最广泛的 PNG 库,它似乎不支持动画 PNG。有一个用于编写动画 PNG的库,但我找不到用于阅读它们的等效库。任何人都知道从这种受支持的少量图像格式中获取帧的方法吗?

0 投票
1 回答
517 浏览

java - 对 javaFX 的 APNG 支持

在搜索了这个之后,我发现了两个有趣的答案:

  1. 对 javaFX 的本机图像格式支持

  2. 用 javaFX 控制 gif 图像

但正如我所见,javaFX 不支持 APNG 图像。如何使用任何外部库解决这个问题或编写一些代码。我需要一个解决方案......

示例图像:
在此处输入图像描述

感谢帮助。

0 投票
1 回答
7393 浏览

android - 如何在android中播放APNG文件

我想在我的应用程序(如 LINE messenger)中播放APNG文件并创建动画贴纸!我可以使用APNG Assembler等工具创建 apng 。但我不知道如何在我的应用程序中播放动画 png。

请帮帮我!

0 投票
1 回答
593 浏览

c++ - 有没有办法用未修改的 libpng 解析 APNG?

我想在不修改 libpng 的情况下解析 APNG。这很重要,因为 libpng 可能会获得安全补丁,如果我修改 libpng,我需要维护我的版本。

有没有办法在没有修改 libpng 的情况下解析 APNG?

0 投票
1 回答
571 浏览

animation - OTF 字体的动画位图 (APNG)

Open Type 字体格式标准 1.7正式支持emoji 所需的三种彩色字形。截至 2016 年底,1.8 版增加了对另一个变体的支持。平台支持各不相同

SVG表明确考虑了动画——使用 CSS、JS、SMIL 或嵌入文件——但我不确定它是否已在任何地方实现:

字形渲染

SVG 字形描述可以静态呈现或启用动画。

是否有任何基于 PNG 的实现支持使用APNG的动画?工具呢?

压缩颜色位图

每个单独字形的图像都存储为纯 PNG 数据。此类 PNG 数据中仅允许以下块:IHDRPLTEtRNSsRGBIDATIEND. 如果存在其他块,则行为未定义。

JFTR、APNG依赖于 OS X / macOS 和 iOS 原生支持的三个附加块:

  • acTL 动画控制
  • fcTL 帧控制
  • fdAT 帧数据

所以,如果我没记错的话,APNG 应该sbix逐字运行,而不是CBDT.

0 投票
0 回答
682 浏览

xcode - APNG 文件在 Xcode 中无法用于 iMessage 贴纸?

我无法让 .APNG 文件正常工作 - 它们在 Firefox 中正确预览(这意味着当拖放到 Firefox 窗口时,它们会按照应有的方式进行动画处理)但是当我拖放时相同文件到xcode,我只看到第一帧。没有动画。在模拟器中预览时,没有动画 - 只是一个静态贴纸。

当作为附件(如动画 GIF)发送时,相同的文件在 iMessage 时间轴中正确动画。所以文件很好。此外,这不是大小问题 - 其中一个是 16 Kb,大约 400x260。有些文件大小较大,但帧大小较小,没有一个超过 350 Kb。

只是 Xcode 不喜欢它们。

我知道如何制作动画贴纸包——我已经有两个出售了。对于那些,我使用了 PNG 序列。我正在尝试使用 .APNG 文件,因为我的压缩效果更好。

我使用 PNG Animator 和 apngasm 来创建 .APNG,它们的大小都在 300 Kb 或以下,并且大小都在 600 像素以下。

有人成功使用 .APNG 文件创建动画贴纸吗?

公里 https://itunes.apple.com/us/app/markup-stickers/id1157027020?mt=8

更新!让它工作!

我需要将它们作为贴纸或静态图像文件导入,而不是作为贴纸序列导入,并且还需要将它们命名为 .PNG 而不是 .APNG。

成功!公里

0 投票
2 回答
1017 浏览

ios - 有没有办法在下载之前区分 APNG 和 PNG 图像?

我检查了 http 标头,它们的内容类型都是 image/png。我需要根据图像是PNG还是APNG来做出不同的选择,比如它是PNG,直接显示它。如果是 APNG,则显示第一帧并仅在用户点击图像时开始下载整个图像。