Wielu ludzi nie ma/nie chce instalować jakiegoś tam „linuksa”, ale chciałoby mieć lekkie grafiki .jpg czy .png na swoją stronę www. Na Windowsie jest o wiele trudniej instalować, przedtem mozolnie szukać wszystkich programów, jednak szybsze to niż instalowanie np. Ubuntu.
Opiszę tutaj dokładnie kilka sposobów, na optymalizację obrazków zarówno pod konsolą jak i przy pomocy programów z GUI. Jednak nie wszystko można „wyklikać”…
Przed podjęciem żmudnej pracy przeczytaj proszę stronę główną — zawarte tam informacje, kolejność używanych aplikacji dotyczą także w systemie operacyjnym MS.
Kompresja zdjęć programem jpegoptim
Sposób na pojedyncze pliki
Metoda dla większości programów konsolowych jest podobna, używamy popularnej metody drag & drop (przeciągnij i upuść).
- Pobierz optymalizator plików .jpg dla systemu Windows
- Wypakuj wszystkie pliki do jednego katalogu; skopiuj jeden wybrany obrazek .jpg do folderu gdzie znajduje się program jpegoptim.exe. Powinno to wyglądać mniej więcej tak:

- Kliknij w menu Start → Uruchom
- Wpisz: cmd

- Uruchomiona zostanie konsola. O jej działaniu zostanies poinformowany migającym kursorem ;). Przeciągnij program jpegoptim.exe do czarnego okna.

- Posiadasz już część wpisanej komendy — ścieżkę do programu. Wciśnij spację. Musisz jeszcze dopisać za nią najważniejsze parametry: -v --strip-all. Znów wciśnij spację. Przeciągnij tym samym sposobem co program obrazek do konsoli. Powinno wyglądać to tak:
[ścieżka-do-jpegoptim.exe] -v --strip-all [ścieżka-do-pliku-jpg]

- Wciśnij Enter.

- Plik .jpg jest czysty!
Gdy masz prawa administratora w systemie, skopiuj plik .exe z danym programem konwertującym do katalogu: C:\Windows\System32. Unikniesz niepotrzebnego „bajzlu” w folderze zawierającym od tąd tylko pliki graficzne i skrypty. Jednak nie będę opisywał w każdym przykładzie tej metody, gdyż mogą znaleść się takie osoby które nie będą mogły jej zastosować. Przykład z jpegoptim:
jpegoptim -v --strip-all [ścieżka-do-pliku-jpg]
Widać tu drobną różnicę; mianowicie nie trzeba przeciągać aplikacji do konsoli — trzeba wpisywać ręcznie nazwę programu. Ot, drobnostka.
Łatwiejszy sposób na jeden/wiele plików
Nie ma co tu dużo się rozpisywać — grupa plików graficznych musi znajdować się razem w folderze z nieskomplikowanym skryptem, oraz (niekoniecznie) z programem.
Wystarczy uruchomić skrypt aby zmniejszyć w tym przypadku zdjęcia (obojętnie jakie mają rozszerzenie: .jpg, .JPG, .jpeg czy .JPEG, które można zobaczyć w Total Commanderze).
Uwaga! Wszystkie skrypty zostały napisane przeze mnie, i nie gwarantuję ich poprawnego działania! Zobacz jak zostaly zbudowane. Poprawka wprowadzona dzięki Paweł01.
Kompresja .png przy pomocy optipng
Konsolowe metody
Można kompresować pliki dwoma najskuteczniejszymi sposobami (tak jak w przykładzie z jpegoptim). Przedtem musisz pobrać najlepiej najnowszą wersję programu oznaczoną jako „The Windows executable”.
Pierwszy sposób zawsze na pojedyncze pliki:
[ścieżka-do-optipng.exe] -o7 [ścieżka-do-pliku-png/gif]
Zawsze trzeba pamiętać o odpowiednich parametrach!
Drugi sposób korzysta z mojego pliku wsadowego specjalnie do tego programu. Początkowo kompresuje pliki .png, następnie konwertuje .gif→.png jeśli takowe są w katalogu. Pamiętaj: umieszczaj zawsze plik ze skryptem oraz stertę obrazków w jednym folderze!
Plugin do programu PAINT.NET
Dostępna jest wtyczka do programu PAINT.NET. Więcej informacji na stronie. Posiadając niezliczone ilości grafik polecam rozwiązanie konsolowe ze skryptem.
Kompresja .png przy pomocy advpng
Pobierz pakiet AdvanceCOMP Windows binary for Pentium. W pakiecie znajduje się kilka programów, dla nas najważniejsze są dwa pliki: advpng.exe oraz zlib.dll. Kopiujemy je do ulubionego folderu, stosując pierwszą metodę używamy parametru: -z4. Przykład:
[ścieżka-do-advpng.exe] -z4 [ścieżka-do-pliku-png]
Druga metoda ze skryptem dla advpng. Strategia w kompresji .png jest z reguły taka: optipng→advpng→PNGOUT.
Dopełnienie trio — PNGOUT
Odchudzanie grafiki rastrowej metodami konsolowymi
Jest to najlepszy dostępny kompresor. Pobieramy aplikację ze strony domowej — PNGOUT.EXE (WIN32 command line). Zapisujemy na dysku.
Pierwszy sposób na pojedyncze pliki:
[ścieżka-do-pngout.exe] [ścieżka-do-pliku-png/gif]
Nie trzeba używać żadnych parametrów, chociaż można kombinować z -b256 czy -b512, zysk to ok. 5%. Więcej informacji na oficjalnym poradniku tego kompresora.
Drugi sposób? wykorzystanie gotowego skryptu dla PNGOUT. Przyjąłem że masz obrazki gotowe z optipng, dlatego konwertuje tylko .png.
A może coś poklikamy?
…Wreszcie! Oficjalny (stworzony przez autora narzędzia) kompresor do „wyklikania” kosztuje 15$. PNGOUTWin bo o nim mowa to prosta aplikacja, ale nie warto z niej korzystać — istnieje przecież jego darmowy zamiennik.
PNGGauntlet wymaga do działania .NET Frameworka 2, działa sprawnie, choć pasek postępu nie jest płynny. Posiada te same funkcje co wersja konsolowa.
- Pliki dodaje się przez Add Files; Ctrl+A zaznacza wszystkie
- Remove Files kasuje pliki z aktualniej listy (nie z dysku!)
- Clear Files czyści listę
- Zaznacz Overvrite Original Files… żeby nadpisać pliki lub odznacz i określ folder docelowy do zapisu nowych plików.
- Pozostaw domyślną opcję Compression Strategy
- Advanced options — ustawienia zaawansowane:

