◆PROCESSING 逆引きリファレンス
カテゴリー:イメージ処理
イメージデータを読み込むには
【解説】
PROCESSINGでは図形(四角形や円)を描くだけではなく、任意の画像データを読み込んで表示する事が可能です。
PROCESSINGで、任意の画像データを変数に読み込むには loadImage()命令を使用します。
【構文】
loadImage( FileName );
loadImage( FileName, extension );
【パラメータ】
FileName:String:読み込むファイルへの絶対パスか、Dataフォルダ配下のファイル名
extension:String:画像形式が不明な場合(拡張子が無い場合)の形式指定
【戻り値】
正常時 PImage データ
異常時 null
【注意】
FileNameには、以下の3種類が指定可能です。
1)画像ファイルへの絶対パス
2)画像ファイルがDataフォルダ配下にある場合は、そのファイル名
3)画像ファイルへのURLパス
ファイル名の大文字小文字は区別されます。
loadImage() で読み取るファイルは、.gif、.jpg、 .tga、 .png のいずれかの拡張子を持つ該当形式のファイルになります。試した限りでは、jpg画像は 拡張子が”.jpeg”であった場合でも読み取ることができました。ただしリファレンスでは “.jpg” となっていますので、リファレンスに従う方が良いでしょう。
画像ファイルに拡張子が付いていない場合は、extension で画像形式を指定して読み込ませることが可能です。この場合、extension には”png”、”tga”、”jpg”、”gif”の何れかを指定します。
画像形式がjpg、png、tga、gifの場合は、拡張子と実画像形式が異なっていても読み込めるようです。例えば実際にはpng形式で格納されたファイルを sample.jpg というファイル名で読み込む等です。当然ですが正式な方法ではありませんので、オススメはできません(汗)。
なおloadImage()で読み取る画像を background() で背景画像として利用する場合は、実行結果ウィンドウのサイズと画像サイズを一致させておく必要があります。
また画像データを読み込む処理は setup() 処理で行うのが普通です。draw() 関数内で読み込むと動作速度の低下を招くため推奨できません。
【関連記事】
第2章:図形を描いてみよう
●dataフォルダからjpg画像を読み取る例:
1 2 3 4 5 6 7 8 9 10 |
PImage image; void setup(){ size( 900, 600 ); image = loadImage( "sample01.jpg" ); } void draw(){ background( image ); } |
<出力結果:画像URL:illustAC 様:ありさん>
あらかじめdataフォルダに”sample01.jpg”という名前のjpg形式のファイルが存在する事が前提となります。ファイル名の大文字小文字は区別されますので、本例では”Sample01.jpg”とプログラミングするとエラーとなります。注意ですね。
●絶対パスを指定してjpg画像を読み取る例:
1 2 3 4 5 6 7 8 9 10 |
PImage image; void setup(){ size( 900, 600 ); image = loadImage( "c:\\Temp\\sample01", "png" ); } void draw(){ background( image ); } |
<出力結果:画像URL:illustAC 様:ありさん>
画像ファイルへの絶対パス(本例では c:\Temp\sample01)を指定して画像ファイルを読み込む例です。本例ではファイルに拡張子が無いため、extension (第2引数)で “png”を指定しています。
●URLを指定してjpg画像を読み取る例:
1 2 3 4 5 6 7 8 9 10 11 |
PImage image; void setup(){ size( 552, 230 ); image = loadImage( "https://www.google.co.jp/logos/doodles/2015/ (続く⇒) (⇒)emmy-noethers-133rd-birthday-5681045017985024-hp.jpg","jpg" ); } void draw(){ background( image ); } |
(続く⇒)と(⇒)は、Web編集用に2行に分割した事を示しています。実際には(続く⇒)と(⇒)は連続して1行で書いてください。
<出力結果:画像URL:Google 様>
Googleのトップページには、季節や記念日などに面白い画像が表示されます。
上記プログラムでは Google のTOPページにある画像へのURLを指定しています。
本ページで利用しているアイコン画像は、下記サイト様より拝借しております。各画像の著作権は、それぞれのサイト様および作者にあります。