問題タブ [printer-properties]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
1471 参照

c# - プリンターのデフォルトの両面印刷オプションを見つける

特定の印刷ドキュメントの場合PrintSettingsDuplex値は に設定される可能性があります (そして設定される可能性があります) Duplex.Default

選択したプリンターが両面印刷するかどうかを確認するにはどうすればよいですか?

インストールされているプリンターのサポートされている動作のデフォルト値を見つけるにはどうすればよいですか?

0 投票する
0 に答える
2830 参照

windows - ResetDC()は何もしません(Windows用の印刷スプーラーAPI)

私はWindowsのプリントスプーラーAPIのラッパークラスを作成しました。これはほとんど機能します。

動作しないのは、プリンタ設定を適用することだけです。

まず、DocumentProperties()を呼び出して、プリンター設定を正常に取得して操作します。

次に、 ResetDC()を使用してこれらの設定を適用しようとしましたが、何も起こりません。この関数は有効なハンドルを取り、同じ有効なハンドルを返します。つまり、設定を適用する必要があります。しかし、何も起こらなかったようです。印刷出力は、プリンタ設定の変更による影響を受けません。

私は、レベル9でSetPrinter()を使用しようとしましたが、これも効果がありません。

このタスクはかなり緊急になっています。助言がありますか?

Delphi XE2、Windows764ビットを使用します。


さて、大きなOOラッパーの大部分をすべてスキップします。これが要約された手続き型バージョンです。(XPSファイルを指定する必要があることに注意してください。)

プリンター設定の変更が適用されており(Info2_Apply()を使用している場合)、MSWordで確認できます。印刷時に無視されているだけです。それが謎です。

私は非常に多くのことを試したので、オプションが不足しています。助けていただければ幸いです。


私はついにオプションを使い果たしました。

これが私のテストコードの最後のバージョンです。それは自己完結型であり、あなたが必要とするよりも多くの機能を含んでいます-私が考えることができる何かを必死に試みた結果です。

他の誰かがプリンタ設定を機能させることができる場合は、私に知らせてください。

以下を使用して、コンボボックスにプリンタ名を入力します。

印刷手順(私のテストコード):

0 投票する
1 に答える
8846 参照

c# - 仮想プリンター ポート リダイレクトの構成

C# コードを使用して外部プログラム (.exe ファイル) にリダイレクトするように仮想プリンター ポートを構成する必要があります。現在、いくつかのカスタマイズで仮想ポートをインストールできます ( bghhコードのおかげです)。添付の図は、要件を示しています。どんな助けでも大歓迎です。

仮想プリンター ポート リダイレクトの手動構成

0 投票する
1 に答える
3697 参照

windows - デフォルトのプリンター設定は無視されます

Windows Print Spooler API を使用して、XPS ファイルを印刷できます。

問題は、印刷スプーラーがデフォルトのプリンター設定を無視することです。

(プリンター設定の適用は諦めました。デフォルトのプリンター設定で十分です。)

たとえば、コントロール パネルでの設定に関係なく、印刷物は常にカラーで 1 ページに 1 枚の用紙で出力されます。シートあたり。

MS Word や Adob​​e などの他のアプリケーションは、デフォルトのプリンター設定を尊重します。

Delphi XE2 と Windows 7 64 ビットを使用しています。

このテスト コードは自己完結型であるため、貼り付けてテストすることができます...

次を使用して、コンボ ボックスにプリンター名を入力します。

印刷手順:

0 投票する
0 に答える
511 参照

windows - プログラムでプリンタのプロパティ(残りの用紙数)にアクセスする

写真の撮影と印刷を行う写真キオスクがあります。キオスクは、Windowsのスケジュールタスクを使用して、朝に自動的に起動し、夜にシャットダウンします。現在、キオスクシステムに電子メールアラートを追加して、プリンターの用紙が少なくなったときに、サポート担当者に新しいロール紙を貼るように通知する電子メールを送信しようとしています。現在、AutoHotKeyを使用してプリンターユーティリティからテキストを取得することにより、プリンターユーティリティから残りの用紙数を取得するハックを使用しています(プリンターユーティリティの画像を参照してください。これは500kbの単一の実行可能ファイルです)。プリンタのサプライヤにも確認しましたが、プログラムで呼び出すことができるライブラリがありません。

用紙数が残っているプリンタユーティリティ

私が知りたいのは、ウィンドウの下で一般的な印刷APIを介してプリンターのプロパティを取得する方法、またはUSBスニファーを使用してユーティリティから送信されたコマンドを複製する方法があるかどうかです。プリンターが接続されているUSBポートをスニッフィングしてみましたUSBSnoopUSBlyzerを使用していますが、コマンドがどのように呼び出されたかをまだ理解できませんでした。何か案は?

更新1:ウィンドウからテキストを取得するために使用したオートホットキーコードは次のとおりです。

更新2:WinAPIOverride32を試しましたが、DLL呼び出しが表示されません。

0 投票する
2 に答える
3352 参照

c# - C#で一意/個別のプリンターモデル名を取得するには?

私がやろうとしていること:

コンピューターにインストールされているすべてのプリンターのデータベースを作成しています。

