FireMonkey の球体コンポーネントの表面にテキストを書き込む方法はありますTextureMaterialSource
か?テキストでビットマップを作成し、そのテキストを
1 に答える
0
Firemonkey の 3D 側の内部を扱っていないので、表面に直接書き込む方法についてはわかりません。しかし、私はそのような解決策で途中まで行くことができます。
MakeScreenshot
考えられる解決策の 1 つは、(結果を返す) 関数を使用するTBitmap
ことです。たとえば、aTEdit
と a TLabel
(またはTText
) をフォームに追加します。livebindings または古き良きlabel1.text := edit1.text
コードのいずれかを使用して、表示したいテキストでスクリーンショット ソースを設定できます。
TSphere
フォームに aと aがあると仮定しますTTextureMaterialSource
。をフォームに追加TButton
し、OnClick イベントで次のようなものを使用します。
var
Bmp : TBitmap;
mstream : TMemorystream;
begin
mstream := TMemorystream.Create;
bmp := Label1.MakeScreenshot;
bmp.SaveToStream(mstream);
tex.Texture.LoadFromStream(mstream);
mstream.Free;
end;
注: tex
はテクスチャ オブジェクトです。
簡単に書きましたが、うまく動作しませんでした (おそらく、テクスチャが読み込まれた後に、さらに多くの作業を行う必要があるためです)。どこから作業するかについての基本的なアイデアを提供する必要があります。
于 2013-04-03T00:06:10.353 に答える