お知らせ

電子会議

ライブラリ

パレット

Delphi FAQ検索

Delphi FAQ一覧

サンプル蔵





FDelphi FAQ
16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル

"RE:切り抜き文字"

この発言は
#00430 Fermion さんの切り抜き文字
に対するコメントです

 クリップリージョンの廃棄に問題がありそうなので、、(((^^;)  m(_"_)m ■サンプルコード //===================================================================== procedure TForm1.Button1Click(Sender: TObject); var R : TRect; W, H: Integer; Txt : String; Rgn: HRGN; begin // ウィンドウのクライアント長方形を取得 R := ClientRect; with Label1 do begin Font.Name := 'MS P明朝'; Font.Size := 64; Caption := '見えますか?'; Left := ( R.Right - Width ) div 2; Top := ( R.Bottom - Height ) div 2; Update; end; Txt := '★透けて見える???★'; with Canvas do begin with Font do begin Name := 'MS P明朝'; Size := 40; Style := Style + [fsBold]; end; Brush.Color := $00FF0080; W := TextWidth( Txt ); H := TextHeight( Txt ); with R do begin Left := ( Right - Left - W ) div 2; Top := ( Bottom - Top - H ) div 2; BottomRight := Point( Left + W, Top + H ); end; BeginPath( Handle ); DrawText( Handle, PChar( Txt ), -1, R, DT_SINGLELINE or DT_VCENTER or DT_CENTER ); EndPath( Handle ); Rgn := PathToRegion( Handle );//Path から Region を作成(Pathは廃棄) try if SelectClipRgn( Handle, Rgn ) > NULLREGION then begin FillRect( R ); SelectClipRgn( Handle, 0 );//Clip Region を削除 end; finally DeleteObject( Rgn );//Region を廃棄 end; end; end; //===================================================================== 98/03/13(金) 00:12 Fermion [KHF03264] Original document by Fermion 氏 ID:(KHF03264)



ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。

Copyright 1996-2002 Delphi Users' Forum