[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[ANN] Guile-PNG 0.3.0 released
From: |
Artyom V. Poptsov |
Subject: |
[ANN] Guile-PNG 0.3.0 released |
Date: |
Sun, 18 Dec 2022 20:58:26 +0300 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) |
Hello Guilers,
I'm pleased to announce Guile-PNG 0.3.0, Portable Network Graphics
(PNG)[1] library for GNU Guile, implemented in pure scheme:
https://github.com/artyom-poptsov/guile-png/releases/tag/v0.3.0
This version adds ability to draw polygons and filled rectangles, as
well as fixes line drawing algorithm. Also now Guile-PNG allows to
create PNG images from scratch.
The library uses Guile-ZLIB[2] to compress/decompress the PNG data.
Also this is the third project of mine that uses Guile State Machine
Compiler (Guile-SMC)[3].
* List of user-visible changes
--8<---------------cut here---------------start------------->8---
* Changes in version 0.3.0 (2022-12-18)
** Improve the image parser
PNG chunks are now decoded properly, including data decompression.
** Improve the image encoder
Implement proper encoders for PNG chunks, including compression.
** Guile-PNG now allows to create PNG images from scratch
This also means that Guile-PNG now allows to create PNG images and draw some
graphics over them (using =(png graphics)= module.)
** =(png graphics)=: Fix line drawing algorithm
Re-implement the better version of Bresenham's line drawing algorithm based on
the GNU Octave code from
<https://www.markwrobel.dk/post/amiga-machine-code-letter12-linedraw/>
** =(png graphics)=: Add "<filled-rectangle>"
** =(png graphics)=: Add "<polygon>"
** Update the documentation
** Add new tests
--8<---------------cut here---------------end--------------->8---
Happy hacking!
- Artyom
References:
1. https://www.rfc-editor.org/rfc/rfc2083
2. https://notabug.org/guile-zlib/guile-zlib/
3. https://github.com/artyom-poptsov/guile-smc
--
Artyom "avp" Poptsov <poptsov.artyom@gmail.com>
Home page: https://memory-heap.org/~avp/
CADR Hackerspace co-founder: https://cadrspace.ru/
GPG: D0C2 EAC1 3310 822D 98DE B57C E9C5 A2D9 0898 A02F
signature.asc
Description: PGP signature
- [ANN] Guile-PNG 0.3.0 released,
Artyom V. Poptsov <=