#author("2023-11-14T22:53:12+09:00","default:post","post") #author("2023-11-14T22:54:12+09:00","default:post","post") ---- #contents ---- ~ *バルーンに画像を表示する [#n4feaa5a] 画像ファイルを表示するには、SSP専用のさくらスクリプト &color(blue){\_b}; を使用します。~ 記述方法は大きく分けて二通り。~ いずれも表示させたい画像をゴースト辞書のあるフォルダと同じ場所に置いて、以下のように記述。 \_b[画像ファイル名,x座標,y座標] 座標を直接指定する方法で、''画像を背景に貼り付けます''。~ バルーンがスクロールしても貼り付けた画像は移動しません。背景としてバルーンと同化するようなイメージ。~ \_b[画像ファイル名,inline] inlineを指定すると、''画像を文字として貼り付けます''。~ 一文字分と同じ扱いになるので、文章の途中に挟んだりできます。記号の代わりに使う用途に適しているイメージ。~ スクロールと一緒に移動するほか、\c[char,1]で1文字削除したりするのにも対応しています。~ 用途に合わせて使い分けましょう。~ また画像ファイル名は正確にはファイルのパスなので、他のフォルダの画像も指定できます。~ 詳しくは[[UKADOC さくらスクリプト>https://ssp.shillest.net/ukadoc/manual/list_sakura_script.html]]を参照のこと。 *スクリプトのオプション [#g2a432ba] このさくらスクリプトの表示方法はちょっと特殊な事情があり、~ ↑のものをそのまま使った場合、思ったとおりの表示がされない事もあります。~ というのも、そのままではシェル画像のように''画像の左上の1px地点の色を透明色として扱う''という性質があるためです。 ここではinline方式で解説します。(xy指定でも記述方法に変わりはありません) ここではinline方式で解説します。(xy指定でもオプション指定方法は変わりません) :\_b[画像ファイル名,inline]|ふつうの方式。左上の1pxの色で抜く(透明にする)。 :\_b[画像ファイル名,inline,opaque]|opaqueを指定。左上の1pxの色を抜かない。つまり画像をそのまま表示する。 :\_b[画像ファイル名,inline,--option=use_self_alpha]|画像のアルファチャンネルを使用し、左上の1pxの色は抜かない。 具体的な使い分けは、大雑把に言えば以下のようになります。~ -PNG~ 近年ではアルファチャンネル(透明度)つきの画像が一般的になってきており、意図的に原色を抜くのでない限り、~ &color(red){\_b[画像ファイル名,inline,--option=use_self_alpha]};~ が安牌です。 -JPEG~ こちらは圧縮で単色部分が変化(劣化)する形式なので、原色を配するやり方は使えません。~ &color(red){\_b[画像ファイル名,inline,opaque]};~ が最適です。 *バルーンでの表示例 [#jde25ea9] -今回は以下の6つの画像を使います。 |&ref(maru1.png);|背景が透明の、なめらかな黒い円|アルファチャンネル付きPNG| |&ref(maru2.png);|背景が緑色の、なめらかな黒い円|PNG| |&ref(maru3.png);|背景が透明の、黒単色の円|アルファチャンネル付きPNG| |&ref(maru4.png);|背景が緑色の、黒単色の円|PNG| |&ref(maru5.jpg);|背景が白、なめらかな黒い円|JPEG| |&ref(maru6.jpg);|背景が緑、なめらかな黒い円|JPEG| これを~ \_b[画像ファイル名,inline]~ \_b[画像ファイル名,inline,opaque]~ \_b[画像ファイル名,inline,--option=use_self_alpha]~ の3つのパターンでバルーンに表示してみます。 -結果。 #ref(image_balloon.png); 以上の通り、 -透明度がなく原色で色を抜くPNGはオプションなし -アルファチャンネル(透明度)つきPNGは--option=use_self_alphaのオプション指定 -JPEGはopaqueオプション指定 が適するということが分かります。