アーカイバにはいろいろな種類がありますが,文書用と画像用,それぞれ効率のいいものを教えてください。また,LHAにはいろいろな種類がありますが,これらはどう違うのでしょうか? 併せて教えてください。
代表的なアーカイバには,事実上世界的な標準になっているZIP形式と,日本で広く普及しているLZH形式(LHA),圧縮率の高さで人気を集めるRAR形式などが挙げられます。
ZIP形式は非常に古くから存在しており,改良が重ねられています。いくつかのローカルバージョンで圧縮率なども異なっています。
DOSの時代は,LZH形式のほうが圧縮率が上でした。しかし,LZH形式は事実上開発が止まっているため,最近はZIP形式のほうが高圧縮率になっています。
効率=圧縮率と考えれば,事実上の世界標準といえるZIP形式を利用しておけば問題はないと思われます。少なくとも,アーカイバを使い分けることで大幅に圧縮率が変動することはないでしょう。
RAR形式の圧縮率は高めですが,まだまだマイナーであり,第三者に圧縮してファイルを渡す場合などには向いていません。バックアップ目的など,少しでも圧縮率を上げたい場合に使用するのが適切ではないでしょうか。
圧縮するファイルが画像の場合,すでに圧縮されているJPEGフォーマットなどでは,アーカイバによる圧縮の効果はほとんどありません。BMPや無圧縮TIFFといった圧縮されていない画像の場合は,アーカイバによる圧縮効果もありますが,JPEGなどの不可逆圧縮のフォーマットに変換したほうがサイズが小さくなるケースが多いと思います。
とくに自然画ではこの傾向が強くなるでしょう。ただ,JPEGにすると画像の品質自体は劣化しますし,不可逆圧縮なので元の品質に戻すことはできなくなります。
この点を考慮して,アーカイバで圧縮するのか,画像フォーマットを変換するのかを決定すべきです。
別のアプローチとしては,JPEGフォーマットのように圧縮効果が期待できない場合でも,複数のファイルを一つのファイルにまとめることでディスクスペースを削減できますし,書き込みの低速なリムーバブルメディアではファイル数を減らすことで大幅に読み書きの時間を短縮できます。
複数のLHAというのは圧縮形式のことでしょう。LHAは吉崎氏の開発した純国産アーカイバですが,オリジナル正式版はDOS用のV2.55bで開発が終了しており,これで圧縮できる形式はLH5と呼ばれています。
これ以外に,LH6とLH7という形式があり,LH6はテスト版であるDOS版LHA V2.67,Win32コンソール版LHA32 V2.67で実装されています。LH7は吉崎氏の公開している圧縮フォーマット(アルゴリズム)に従い,有志の手によってWindows版ソフトとして実装されているものです。それぞれ圧縮,解凍可能な組み合わせは少々複雑なので,以下に列挙します。
●DOS版
・LHA V2.55:LH5形式の圧縮,解凍,LH6形式の解凍
・LHA V2.67 テスト版:LH6形式の圧縮,解凍,LH7形式の解凍
●Win32コンソール版
・LHA32 V2.67 テスト版:LH6形式の圧縮,解凍,LH7形式の解凍
●Windows版
・LHA32.DLLなど:すべてのLZH形式の圧縮,解凍
(坪山博貴)
LHA方式の圧縮形式は三つある。相手が対応した解凍ツールを持っているか分からないときはLH5で圧縮するのが無難だ