webpフォーマット画像調査

4591 ワード

webpフォーマット画像調査


webpフォーマットの画像は、googleが開発した画像のロード速度を速めるための画像フォーマットです.有損圧縮と無損圧縮をサポートし、画像符号化フォーマットVP 8から派生する.Googleのテストによると、無損圧縮後のWebPはPNGファイルより45%少ないファイルサイズで、これらのPNGファイルが他の圧縮ツールで圧縮されても、WebPは28%のファイルサイズを減らすことができる.
私たち自身のテストを経て、jpg、pngがwebpフォーマットを変えた後、画像の体積の大きさは大体元の1/6に縮小し、私たちが現在使用している80%の品質圧縮も、元の1/4に縮小しただけであることが分かった.そのため、ネットワークトラフィックの伝送、およびピクチャのロード速度を考慮すると、webpフォーマットピクチャは確かに大きな優位性を占めている.
しかし、現在はwebpフォーマットをサポートするブラウザが限られており、自分が知っているwebpフォーマットをサポートするブラウザにはchrome、opera、360ブラウザがあります.でも原生android 4.0以上のシステムおよびオリジナルios(処理が必要)はwebpフォーマットをサポートしています.appのwebviewのようにH 5やiosシステムの微信サービス番号のブラウザを開くと、webpフォーマットはサポートされていません.H 5がwebpをサポートするのも仕方がないわけではありません.第一の方法はjsを使って直接ページで特殊な処理をすることができます.第2の方法は、オリジナルandroidまたはiosを使用してwebview内のwebpピクチャを処理し、処理後にwebviewに返すことである.しかし、著者の現在の技術レベルと会社のニーズに基づいて、この2つの方法は採用されていません.
調査研究の結果:アリクラウドOSSは画像フォーマットの変換と品質の変換をサポートしている.我々の最終案:原生androidとiosはwebpフォーマットを使用し、H 5は品質圧縮を使用する.
  • webpフォーマットの画像をサポートするブラウザは資料と自分のテストを調べて、webpをサポートするブラウザがあることを知っています:chrome、operaと360;IE、edge、firefoxはサポートされていません.もちろん、テストされていないブラウザもあります.android4.0およびiosのサードパーティクラスライブラリもサポートされています.携帯電話のwebviewでH 5を開くのはサポートされていません.微信サービス番号:androidサポート、iosシステムは
  • をサポートしていません
  • java処理webpフォーマットピクチャのサードパーティクラスライブラリ
  • webp-imageio webp-imageioダウンロードアドレスwebp-imageio linuxとwindowsでの使用方法は少し違います:windows:
  • 1.Webp-imageioをダウンロードします.JArとwebp-imageio.dll
  • 2.Webp-imageio.dll側はjavaのbinディレクトリの下にあります.Webp-imageio.JArはプロジェクトのw eb-infoのlibの下に入れ、mavenの
    
        com.webpimageio
        webpimageio
        0.4.2
        ${basedir}/src/main/webapp/WEB-INF/lib/webp-imageio.jar
        system
    
  • にmavenローカル方式で導入する.
  • 3.プロジェクトの中でImageIOを使ってwebpフォーマットのファイルを読み書きすることができます(webpとjpg、pngフォーマットのピクチャーは互いに回転することができます)
    File file1= new File("/home/geeklei/Desktop/640_tp.webp");  
    File file2= new File("/home/geeklei/Desktop/640a.png");  
    
    System.out.println(System.getProperty("java.library.path"));  
    
    try {  
    
        BufferedImage im = ImageIO.read(file1);   
        ImageIO.write(im, "png", file2);  
    
    
        } catch (IOException e) {  
        e.printStackTrace();  
    }  
    linuxの下で参考します:http://blog.csdn.net/GeekLei/article/details/41147479

  • java VP 8 decoder VP 8 decoderダウンロードアドレスmavenローカルjarパッケージ導入:
    
        com.java.V8
        V8decoder
        0.2.0
        ${basedir}/src/main/webapp/WEB-INF/lib/WebPViewer-0.2.jar
        system
    
    昨日このテストでテストに成功せず、異常を報告しました;研究を待つ.

  • テスト結果webp-imageio,VP 8 decoderはwebp-imageioを使用してjpg,pngピクチャをwebpフォーマットピクチャに変換した後、肉眼で表示効果を観察しても影響はなく、驚いたことにピクチャの大きさは約1/6に縮小した.VP 8 decoderは検討する必要がある.
  • アリクラウドOSSはwebpフォーマットをサポートする
  • ピクチャフォーマット変換:
  • 名前
    説明
    jpg
    原図をjpg形式で保存し、原図がpng、webp、bmpに透明なチャネルがある場合は、デフォルトで透明を黒に塗りつぶします.透明を白に塗りつぶしたい場合は1 whパラメータを指定できます
    png
    原図をpng形式に保存する
    webp
    原図をwebp形式に保存する
    bmp
    原図をbmp形式に保存する
    gif
    gif形式をgif形式に保存し、非gif形式は原図形式で保存します.
    src
    原図フォーマットで戻り、原図がgifの場合、gifフォーマットの第1フレームを返し、gifフォーマットではなくjpgフォーマットに保存します.gifフォーマットに保存するには、1 anパラメータを追加する必要があります.
    例:jpgをwebp形式に変換するhttp://photosd.nggirl.com.cn/work/[email protected]
  • ピクチャ品質変換:
  • 名前
    説明
    値範囲
    q
    画像の相対品質を決定し、原図をq%で品質圧縮する.原図の品質が100%であれば、90 qを使用すると品質が90%の画像が得られる.原図の品質が80%であれば、90 qを使用すると品質72%の画像が原図がjpg形式の画像でしか使用できず、相対的に圧縮される概念がある.原図がwebpであれば、相対品質は絶対品質に相当する.
    1-100
    Q
    画像の絶対質量を決定し、原図質量をQ%に抑え、原図質量が指定数字より小さい場合は圧縮しない.原図の品質が100%であれば、「90 Q」を使用すると品質90%の画像が得られる.原図の品質が95%であれば、「90 Q」を使用して品質90%の画像も得られる.原図品質が80%の場合、「90 Q」を使用しても圧縮されず、品質80%の原図が返されます.保存形式はjpg/webp効果でのみ使用でき、他の形式では効果がありません.変換urlにqとQが同時に指定されている場合はQで処理します
    1-100
    例原図を100 w_と略す100 h、原図品質の80%に対するjpg図http://image-demo.img-cn-hangzhou.aliyuncs.com/example.jpg@100w_100h_80q
  • 総合まとめ:アリクラウドOSSはwebpフォーマットをサポートし、app原生もサポートしているため、以上の結果を総合し、最終的には先にテストしようとする案:app原生はwebpを使用し、H 5はアリクラウドOSS 80 Q(80 q)品質圧縮
  • を使用する