- jedyną interesującą opcją wartą zmiany jest Block Split. Domyślna wartość to 128.
Jak widać proste jak drut. Ten czerwony plik nie mógł zostać zmniejszony: z PNGOUT z pod konsoli dowiedziałem się tylko że unsupported format
. Na szczęście advpng wyświetlił: unsupported bit depth/color type, 16/2
. Trzeba więc…
Konwersji obrazków 24bit→8bit z użyciem pngquant
pod konsolą
pngquant to bardzo stary program — z końca 2000 roku.
Pobierz binarkę dla Windows. Znasz już sposoby obsługi pod konsolą; podam teraz najważniejsze parametry:
[ścieżka-do-pngquant.exe] -verbose -ordered 256 [ścieżka-do-pliku-png]

- -verbose — tryb gadatliwy, włączyć
- -ordered — włącza dithering; obrazki są cięższe ale nadrabiają ilością szczegółów
- 256 — ilość kolorów; zostaw.
Nie podaję gotowego skryptu ułatwiającego pracę bo jest graficzna nakładka!
narzędzie z GUI — PngQuant FE
Przed jego użyciem trzeba przekopiować binarkę pngquant.exe do $PATH. Można pobrać ze strony autora.
Opcja Force Overwrite… nie działa, program ten zawsze tworzy nowy plik z rozszerzeniem -fs8.png lub -or8.png. Po otworzeniu plików program zaczyna od razu pracować!
Konwersja obrazków 24bit→8bit z użyciem pngnq
Jest jeszcze poprawiony pngnq & pngquant. pngnq bo nim się zajmiemy jest znacznie wydajniejszy od pngquant.
Wkładamy potrzebne nam pliki do katalogu z programami i skryptami; uruchamiamy Process - Palette reduce 256 NeuQuant.bat. Tworzy nam 2 pliki: z i bez ditheringu. Możemy dalej przeprowadzać kompresję.
Wszystkomający zestaw kompresujący
Nie chcesz instalować wszystkiego po kolei? Zgromadziłem wszystkie niezbędne programy, utworzyłem wygodny instalator oraz skrypt. Filozofia jest banalna: instalujemy pakiet, wkładamy skrypt do folderu z obrazkami, następnie go uruchamiamy. To wszystko!
Zestaw zawiera: advpng, jpegoptim, optipng i pngout.