PICTURE TO GIF

4D - Documentation   French   English   German   Spanish   日本語   4D v11 SQLコマンドテーマリスト   4D v11 SQLインデックス   4D v11 SQL定数テーマリスト   戻る   前   次

version 6.7 (Modified)


PICTURE TO GIF (pict; blobGIF)

引数説明
pictピクチャピクチャフィールドまたは変数
blobGIFBLOBGIFピクチャを受け取るBLOB

説明

PICTURE TO GIF コマンドは、変数またはフィールドに保存されているPICTピクチャから、GIFフォーマットの画像を作成します。

ピクチャタイプの変数またはフィールドをpictに、BLOBタイプの変数またはフィールドをblobGIFに渡します。コマンドの実行後、blobGIFにはGIFフォーマットの画像が格納されます。

Note: GIFピクチャは256色以上はサポートしません。元のPICTピクチャがそれ以上の色数の場合は、失われる色があります。コマンドはシステムパレットのもとづいて減色します。生成されるGIF画像は87a (opaque) およびノーマル (インターレースなし)です。

blobGIFの画像をBLOB TO DOCUMENTコマンドを使ってファイルに保存でき、またそれをWeb上に公開することもできます。

変換が成功したらシステム変数OKが1になります。そうでない場合は0になります。

例題

接続カウンターを表示するGIF画像を作成する場合を想定してみましょう。データベースのピクチャライブラリ内に、すべての番号をピクチャとして登録しておきます:

On Web Connection データベースメソッドに、以下のコードを記述します:

   If (Web Context)
      ...
   Else
      C_BLOB ($blob)
      Case of 
         ...
         : ($1="/4dcgi/counter") `Generating a GIF counter
               `4DにこのURLが送信されると
            $blob:=gifcounter (<>nbHits)    `GIFピクチャを生成する
               `<>nbHits変数には接続数がおさめられいる 
            SEND HTML BLOB ($blob;"image/gif")
               `ブラウザに生成したピクチャを送信
            ...
         End case
   End if

以下はgifcounter メソッドです:

   C_LONGINT($1)
   C_PICTURE($img)
   C_BLOB($0)
   If ($1=0)
      $ndigits:=1
   Else 
      $ndigits:=1+Length(String($1))
   End if
   If ($ndigits<5)
      $ndigits:=5
   End if

   $div:=10^($ndigits-1)
   For ($i;1;$ndigits)
      $ref:=Int($1/$div)%10
      GET PICTURE FROM LIBRARY($ref+1000;picture)
      $img:=$img+picture
      $div:=$div/10
   End for

   PICTURE TO GIF($img;$0)

Webブラウザに4Dは以下のようなGIF ピクチャを送信します:


4D - Documentation   French   English   German   Spanish   日本語   4D v11 SQLコマンドテーマリスト   4D v11 SQLインデックス   4D v11 SQL定数テーマリスト   戻る   前   次