Jakie ustawienia należy zastosować podczas tworzenia plików 7zip, aby uzyskać maksymalną kompresję? Kompresuję dokumenty PDF zawierające zeskanowane obrazy. Zastanawiam się nad użyciem LZMA2, ale nie wiem, co ustawić w wielkości słownika, wielkości słowa itp. Czy LZMA lub PPMd byłyby lepszymi opcjami?
Muszę przesłać niektóre pliki (~ 200 MB) przez sieć, a prędkości przesyłania są tutaj bardzo wolne, więc chciałbym jak najbardziej skompresować dane. Zużyty czas procesora nie jest bardzo ważny.
EDYTOWAĆ
Oto, co otrzymałem po przetestowaniu różnych metod kompresji:
Rozmiar nieskompresowany wynosił: 25 462 686 B
Mój procesor to Intel Core 2 Due T8100 i mam 4GiB pamięci RAM.
Najlepszą kompresją był PeaZip wykorzystujący algorytm PAQ8O. Wynikowy rozmiar pliku to 19 994,325B. Zastosowano ustawienia poziomu kompresji: maksimum. Niestety szybkość kompresji wynosiła około 5 kB / s, więc kompresja danych zajęła ponad godzinę.
Następnie był eksperymentalny kompresor PAQ9O. Używając go, otrzymałem 20.126.660B po około 3 minutach kompresji. Niestety program jest tylko wierszem poleceń i niewiele innych programów korzysta z tego algorytmu kompresji. Zużywa również około 1,5 GB pamięci RAM przy używanych ustawieniach (a -9-c)
Potem był 7-Zip 9.15 beta (2010-06-20) przy użyciu LZMA2. Korzystając z niego, dostałem 20.518.802B w około 3 minuty. Zastosowano ustawienia rozmiaru słowa 273, rozmiaru słownika 64 MB, a do kompresji użyłem 2 wątków.
Wracając do mojego pierwotnego pytania: w moim przypadku bryła nie przyniosła zauważalnych rezultatów. Zwiększenie rozmiaru słowa dało pewne wyniki. Różnica między najwyższym rozmiarem słowa a najmniejszym wyniosła 115 260 B. Uważam, że takie oszczędności uzasadniają wysiłek potrzebny do wykonania dwóch niezbędnych kliknięć i zmiany rozmiaru słowa.
Próbowałem użyć innych algorytmów kompresji obsługiwanych przez 7zip i PeaZip, a one produkują pliki w rozmiarach od 19,8 Mb do 21,5 Mb.
W końcu doszedłem do wniosku, że podczas kompresji dokumentów PDF zawierających głównie obrazy wysiłek potrzebny do użycia egzotycznych algorytmów kompresji nie jest uzasadniony. Kompresja za pomocą LZMA2 w 7zip dała całkiem akceptowalne wyniki w jak najkrótszym czasie.
źródło
Odpowiedzi:
Zawartość plików PDF (tekst i obrazy) prawdopodobnie jest już skompresowana - więc nie będzie wiele do zyskania, próbując je ponownie skompresować.
źródło
Spróbuj wstępnie skompresować - najpierw dekompresuje już skompresowane dane w plikach PDF. Następnie 7z może wykonać swoją magię na nieskompresowanych danych.
Spróbuj także nanozipa, który zweryfikowałem jako bardzo skuteczny, ale bardzo wydajny (400 kb / s przy współczynnikach kompresji algorytmów PAQ).
źródło
W razie potrzeby dostosuj pierwsze słowo w nazwie pliku wykonywalnego wiersza poleceń i dostosuj części po „-mpass = 15”, aby dostosować nazwę pliku i co powinno zawierać.
Ta odpowiedź nie jest specyficzna dla dokumentów PDF.
To używa LZMA, a nie PPM. Trzymałem się z dala od PPM, ponieważ istnieje zbyt wiele odmian, które nie są kompatybilne z innymi odmianami. LZMA wydaje się być bardziej stabilny, a kompatybilność jest szerzej obsługiwana. Dlatego trzymałem się z dala od PPM właśnie dlatego, że, jak powiedziałeś, moim zdaniem „wysiłek potrzebny do użycia egzotycznych algorytmów kompresji nie jest uzasadniony”.
źródło
Kompresja LZMA jest najlepsza, ponieważ można utworzyć plik SFX lub pakiet MSI o wysokim stopniu kompresji. w twoim przypadku nie kompresujesz dużego pliku, więc różnica jest dość mała, szczególnie jeśli plik został skompresowany, np .: mp3 lub png
spróbuj wygrać łuk, jest bezpłatny i daje współczynnik kompresji Gret
źródło