*TX 07 - バックグラウンドイメージに重ねてテキストを描画する (96 年 2 月 15日)
Q: バックグラウンドイメージに重ねて TextEdit に描画を行わせるには、どうすればいいですか。TextEdit がテキストを再描画するたびに、バックグラウンドイメージが消去されてしまいます。
A: 再描画するときに TextEdit がバックグラウンドを消去しないようにするには、ボトルネックとなっている 2 つの QuickDraw ルーチン (StdRect と StdRgn) を独自のカスタムバージョンと置き換える必要があります。新しく作成したルーチンでは、実行されることになるオペレーションが消去であるかどうかをチェックし、それが消去である場合は、領域を消去して現在のバックグラウンドカラーにする代わりに、TextEdit 領域を通して表示したいイメージを描画します。この処理の実現方法を示す "TE Over Background" という名前のコード例が用意されています。これは、Developer Tool Chest CD: Dev.CD Feb 96 TC:Sample Code:Snippets:QuickDraw:TE Over Background に保存されています。または、 http://dev.info.apple.com/source/code/Snippets/QuickDraw/TE_Over_Background/TESample.c.html からダウンロードすることもできます。
|