1

これは2部構成の質問です。

1.1。

元の.NET印刷クラス(System.Drawing.Printing内)はサーバー側ではサポートされていません。(http://msdn.microsoft.com/en-us/library/system.drawing.printing(VS.80).aspxを参照してください)

新しいXPSベースの印刷クラス(System.Printing内)はサーバー側(ASP.NETアプリやWindowsサービスなど)でサポートされていると思いますが、それを証明することはできません。そして、マイクロソフトはそれについての私の質問に答えていません。

ここの誰かが知っていますか?

2

新しいXPSベースの印刷では、GDIへの内部変換が行われる場合があります。これは、アプリが新しい印刷クラスで印刷している場合でも、使用可能なドライバーが古いスタイルのドライバーのみである場合です。http://msdn.microsoft.com/en-us/library/ms742418.aspxを参照してください。そのような状況で、新しいクラスはサーバー側で安全に使用できますか?

  • 明確にするために-これは完全にサーバーの印刷に関するものです。この説明の目的上、Webブラウザはまったく関係していません。Windowsサービスまたはasp.netのいずれかのサーバーは、サーバーに接続されているプリンターでドキュメントを直接印刷する必要があります。

ありがとう。

4

4 に答える 4

4

以下の私のコメントで述べたように、純粋なマネージ コードでのサーバー側印刷のサポートされているソリューションはありません。

しかし、Aspose はマネージ コードから XPS ドキュメントを印刷できるコードをいくつかリリースしました (PInvoke を使用して XPS Print API を呼び出すことに成功しました)。[記録として、Microsoft が最初に PInvoke を使用して XPS 印刷を呼び出すことを推奨しなかったのは、PInvoke を使用して対話するのが難しい API であるという単純な理由によるものだと思います。しかし、Aspose は成功したようです。これは朗報です。別の管理されていない DLL を個別に使用する必要がなくなるからです。]

全体として、Aspose ソリューションは、ASP.NET および Windows サービスから複雑なドキュメントを印刷するための、完全にサポートされている最も簡単な方法のように見えます。

詳細はこちら: http://www.aspose.com/documentation/.net-components/aspose.words-for-.net-and-java/howto-print-a-document-on-a-server-via-the -xpsprint-api.html

于 2009-10-18T20:55:48.570 に答える
0

.Net XPS のサポートは WPF の一部です。Windows サービスでの WPF の使用はサポートされていないため ( MSDNを参照)、.Net を使用した XPS 印刷 (System.Printing の使用を含む) もサービスでサポートされていません。

質問の「GDI への変換」の部分にも同じ答えが適用されます。そのプロセスは自動的に行われるためです (ドライバーが XPS ではない PrintQueue に XPS コンテンツが出力されている場合、フレームワークは XPS コンテンツを DDI 呼び出しに自動的に変換します)。 GDI ベースのアプリが印刷されている場合、ドライバーによって期待されます)。

XPS 印刷が必要なサーバー側の開発 (サービス) については、Windows 7 で利用可能な Win32 API があります。具体的には、XPS 印刷パスへのアクセスを提供し、非 XPS 印刷キューの自動変換をサポートする XPSPrint API を参照してください。 XPS コンテンツの操作と印刷チケットの操作に使用できる API。

于 2009-08-21T04:25:52.813 に答える
-1

ユーザーのブラウザをサーバーコードから印刷するようにしようとしている場合は、それを忘れてください。期待すべき最善の方法は、を呼び出すjavascriptコードを含むページをブラウザに送信することですwindow.print()

于 2009-08-20T03:04:01.613 に答える
-1

これらの ASPnose API は必要ないと思います。

これを正確に行うためのサンプルコードがここにあります:

https://groups.google.com/forum/?fromgroups#!msg/pdfnet-sdk/fOuGOvx06Tk/EckAX-ga2i8J

于 2013-05-31T12:51:57.097 に答える