プリンターの用紙サイズを制御できるように、印刷ドキュメントを使用して印刷するにはどうすればよいですか?
- 印刷ダイアログ ポップアップまたは JavaScript ポップアップなしで Web ホスティングが完了した後に制御する必要があります。
- 印刷ダイアログ オプションを使用せずに、用紙サイズを設定せずに Web ホスティングを行った後、クライアントのプリンターで印刷する必要があります。
- C# .net で行う必要があります
ユーザーとして、私がサイトに入ったときに、誰かが私のプリンターの設定を変更したり、私のプリンターを制御したりすることを望んでいません.
セキュリティ上の理由から、これが不可能であることを願っています。
最適なオプションは、適切なサイズを含む PDF ファイルを生成することです。ユーザーが印刷ダイアログで手動で変更しない限り、プリンターはそれに基づいて正しいページサイズを選択する必要があります。
印刷ダイアログを回避することはセキュリティ上の制限です。その場合、ActiveX または firefox 拡張機能が唯一の代替手段であり、イントラネット ベースの Web アプリケーションでは問題ない可能性があります。
プリンターのクライアント側をこれだけ制御できる唯一の方法は、印刷インターフェイスを処理してそこから移動する ActiveX コンポーネントを作成することです。これはクロスブラウザではなく、最もクリーンなソリューションではありません。ただし、用紙サイズを管理できる唯一の方法です。CSS @print オプションを調べましたが、実際にサイズを制御できるものを見つけることができませんでした。
他の唯一の可能性は、Flash や Silverlight などの印刷機能を確認することです。彼らがあなたが探しているものを持っているか持っていないかを言うには、私は十分に精通していません。ただし、別のオプションになる場合があります。
適切な権限を付与すれば、Java アプレットには用紙サイズを設定する機能があると思います。これが機能するには、ユーザーはほぼ確実にフープを飛び越える必要があると思います...
私は以前にこれを調べましたが、ポートレート/ランドスケープなどを強制する唯一の方法は、ユーザーに ActiveX コントロール (または同様のもの) をインストールさせることです。
Javascript や CSS だけではできません。