私の環境
私がMingをコンパイルした環境はWindowsXP上でMSYSとMinGWを用いたものです。
まずは文字を表示する。UTF用いて日本語を表示します。
#include<stdio.h>
#include"ming.h"
typedef unsigned short wchar;
typedef unsigned char wchar_ming;
int main()
{
//フラッシュムービー関係
SWFMovie movie;
SWFTextField text;
SWFBrowserFont font;
//表示する文字の読み出しよう
wchar_ming *tex;
FILE *fp;
int count = 1;
int i = 0;
//文字データの読み込み
tex = (signed char*)calloc(sizeof(signed char),100);
if(NULL ==(fp = fopen("text","rb"))){
printf("FileNotOpen\n");
return 0;
}
while(count ==1 && i<100){
count = fread(&tex[i++],sizeof(wchar_ming),1,fp);
}
fclose(fp);
//ここからフラッシュ関係
Ming_useSWFVersion(6);
movie = newSWFMovie();
text = newSWFTextField();
font = newSWFBrowserFont("utf");
SWFTextField_setFont(text,(SWFBlock)font);
SWFTextField_addUTF8String(text,tex);
SWFMovie_add(movie,(SWFBlock)text);
SWFMovie_save(movie,"e.swf",-1);
return 0;
}
こんなのができます
SWFTextField_setFlagesをつかう
TextFieldの特殊な機能を用いるにはSetFlageをもちいます
//ここからフラッシュ関係
Ming_useSWFVersion(6);
movie = newSWFMovie();
text = newSWFTextField();
font = newSWFBrowserFont("utf");
SWFTextField_setFont(text,(SWFBlock)font);
SWFTextField_addUTF8String(text,tex);
SWFTextField_setBounds(text,100,100);
SWFTextField_setFlags(text,SWFTEXTFIELD_DRAWBOX |SWFTEXTFIELD_WORDWRAP);
SWFMovie_add(movie,(SWFBlock)text);
SWFMovie_save(movie,"e.swf",-1);
return 0;
}
こんなのができます、(書き足せるようになっているのと端に行くと自動で改稿されます)
|
_setFlags関係
ming.hに書かれている以下のようなものが使えます
#define SWFTEXTFIELD_HASFONT (1<<0) /* font and size given */
#define SWFTEXTFIELD_HASLENGTH (1<<1)
#define SWFTEXTFIELD_HASCOLOR (1<<2)
#define SWFTEXTFIELD_NOEDIT (1<<3)
#define SWFTEXTFIELD_PASSWORD (1<<4)//書き込んだ文字は*で表示される
#define SWFTEXTFIELD_MULTILINE (1<<5)
#define SWFTEXTFIELD_WORDWRAP (1<<6) //端っこに行ったら自動で改稿する
#define SWFTEXTFIELD_HASTEXT (1<<7) /* initial text present */
#define SWFTEXTFIELD_USEFONT (1<<8)
#define SWFTEXTFIELD_HTML (1<<9)//HTMLの書式を使えるようにする
#define SWFTEXTFIELD_DRAWBOX (1<<11)//書き込めるようにする
#define SWFTEXTFIELD_NOSELECT (1<<12)
#define SWFTEXTFIELD_HASLAYOUT (1<<13) /* align, margin, lspace, indent */
#define SWFTEXTFIELD_AUTOSIZE (1<<14) /* SWF6 */
まだわからないこと
SWFTextで日本語を使う方法がまだよくわからない、MIKACHANフォントを
FDBに直してから SWFTextを用いると。半角はうまくいくのだけれども、全角がうまくいかない?
なぜだ。
後、SWFTextFieldでfdbフォントを用いる方法がいまいちわからない。
|