KAPITALSIN
JUEGOS/SOFTWARE/HARDWARE => SOFTWARE => Mensaje iniciado por: Fl0ppy en 17 de Febrero de 2018, 02:06:27 pm
-
pngquant is a command-line utility and a library for lossy compression of PNG images.
The conversion reduces file sizes significantly (often as much as 70%) and preserves full alpha transparency. Generated images are compatible with all web browsers and operating systems.
Features
High-quality palette generation using a combination of vector quantization algorithms.
Unique adaptive dithering algorithm that adds less noise to images than the standard Floyd-Steinberg.
Easy to integrate with shell scripts, GUIs and server-side software.
Fast mode for real-time processing/large numbers of images.
https://pngquant.org
Creada versión nueva del script (26-02-2022) con muchos cambios, ya que los autores han migrado a rust
El ejecutable está comprimido con el UPX
El código nuevo (26-02-2022)
#
# pngquant script compiler REV 26022022 by KAPITALSIN
#
# 2602022
# Los autores han migrado a rust con lo cual el código mediant git se ha reemplazado por el código "antiguo",
# es por ello que el script de compilacińo se ha modificado bastante, la lista de cambios es larqa
# Eliminada la dependéncia del zlibg1-dev
# Añadido parámetros del zlib para LCMS2
#
sudo apt-get install make libc6-dev
time_start=`date +%s`
wget https://github.com/kornelski/pngquant/archive/refs/tags/2.17.0.zip -O pngquant.zip
unzip pngquant.zip
mv pngquant-2.17.0 pngquant
cd pngquant
wget https://github.com/ImageOptim/libimagequant/archive/refs/tags/2.17.0.zip -O libimagequant.zip
unzip -j -o libimagequant.zip -d lib
wget https://fossies.org/linux/misc/libpng-1.6.37.tar.xz
tar xvfa libpng-1.6.37.tar.xz
cd libpng-1.6.37
wget https://deac-ams.dl.sourceforge.net/project/libpng-apng/libpng16/1.6.37/libpng-1.6.37-apng.patch.gz
gzip -cd libpng-1.6.37-apng.patch.gz | patch -p1
wget https://www.zlib.net/zlib1211.zip
unzip zlib1211.zip
cd zlib-1.2.11
./configure --static --prefix=$PWD
make -j4 install
cd ..
CPPFLAGS="-I$PWD/zlib-1.2.11/include" LDFLAGS="-L$PWD/zlib-1.2.11/lib" LIBS=-lpthread ./configure --prefix=$PWD --enable-static && make -j4
#LIBS=-lpthread ./configure --prefix=$PWD --enable-static && make -j4
cd ..
wget https://netcologne.dl.sourceforge.net/project/lcms/lcms/2.9/lcms2-2.9.tar.gz
tar xvfa lcms2-2.9.tar.gz
cd lcms2-2.9/
./configure --without-zlib --enable-static && make -j4
cd ..
./configure --with-lcms2 --with-libpng="libpng-1.6.37" --extra-cflags="-Ilibpng-1.6.37/zlib-1.2.11" --extra-ldflags="libpng-1.6.37/zlib-1.2.11/libz.a"
sed -i 's/$(CC) $(OBJS) $(CFLAGS) $(LDFLAGS)/$(CC) $(OBJS) $(CFLAGS) $(LDFLAGS) -static -pthread/g' Makefile
make -j4 && strip pngquant
time_end=`date +%s`
time_exec=`expr $(( $time_end - $time_start ))`
echo "EL PROCESO DE COMPILADO HA TARDADO UN TOTAL DE $(($time_exec / 60)) minutos y $(($time_exec % 60)) segundos."
Adjunto el script y el binario para 64 bits
Sitios utilizados
https://github.com/kornelski/pngquant/issues/241
https://pngquant.org/install.html
http://www.linuxfromscratch.org/blfs/view/cvs/general/lcms2.html
http://www.linuxfromscratch.org/blfs/view/svn/general/libpng.html
-
Creada versión actualizada a la 2.12.2, la anterior era la 2.11.7
Actualizado el adjunto :ok:
version 2.12
------------
- improved speed on large images
-
Creada versión nueva actualizada a la 2.13.0
Actualizado adjunto en post principal
Changelog
version 2.13
- small speed and quality improvements
-
gracias, checando como funciona :ok: :ok:
-
Creada versión nueva con estos cambios (son solo de compilación, el programa no ha cambiado)
1-Ahora se han integrado dentro del binario las librerias externas como la zlib y la glibc
2-El script ha cambiado para hacer esos cambios
3-El ejecutable ha aumentado unos 500kb's
4-Actualizada la libreria libpng 1.6.34 por la 1.6.37
Si la versión antigua ya te iba bien no es necesario descargar esta nueva
El ejecutable está comprimido con el UPX (https://github.com/upx/upx/releases/tag/v3.96)
-
Creada versión nueva actualizada a la 2.15.1
Actualizado adjunto en post principal
Changelog
version 2.13-2.15
------------
- speed and quality improvements
-
Creada versión nueva de los scripts del compilador, tanto como el que usa git como el que no, ahora instala todas las dependéncias necesarias para su compilado
Los post y sus adjuntos se han actualizado :ok:
Eliminada la dependéncia del zlibg1-dev
Se ha vuelto a compilar y esta vez bajo ARCO Linux (https://arcolinux.com/), el resultado, un ejecutable unos 100kb más pequeño :ouo:, (precomprimido con upx) es el fichero pngquant.2.15.1.x86_64.arch.bin
-
Creada versión compilada con MUSL, ahora ocupa 400 kb MENOS y es estático :fuckyeah:
https://musl.libc.org/
http://www.etalabs.net/compare_libcs.html
-
Creada versión compilada con MUSL, ahora ocupa 400 kb MENOS y es estático :fuckyeah:
https://musl.libc.org/
http://www.etalabs.net/compare_libcs.html
Como diria el Mandaloriano, ese es el camino. ;D
(https://cdn-images.imagevenue.com/b8/15/b9/ME13TU4Y_o.jpg)
(https://cdn-thumbs.imagevenue.com/77/c2/fb/ME13TU4Y_t.jpg) (https://www.imagevenue.com/ME13TU4Y)
-
Creada versión nueva (2.16) compilada con MUSL
version 2.16
------------
- reduced stack usage, prevenitng stack overlfow in pathological cases
Y actualizado el script para versión que no usa GIT
-
version 2.17
------------
- fix for Unicode filenames on Windows
- builds for ARM
- small quality improvements
Actualizada versión y añadido script para compilarlo con musl
-
Creada versión nueva del script, ya que los autores han migrado a rust y el anterior pues ya no era válido :ok:
Actualizado post principal
-
Creada versión estática 3.0.0-beta.7 compilada con Rust (solo GNU/Linux x86_64)
Actualizado post principal
-
Creada versión nueva de 64 bits con muslc y parámetro -Os de compilación reduciendo el tamaño unos 39 KB.