1

システム (Windows)/プリンターと FAX で定義されているカスタム用紙サイズでページを印刷する必要があります。

この FireFox 拡張機能「JS Print Setup」を使用しています。私は彼らのドキュメントを 読みましたhttp://jsprintsetup.mozdev.org/reference.html

システムプリンターリストを取得する機能があります

jsPrintSetup.getPrintersList()

しかし、システムの用紙サイズを取得できる関数が見つかりません。持っているのは

jsPrintSetup.getPaperSizeList() // システムの用紙サイズを取得していません :(

ただし、システムからではなく、独自の用紙サイズを提供します。

拡張機能を使用してシステムの用紙サイズを選択するにはどうすればよいですか、それが不可能な場合は拡張機能で作成しますか?

補足: この拡張機能を使用しているのは、(コードを使用して) プリンターと用紙サイズを選択することでサイレント印刷できるためです (まだ行われていません)。

4

2 に答える 2

2

今のところ、システムの用紙サイズを使用する方法を見つけることができませんでしたが、新しい用紙サイズをシステムに追加する方法を見つけましたjsPrintSetup.getPaperSizeList()

jsPrintSetup.definePaperSize(101, 101, "Custom", "Custom_Paper", "Custom PAPER", 250, 400, 
jsPrintSetup.kPaperSizeMillimeters);
jsPrintSetup.setPaperSizeData(101);

ドキュメントによると

void definePaperSize(in short jspid, in short pd, in wstring pn, in wstring pwg, in wstring name, in double w, in double h, in short m); 
于 2013-08-08T08:22:22.280 に答える
2

異なるプラットフォームとその印刷サブシステムでは、用紙の定義が異なります。jsPrintSetup は、独自の ID を持ち、プラットフォーム固有の ID に一致する紙の定義を含む独自の組み込みリストを使用しています。定義済みの用紙定義のリストを表示して、ケースに最も適したものを使用できます。( http://jsprintsetup.mozdev.org/reference.html#ENHANCED_PAPERHANDLING) たとえば、ISO A4 用紙サイズを使用する場合は、jsPrintSetup.setPaperSizeData(10); を呼び出すことができます。カスタム用紙サイズを使用するには、最初にプラットフォームの印刷システムで定義し、次に正しい paperData と paperName の値を使用して jsPrintSetup で定義する必要があります。それらを見つける最も簡単な方法は、Firefox からこのペーパーに手動で印刷した後、about:config から取得することです。(print.printer_{お使いのプリンター名}.paper_data および print.printer_{お使いのプリンター名}.paper_name)

これがお役に立てば幸いです。

よろしく、

ディミタル・アンゲロフ

于 2013-09-18T05:41:28.110 に答える