2

他の誰かに私の仕事をしてもらうことに本当に興味はありません。正しい方向へのポイントをいただければ幸いです。

印刷する必要があるフォームがいくつかあります。それらはすべて、複数のデータグリッドビューとその他のコントロールで構成されています。ジョブカード、製造シート、ストックカットリスト、見積もりなど.

私はインターネット上で非常に多くの可能な解決策を試しました。PrintForm コンポーネントは、解像度が低いため、実質的に役に立ちません。私はCrystal Reportを試してみましたが、ある程度の成功を収めました.Crystal Reportを使用して、見積もりと請求書を生成および印刷しています.

フォーム(ビットマップ)の「キャプチャ」...(私の場合、printFormのわずかに優れた代替手段だと思います)エーテルをカットしません。

MSDN フォームの印刷 (Visual C#)

これはテスト前のアプリケーションの最後の部分であるため、かなりやる気がありません。この問題を最終的に解決し、VS 印刷の経験を積むことができるように、PrintDocument コンポーネントについてできる限りのことを理解し、学びたいと思っています。

最後の手段として、iText-Sharp について深く掘り下げようとしています。それで、それが無益であることが判明するかどうか教えてください(少なくとも私の場合;)それは大歓迎です.

親切なサーまたはレディ、あなたの時間とおそらくあなたの知識に感謝します

よろしくお願いします

新しい注文フォーム Crystal Reports でも同様に生成される Herman Vercuiel 見積もりフォームここに画像の説明を入力

印刷する必要があるフォーム... フォームの量は、注文した製品の種類と量によって異なります。

ここに画像の説明を入力

編集:

現時点ではこれに落ち着いています..

これが 1 ページに収まるようにするにはどうすればよいですか? 現在、フォームの右側の一部が欠落しています。

private void CaptureScreen()
        {
            Graphics mygraphics = this.CreateGraphics();
            Size s = this.Size;
            memoryImage = new Bitmap(s.Width, s.Height, mygraphics);
            Graphics memoryGraphics = Graphics.FromImage(memoryImage);
            IntPtr dc1 = mygraphics.GetHdc();
            IntPtr dc2 = memoryGraphics.GetHdc();
            BitBlt(dc2, 0, 0, this.ClientRectangle.Width, this.ClientRectangle.Height, dc1, 0, 0, 13369376);
            mygraphics.ReleaseHdc(dc1);
            memoryGraphics.ReleaseHdc(dc2);
        }
4

1 に答える 1