を使用PrinterSetting.PrinterNamePrinterSettings.InstalledPrintersて取得してPrinterNameいます。

winapi も試しましWin32_Printerたが、これと上記のコードには問題があります。

問題

問題は、HP LasetJet 1020、HP LasetJet 1020 (コピー 1)、HP LasetJet 1020 (コピー 2) などのように、1 つのプリンターを異なる名前でインストールできることです。プリンター名はユーザー定義で、任意の名前にすることができます。1 つのプリンターが 2 つの異なる名前でインストールされている場合でも、名前に類似性はありません。

そのため、1 つのプリンターが異なる名前でインストールされていても、プリンターのモデル名は一意である必要があると思います。

質問:

そのプリンターモード名を抽出する方法は? または、一意であり、ユーザーが編集できず、プリンターの識別に使用できる Win_32 のその他のプロパティである可能性があります。

また

これにはレジストリが役立つ場合があります。このモデル情報がレジストリにある場合 (ほとんどの場合)、どこにありますか?

0 投票する
1 に答える
2344 参照

java - Java を使用して、ユーザーが印刷ダイアログを使用せずにプリンタ オプションを設定できるようにするにはどうすればよいですか?

私は大学のプロジェクトとしてアプリケーションを開発しています。ほとんどの機能が正常に動作しており、(ほぼ) 完成しています。

アプリケーションは訪問者情報を記録し、訪問者ごとに訪問者バッジを印刷します。訪問者は、ユーザー フレンドリーなインターフェイスを介してシステムに情報を入力します。完了すると、訪問者バッジが自動的に印刷され、詳細がデータベースに保存されます。

これはすべてうまくいきます!! 私たちはすでに成績を上げ、最高の成績を収めました。これ以上ないほど幸せです!!

ただし、管理画面のプリンター オプションは、ラベル プリンターに対してかなり制限されています。管理画面では、データベースを検索し、通常の印刷ダイアログを使用して結果を印刷したり、データをカンマ区切りの CSV ファイルに保存したりできます。

すべて良い!しかし、ラベル プリンターはプログラムのフロント エンドからのみ動作するため、印刷ダイアログが表示されないため、管理画面でプリンター オプションにアクセスできるようにし、後でラベル プリンターが動作しているときに使用できるように保存する必要があります。現時点では、訪問者バッジの印刷に使用するプリンターを選択する機能があり、管理ページからページ設定情報を設定および保存できますが、プリンター設定にアクセスする方法がわかりません印刷ダイアログを使用せずに管理者にアクセスを提供するオプション。

誰でもアドバイスをいただければ幸いです。

0 投票する
1 に答える
41 参照

c# - BaseDevModeType: 2 つの列挙の違いは何ですか?

BaseDevModeType は、次の 2 つの列挙を定義します。

  1. プリンターのデフォルト。
  2. ユーザーデフォルト。

devmode の基本構造が列挙に基づいて設定されていることを理解しています。

しかし、これら 2 つの devmodes の違いは何ですか?

それぞれの devmodes が異なる場合の例は何ですか?

0 投票する
1 に答える
661 参照

c# - ソフトウェアのインストール後にプリンタが接続されていない場合、Crystal Report の PrintToPrint メソッドがソフトウェアをハングさせますか?

私のプロジェクトメソッドでは、Crystal ReportのPrintToPrintは正常に機能しますが、ソフトウェアのインストール後、プリンターがマシンに接続されていない場合、この方法によりソフトウェアプロセスがハングします。この問題の解決を手伝ってくれる人はいますか?

0 投票する
0 に答える
1861 参照

wpf - Printing with more than 96 dpi in WPF

Let me explain the problem, I'm getting stuck in it

If I change the dpi settings from the dialog of Printing Preferences of a virtual printer like PDF Creator or any printer that allows to change this setting, and then set a breakpoint like the code below:

I can see that the properties printDialog.PrintTicket.PageResolution.X; and printDialog.PrintTicket.PageResolution.Y change correctly while printDialog.PrintTicket.PageMediaSize.Width and printDialog.PrintTicket.PageMediaSize.Height don't change despite the printer resolution change... an A4 paper in portrait mode will always have PageMediaSize.Height = 1122.5196850393702 and PageMediaSize.Width = 793.70078740157476 no matter which resolution is set before ..... for WPF the unit size of these dimensions is set to 1/96th inch but when is Ok on screen because default screen resolution is 96 dpi on the other side is wrong on the printer because it has a different resolution, in other words confuting that Height and Width of the paper are read only properties if I cannot find the way to tell WPF that the unit size of the printer is not 1/96th inch but for example 1/300th inch (if on the printer I previously set 300 dpi ) there's absolutely no way to print at higher resolution than 96dpi

A last note, in my specific case I cannot use RenderTargetBitmap and then resize all to match printer's paper height and width settings because I'm printing high definition barcode images and it would cause an image rescaling that would make the barcode unreadable on final paper because i create it with the purpose to be printed with a resolution of 300dpi which without a resizing will result out of bounds because WPF is telling me the printer paper dimensions in the wrong unit size (1/96th inch) despite the real dpis prevoiusly set on printer

Hoping to have clarified enough the problem,

thanks in advance,

Dave