辛抱強く最後までお読みいただきたいと思います。
背景:ユーザーがボタンをクリックすると、USBからファイルを受け取り、フォーマットされたデータをプリンターを介してグラフプロットに印刷するアプリがあります-PRINT
プロセス: これは常に実行されているアプリケーションです。そのため、ユーザーはすべてのファイルが印刷された後にドライブを取り外し、新しいファイルをコピーし、アプリケーションに挿入し、[印刷] ボタンをクリックします。
問題: 最初はすべて問題ありません。ユーザーがドライブを取り外し、新しいファイルで戻ると、印刷中にすべての画像の位置合わせが失われます。
例: ビットマップは用紙の右端に描画され、次回は左にシフトされます。
私が試しPrintDocument
た: PRINTボタンがクリックされるたびにオブジェクトをリセットします。(使用しない)。PRINTボタンがクリックされるたびにアプリケーションの再起動を試みました:これは期待どおりに機能します。そのため、アプリケーションの起動に関連するものであると想定しています。
私はそれが漠然とした質問であることを知っています。どのデータをここに表示するかについて混乱しています。どの部分が問題なのか分からないので。したがって、明確化を求めるか、検証に必要なコード部分を尋ねてください。投稿します.
編集1,2:説明用のコード
var trackChart3 = new Chart();
var chart3Area = new ChartArea { Name = "chart3" };
trackChart3.ChartAreas.Add(chart3Area);
var locChart3 = new Point(-70, 162);
var chartSize = new Size(90, 60);
var chart3Rect = new Rectangle(locChart3, chartSize);
trackChart3.Printing.PrintPaint(e.Graphics, chart3Rect);
これにより、ページの右側に初めてチャートが印刷されます (アプリケーション起動印刷)。ただし、ドライブを取り外して挿入すると、元の -70 になりますが、これは論文にはありません。