Visual Studio 2005 で Windows アプリケーションを作成しました。このアプリケーションでは、ユーザーは現在アクティブなフォームを PDF ファイルにエクスポートできます。
問題は、テキストボックスの値でそれを保存するにはどうすればよいですか? それらを空のままにしておくと、問題はありません。次に、テキストボックスに入力して出力を取得し、[エクスポート] をクリックすると、「GDI+ で一般的なエラーが発生しました」というメッセージが表示されます。そしてVisual Studioの出力ウィンドウで:
A first chance exception of type 'System.FormatException' occurred in mscorlib.dll
A first chance exception of type 'System.Runtime.InteropServices.ExternalException' occurred in System.Drawing.dll
これが私のコードです:
アクティブな画面をキャプチャする場合:
try
{
Rectangle bounds = this.Bounds;
using (Bitmap bitmap = new Bitmap(bounds.Width, bounds.Height))
{
using (Graphics g = Graphics.FromImage(bitmap))
{
g.CopyFromScreen(new Point(bounds.Left, bounds.Top), Point.Empty, bounds.Size);
}
bitmap.Save("C://Rectangle.bmp", ImageFormat.Bmp);
}
}
catch(Exception e)
{
MessageBox.Show(e.Message.ToString());
}
PDF にエクスポートする場合:
captureScreen();
PdfDocument doc = new PdfDocument();
PdfPage oPage = new PdfPage();
doc.Pages.Add(oPage);
oPage.Rotate = 90;
XGraphics xgr = XGraphics.FromPdfPage(oPage);
XImage img = XImage.FromFile(@"C://Rectangle.bmp");
xgr.DrawImage(img, 0, 0);
doc.Save("C://RectangleDocument.pdf");
doc.Close();
テキストボックスの値を含むフォームをPDFにエクスポートするのを手伝ってください。