Tuesday, November 20, 2018

Processing3.4とJava Image Filtersを使用して影付き文字列を描画する

Processing3.4とJava Image Filtersを使用して影付き文字列を描画するには、以下のコードを実行します。Java Image Filtersはhttp://www.jhlabs.com/ip/filters/download.htmlからFilters.jarをダウンロードしてSketchのcodeサブフォルダに配置するか、Sketch->Add FilesメニューからSketchに追加します。

// キャンバスサイズ
size(200, 200);
PImage img = loadImage("SF.JPG");
image(img, 0, 0);

// オフスクリーンバッファ
PGraphics gr = createGraphics(200, 200, JAVA2D);
gr.colorMode(RGB, 255, 255, 255, 255);
gr.beginDraw();
// 背景色
gr.background(#000000,0);
// 塗りつぶし色
gr.fill(#ffffff);
// フォントを変換
PFont font = createFont("MS Gothic",48,true);
// フォントを設定
gr.textFont(font);
// 文字
gr.text("さんぷる",5,110);
gr.endDraw();

ShadowFilter sf = new ShadowFilter();
// 半径 
sf.setRadius(7f);
// 透明度
sf.setOpacity(0.9f);
// 角度 
sf.setAngle(300f/180f*ImageMath.PI);
// 距離 
sf.setDistance(5f);
// 影の色 
sf.setShadowColor(0xff202020);
// 影のマージン 
sf.setAddMargins(false);
// 影のみにするか 
sf.setShadowOnly(false);

img.blend(new PImage(sf.filter((java.awt.image.BufferedImage)gr.getImage(), null)), 
0, 0, img.width, img.height, 
0, 0, img.width, img.height, BLEND);
image(img, 0, 0);

// ファイル保存
save("sample1467a.png");

元画像(sf.jpg):dataサブディレクトリに配置か、Add Filesで追加。


出力画像(sample1467a.png)
ProcessingとJava Image Filtersを使用してドロップシャドウつきの文字列を描画した画像


動作環境
Processing 3.4

〇関連項目
・Processingをインストールした仮想マシンを構築するには、以下のページを参照してください。
https://serverarekore.blogspot.com/search/label/Processing

・Processingに関する他の記事は、こちらを参照してください。

No comments: