私は自分のウィンドウにテクスチャボックスを持っています。このボックスの上にQuickFontを使用してテキストが印刷されます。一度に追加するのではなく、たくさんのテキストが追加されているので、この画面を更新するのに時間がかかります。時間とリソースを節約するために、テキストでボックスをスクリーンキャプチャし、最初のレンダリング後に解析するものがないため、はるかに高速なテクスチャとして使用します。OpenTK画面のビットマップを保存していますが、QuickFontのテキストが表示されません。
スクリーンキャプチャ自体にglControlを取得し、ビットマップに保存できますが、画面にテキストはありません。 (F.Y.Iこれは薬局ラベルの印刷物のWYSIWYGレンダリングであるはずです)
テキストも保存する方法はありますか?
if (GraphicsContext.CurrentContext == null)
throw new GraphicsContextException();
Bitmap bmp = new Bitmap(frm1.ClientSize.Width, frm1.ClientSize.Height);
System.Drawing.Imaging.BitmapData data =
bmp.LockBits(frm1.ClientRectangle, System.Drawing.Imaging.ImageLockMode.WriteOnly,
System.Drawing.Imaging.PixelFormat.Format24bppRgb);
GL.ReadPixels(0, 0, frm1.ClientSize.Width,frm1.ClientSize.Height,
OpenTK.Graphics.OpenGL.PixelFormat.Bgr, PixelType.UnsignedByte, data.Scan0);
bmp.UnlockBits(data);
bmp.RotateFlip(RotateFlipType.RotateNoneFlipY);
bmp.Save("Move.bmp", ImageFormat.Bmp);
bmp.Dispose();