bug-apl
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

⎕PNG


From: Dr . Jürgen Sauermann
Subject: ⎕PNG
Date: Wed, 21 Sep 2022 13:49:35 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.13.0

Hi,

I would like to announce a new GNU APL feature: ⎕PNG

PNG stands for "Portable Network Graphics" and is a file format, standardized
in RFC 2083, for (still) images that is, among several other use cases, also
directly understood by web browsers.

Unlike some of the other image file formats around, the PNG file format
has no strings attached, such as patents or copyrights. This was one of the
reasons for choosing it in GNU APL.

While APL appears to be the perfect choice for manipulating the large pixel
arrays of images, this is not the case for the files on disc from which the pixel
arrays are read or eventually stored. ⎕PNG tries to close this gap.

⎕PNG is comprised of three simple sub-function for:

1. reading a .png file into an APL array of pixels,
2. displaying such an array in a GTK window on the screen, and
3. writing a (supposedly somehow manipulated) pixel array into a .png file.

The main work in the conversions above is actually provided by libpng (see
www.libpng.org) therefore ⎕PNG is merely a lightweight wrapper around
libpng. ⎕PNG is supposed to support all file variants (colour and grayscale,
different pixel resolutions from 1 to 16 bits, with or without alpha channel),
on input and most (= all but pixel arrays using colour palettes) on output.

SVN 1589, see also info apl section 2.32 for details.

Enjoy,
Jürgen




reply via email to

[Prev in Thread] Current Thread [Next in Thread]