5 PNG
*loadPng (string fname
) {
7 return readPng(cast(ubyte[])read(fname
));
11 void main (string
[] args
) {
12 foreach (string fname
; args
[1..$]) {
13 auto png
= loadPng(fname
);
14 foreach (ref const cc
; png
.chunks
) {
15 if (cast(const(char)[])cc
.type
[] == "grAb") {
16 if (cc
.payload
.length
== 0) continue;
18 foreach (const ubyte b
; cc
.payload
) if (b
!= 0) { allZero
= false; break; }
19 if (allZero
) continue;
20 auto fo
= VFile(fname
~".grAb", "w");
21 fo
.rawWriteExact(cc
.payload
[]);