Webpフォーマットの画像を変換しますjava.io.IOException: Cannot run program "dwebp": error=2, No such file or directory


一:webpフォーマット


WebPフォーマット、グーグル(google)が開発した画像のロード速度を速めるための画像フォーマット.画像圧縮容量はJPEGの約2/3で、サーバ帯域幅のリソースとデータ空間を大幅に節約できます.Facebook Ebayなどの有名なサイトでは、WebP形式のテストと使用が開始されています.しかし、WebPは損失圧縮です.JPEGファイルを符号化するよりも、同じ品質のWebPファイルを符号化するには、より多くの計算リソースが必要です.しかし、グーグルは、このフォーマットの主な優位性は効率にあると述べた.彼らは、「品質が同じ場合、WebP形式の画像の体積はJPEG形式の画像より40%小さい.Googleブラウザはすでにwebp形式をサポートしており、Operaはバージョン番号Opera 11.10以降もサポートを追加したが、火狐とieはしばらくwebp形式をサポートしていない.flashプラグインを採用してwebpを表示することができ、もちろんいくつかの性能を消費する.

二:webpフォーマットの画像を変換する


http://downloads.webmproject.org/releases/webp/index.html
Windows環境ダウンロードlibwebp-0.4.2-windows-x 64
linux環境ダウンロードlibwebp-0.4.4-rc 2-linux-x 86-64

三:linux webp環境変数の設定


編集/etc/profile export PATH=/mnt/online/libwebp/bin:$PATH

四:変換プログラム

public class WebpUtil {
    private static Logger logger = Logger.getLogger(WebpUtil.class);
    private static Gson g = new Gson();
    /** *  webp <br> * convertWebp <br> * @param originPath webp  * @param filePath   */
    public static void convertWebp(String originPath, String filePath){
        EPlatform ePlatform = OSinfo.getOSname();
        String dwebp = "dwebp";
        switch (ePlatform) {
        case Windows:
            dwebp = GetProperties.getServerConfigValue("dwebpPath");
            break;
        default:
            break;
        }
        List<String> commands = new ArrayList<String>();
        commands.add(dwebp);
        commands.add(originPath);
        commands.add("-o");
        commands.add(filePath);
        logger.error("command:"+g.toJson(commands));
        try {
            ProcessBuilder builder = new ProcessBuilder(commands);
            builder.start();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    public static void main(String[] args) {
        convertWebp("F:/1.webp","F:/1.png");
    }

}

5:注意


注意:プログラムにファイルを読み書きする権限がない場合、異常javaが報告されます.io.IOException: Cannot run program “dwebp”: error=2, No such file or directory
chmod-R 777フォルダを実行して、webpファイルを正常に変換できます.​