LoginSignup
0
0

More than 5 years have passed since last update.

Fx0 で vintageJS を使ってみたい(その2)

Posted at

■はじめに

今回は Fx0 で vintageJS を実際に動かしてみたいと思います。

vignette のエフェクトを掛けてみたいと思います。
vintageJS でこの効果を掛けるには 0 〜 1.0 までの範囲の値を与えることで値の強弱を変えることが出来ます。

■vignette のエフェクトを掛けてみる

vintageJS のサンプルによると非常に単純なコードで使用することができています。

<script src="//code.jquery.com/jquery-2.0.0.min.js"></script>
<script src="jquery.vintage.js"></script>
<script>
    var options = {
        onError: function() {
            alert('ERROR');
        }
    };
    var effect = {
        vignette: 0.6,
        sepia: true
    };
    $('img#yourImage').vintage(options, effect);
</script>

エフェクトで引数を与えてあげるだけなんて簡単で良いですね。

実際に試してみたいと思います。

■試してみた

エフェクトを掛ける画像は vintageJS のテストディレクトリに入っている以下のパグ犬です。
ファイル名からすると sammy という名前みたいですw

sammy.jpg

まずは、PC 版の Firefox ブラウザでの表示です。

firefox_on_pc.png

きちんとエフェクトがかかっていますね

次に Fx0 での表示です。
fx0.jpg
一見するとエフェクトが掛かっているように見えます。
ですが、4スミが微妙に異なる気がします。。。

グラデーションが掛かっていないみたいです。

コードは全く同じなのですが、PC の Firefox ブラウザと Firefox OS 上では表示が異なるのでしょうか。。

同じく Firefox OS 端末である Flame でも確認してみましたが結果は Fx0 と同じ状態になりました。

どうやら、Firefox OS 端末では一部の表示に問題があるみたいです。

■調べてみた

4スミのグラデーションがかからない状態となっている為、具体的に何が原因なのか調べてみました。

vignetteJS のコードを見てみたところ、 vignette のエフェクトは円形グラデーションを指定する Canvas API の createRadialGradient(), addColoerStop() で実現している模様です。

この API を単独で使用してグラデーションの結果のみ確認をしてみました。

まず、PC 版の Firefox ブラウザです。

canvas_on_pc.png

ただしくグラデーションされています。

次に、シミュレータでの結果です。

canvas_on_simulator.png

これも正しくグラデーションされています。
最後に Fx0 での結果です。

canvas_on_fx0.png

残念な事に Fx0 では表示がおかしくなりました。
Frame でも見てみたのですが、同じ結果に・・・

シミュレータでは正しく動作しているため、もしかするとハードウェアに依存しているなどが原因としてあるのかもしれません。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0