...\DF98\SAMPLES\TUTORIAL フォルダに収録されている Visual Fortran サンプルの SHOWFONT.F90 は,システムで使用可能なフォントでテキストを表示します。画面がテキストで埋まったら,Enter キーを押せば次の画面を表示することができます。次に,このサンプルの簡略版を示します。SHOWFONT は SETFONT を呼び出してタイプフェイスを指定します。その後,MOVETO が各テキスト文字列の開始位置を設定します。プログラムは初期化された個々のフォントについて,画面にサンプル・テキストのメッセージを送ります。
! SHOWFONT.F90 の簡易版 USE DFLIB INTEGER(2) grstat, numfonts,indx, curr_height TYPE (xycoord) xyt TYPE (fontinfo) f CHARACTER(6) str ! フォント番号用の 5 文字。最大は 327675。'n' は 1。 ! 初期化します。 numfonts=INITIALIZEFONTS( ) IF (numfonts.LE.0) PRINT *,"INITIALIZEFONTS error" IF (GRSTATUS().NE.$GROK) PRINT *,'INITIALIZEFONTS GRSTATUS error.' CALL MOVETO (0,0,xyt) grstat=SETCOLORRGB(#FF0000) grstat=FLOODFILLRGB(0, 0, #00FF00) grstat=SETCOLORRGB(0) ! 後で比較するために,基本フォント文字高を得ます。 grstat = SETFONT('n1') grstat = GETFONTINFO(f) curr_height = f.pixheight ! 初期化が終了しました。フォントの表示を開始します。 DO indx=1,numfonts WRITE(str,10)indx grstat=SETFONT(str) IF (grstat.LT.1) THEN CALL OUTGTEXT('SetFont error.') ELSE grstat=GETFONTINFO(f) grstat=SETFONT('n1') CALL OUTGTEXT(f.facename(:len_trim(f.facename))) CALL OUTGTEXT(' ') ! フォントを表示します。 grstat=SETFONT(str) CALL OUTGTEXT('ABCDEFGabcdefg12345!@#$%') END IF ! 次の行に進みます。 IF (f.pixheight .GT. curr_height) curr_height=f.pixheight CALL GETCURRENTPOSITION(xyt) CALL MOVETO(0,INT2(xyt.ycoord+curr_height),xyt) END DO 10 FORMAT ('n',I5.5) END