プロセルピナ
Top Internet
Mail
Private
Proxy
Capture
Device
Download Config
and
Words
Online
Help
Online
Home
[BACK]
Top > FileDownload > Macro > Ex: Command > Img.Write

 
 Ex:Img.Writeコマンド
Download Top | Macro Top | Command | ExCommand  


 

書式


  Ex:Img.Write: (Parameters)  

パラメータ :
src= : 元になる画像ファイル
src.BackColor= : 元画像を塗りつぶす色 (グラデーション指定可能)
src.width= : 元画像の横幅 (px単位)
src.height= : 元画像の縦高 (px単位)
w= : 書き込む文字列
w.Font= : 書き込む文字のフォント (オブジェクトファイルで指定)
center : 文字列を、左右間隔の中央に配置する
vcenter : 文字列を、上下間隔の中央に配置する
w.xPos= : 書き込む文字の横方向の基点位置 (px単位)
w.yPos= : 書き込む文字の縦方向の基点位置 (px単位)
w.width= : 書き込む文字の基準となる横幅 (px単位)
w.height= : 書き込む文字の基準となる縦高 (px単位)
w.Color= : 書き込む文字の色 (グラデーション指定可能)
w.PenColor= : 書き込む文字の縁の色 (単純な色の指定)
w.PenWidth= : 書き込む文字の縁の幅 (px単位)
quality= : jpeg画像品質 (1~100、100が最高)
dest= : 出力ファイル名 (フルパス)
O:rslt= : コマンド実行結果

 

記述例: 1




src= で指定されている strl[10] は、 存在する画像ファイルのフルパスです。 ここにw=で指定された Hello! の文字を書きます。

w.Font=で指定されている str["ft"] には、
  フォントオブジェクト = フォント(書体)を示すオブジェクトファイル
のフルパスが設定されていなければなりません。
フォントの大きさ、太字/通常、などの設定は、このフォントオブジェクトに格納される情報です。 フォントオブジェクトの作成は Ex:Img.GetObjectコマンド で行います。
画像のサイズからフォントの大きさを設定するサンプルは、 Ex:Img.Infoコマンド を参照してください。

w.Color=で文字の色を指定します。詳しくは グラデーション指定可能な色指定オプション を参照してください。

この例では w.PenColor= で文字の淵の色も指定されているので、文字は縁取りされます (縁取りしない場合は、w.PenColor=の指定をしません)。 淵の色の指定については 色指定オプション を参照してください。
w.PenWidth= で淵の幅が指定されていないので、幅はデフォルト値の 1px になります。

左右の間隔は、中央に書く場合、この例のように w.xPos= に -1 を指定し、 center の指定をします。
この例では、 w.yPos=256 の指定により、 画像上端から下方向に 256px の位置に文字が書かれます。
上下方向で中央に書く場合は、 w.yPos= に -1 を指定し、 vcenter の指定をします。

jpegの場合、画像品質を quality= で指定することができます。 100 なら最高品質になりますが、圧縮率が低くなるので、出力されるファイルのサイズは大きくなります。 quality=の指定を省略した場合は 80 が使用されます。

加工された画像は、 dest= で指定したファイル名で出力されます。ファイル名はフルパスで指定します。 画像のフォーマットはこのファイル名から自動判別されます。
この例では dest=strl[11] が指定されているので、 strl[11] の文字列変数に、ファイル名が格納されていなければなりません。

結果は O:rslt= の指定により strl["rs"] に設定されます。 "NG:" で開始される文字列が設定されていた場合はコマンドエラーです。

 

記述例: 2




src= による画像ファイルの指定のかわりに、 src.width=100 src.height=120 の指定があります。 これにより、幅100px 縦120px の画像が用意され、 その画像は src.BackColor= で指定した色で塗りつぶされます。

src.BackColor= の指定方法は グラデーション指定可能な色指定オプション を参照してください。

w.xPos=-1 center w.yPos=-1 vcenter の指定により、画像中央に 龍 の1字が書き込まれます。

 

記述例: 3




src= による画像ファイルの指定のかわりに、 src.width=200 src.height=200 の指定があります。 これにより、幅200px 縦200px の画像が用意され、 その画像は src.BackColor= で指定した色で塗りつぶされます。
src.BackColor= で指定されている str[10] には、 色を示すオブジェクトファイルのフルパスが設定されていなければなりません。

w.width= と、 w.height= の指定がある場合、 w.xPos= の指定と w.yPos= の指定は、 文字を書き込む「四角形エリアの左上端の位置」を示すことになります。 四角形エリアの幅は w.width= で、高さは w.height= で指定します。 w= で指定された文字は、この四角形エリアの範囲内に書かれます。

この例では、 w.xPos=0 w.yPos=0 w.width=100 w.height=100 と指定されているので、 四角形エリアは全画像を「田」の字に4つに分けたときの、左上のマス部分に相当します。
四角形エリアの中央に文字を書く場合、 centervcenter の指定をします。 この例では、この2つの指定があるので、四角形エリアの中央に の文字が描画されます。

この四角形エリアの右下に「龍」の字を描画するには、 rightbottom の指定をします。 左上なら、 lefttop の指定をします。
次の例では、四角形エリアと、この位置指定を使って描画していく例を示します。

 

記述例: 4


次のような漢字を書く例です。



横200px、縦200px の白地画像に、黒で「龍」の字が上下左右に4つならんでいます。 (XpまでのWindowsでは文字として使用できませんが、これで1つの漢字です。 Vistaでは コード2A6A5 の漢字として使用できます)
この漢字を「龍」の文字を使って、画像として出力するマクロを、次に示します。



【コピペで確認】 上記のサンプルコードは メモ帳モードで開いたテキストフォームにコピー&ペーストして、 テストモード実行で 動作確認することができます。


上記例では、 色の指定に カラーオブジェクトファイル、 フォントの指定に フォントオブジェクトファイル を使用しています。
これらのオブジェクトファイルは Ex:Img.GetObjectコマンド」 で作成し、 「Ex:Img.Writeコマンド」 のパラメータに指定しています。

最終的に作成される画像を含めて、 画像データはファイルに4回出力されています。 最初の3回はワークディレクトリにビットマップで出力しておき、 最後にデスクトップにgifファイルとして出力しています。

[BACK]
プロセルピナ