SHOWFONT.F90 サンプル

...\DF98\SAMPLES\TUTORIAL フォルダに収録されている Visual Fortran サンプルSHOWFONT.F90 は,システムで使用可能なフォントでテキストを表示します。画面がテキストで埋まったら,Enter キーを押せば次の画面を表示することができます。次に,このサンプルの簡略版を示します。SHOWFONTSETFONT を呼び出してタイプフェイスを指定します。その後,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