フィルタの書式 のバックアップソース(No.2)

**AviSynthのマニュアル [#b5a3942a]
AviSynthのフィルタのマニュアルは、たいていの場合、以下のような順番で書かれています。

 書式
 
 説明
 
 使用例(ない場合もある)

まず、フィルタ(関数)の書式(フォーマット)、そして、そのフィルタの説明、最後にフィルタの使用例があります。フィルタによっては、使用例がない場合もあります。

たとえば、MessageClipフィルタのマニュアル((http://www.avisynth.org/MessageClipから転載。))を見てみると、次のように書かれています。

>MessageClip(string message, int width, int height, int shrink, int text_color, int halo_color, int bg_color)~
~
MessageClip produces a clip containing a text message; used internally for error reporting. Arial font is used, size between 24 points and 9 points chosen to fit, if possible, in the width by height clip.~
~
If shrink is true, the clip resolution is then reduced, if necessary, to fit the text.~

1行目のMessageClip(string message, ...)までがMessageClipフィルタの書式です。それ以降は、同フィルタの説明です。MessageClipフィルタの場合、使用例はありません。

**フィルタの書式 [#ccbc90c4]
フィルタの書式は、
 フィルタ名(引数リスト)
という形で表されます。

たとえば、MessageClipフィルタの場合は、次のように記されていました。
 MessageClip(string message, int width, int height, int shrink, int text_color, int halo_color, int bg_color)
このとき、MessageClipがフィルタ名、括弧の中に書かれているのが引数リストということになります。

 引数型 引数名
引数リストは、このように、引数型と引数名が、対の形で記述されています。((例外的に、clip型の引数clipがある場合に、一方を省略して、単にclipと書かれていることもあります。))

 string message
MessageClipの1つ目の引数の場合、stringが引数の型で、messageが引数の名前です。言い換えると、1つ目の引数は、messageという名前で、その引数型はstring型である、ということになります。

 フィルタ名(引数型1 引数名1, 引数型2 引数名2, 引数型3 引数名3, ...)

引数が複数ある場合は、コンマ区切りで、つづけて書きます。引数の数は、フィルタによって異なります。

つまり、MessageClipフィルタの場合、message、width、height、shrink、text_color、halo_color、bg_colorという7つの引数があり、引数messageはstring型、それ以外の引数はint型であるというわけです。

引数型については、ScriptVariablesを参照。