
pdfFactoryプリンタに対して印刷を行うことにより、ユーザプログラムからPDFファイルを簡単に生成することができます。
印刷を実行する前に、レジストリへ値を設定しておくことにより出力ファイル名やその他の指定を行うことが可能です。
※下記pdfFactoryと連動してプログラム(.exe .bat等)のご提供やサポートは行っておりません。
■ 表示モードの指定HKCU\Software\FinePrint Software\pdfFactory2
\FinePrinters\pdfFactory\PrinterDriverData\ShowDlg
HKCU\Software\FinePrint Software\pdfFactory2
\FinePrinters\pdfFactory\PrinterDriverData\PdfAction
| showdlg |
PdfAction |
説明 |
| 1 |
N/A |
pdfFactoryのダイアログを表示 |
| 2 |
0 |
ダイアログ非表示。メール送信、PDF表示をしない。 |
| 2 |
1 |
ダイアログ非表示。PDFを表示。 |
| 2 |
2 |
ダイアログ非表示。PDFをメール送信。 |
| 2 |
3 |
ダイアログ非表示。プログラムを実行。
※プログラム(.exe .bat .com .lnk .pif等)はフルパス指定。
pdfファイルは%1を指定。 |
すでにHDCがオープンされている場合、上記の設定は無効です。
HKCUは HKEY_CURRENT_USER のことです。上記はDWORD値です。
pdfFactoryプリンタの印刷設定で上記と同じ設定を行うことができます。
上記のレジストリキーのFinePrintersの下の "pdfFactory" は、pdfFactory
Proの場合, "pdfFactory Pro"に変わります。また、プリンター名を変更している場合も変わります。
■ 表示モード指定の強制設定
上記の表示モード設定が何らかの原因で有効にならない場合があります。この場合、下記の強制設定を使うことにより、表示モードを強制指定することができます。
例えば、ShowDlg:2 , PdfAction:1 を強制設定する場合は、
HKCU\Software\FinePrint Software\pdfFactory3
\FinePrinters\pdfFactory\ShowDlg = 2
HKCU\Software\FinePrint Software\pdfFactory3
\FinePrinters\pdfFactory\PdfAction = 1
を設定します。
メモ: 強制設定のレジストリキーは、上述の表示モードの設定のレジストリキーから"PrinterDriverData"
サブキーを除いたものです。
この強制設定を行うと、プリンターの印刷設定画面から設定解除できなくなります。(レジストリを操作することでしか解除できなくなります。)ご注意ください。
■ ファイル名の設定
HKCU\Software\FinePrint Software\pdfFactory3\OutputFile HKCU\Software\FinePrint Software\pdfFactory3\OutputFilePerm
これらのキーは出力PDFファイルのフルパスを指定するのに利用します。
この指定は表示モード設定(ShowDlg)が 2 の場合のみ有効です。
"OutputFile"は、一回だけ有効であり、PDFが生成されるとレジストリから削除されます。"OutputFile"が削除された場合、PDFファイルが生成されたことを意味します。
"OutputFilePerm" は削除されずに常に利用されます。
同じファイル名のファイルが存在する場合は上書きされます。
■ デフォルトパスの指定
HKCU\Software\FinePrint Software\pdfFactory3\JobsDir HKCU\Software\FinePrint Software\pdfFactory3\AutoSaveDir
ジョブ保存フォルダ及びヒストリ保存フォルダを指定します。
■ 複数印刷ジョブの結合
pdfFactoryダイアログを表示しない設定にした場合、デフォルトではひとつの印刷ジョブがひとつのPDFファイルになります。このため、複数の印刷ジョブをまとめてひとつのPDFファイルに結合して出力することができません。
しかし下記のCollectJobsを用いることにより、複数の印刷ジョブをまとめてひとつのPDFファイルに結合して出力することができます。
pdfFactoryの場合: HKCU\Software\FinePrint Software\pdfFactory3
\FinePrinters\pdfFactory\CollectJobs
pdfFactory Proの場合: HKCU\Software\FinePrint Software\pdfFactory3
\FinePrinters\pdfFactory Pro\CollectJobs
上記はDWORD値を設定します。
まず、OutputFilePermにて出力ファイル名を設定します。
次に上記のCollectJobsへ結合する印刷ジョブの数を指定し、印刷を開始します。
pdfFactoryは印刷ジョブを受け取ると、CollectJobsの値から1を引きます。次の印刷ジョブを実行する前に、プログラムでCollectJobsが1少なくなっていることを確認する必要があります。すべてのジョブが印刷されるとPDFが生成され、CollectJobsが0に設定されます。
他の処理を実行する場合には、最後にOutputFilePermキーを削除してください。
■ pdfFactory Pro Eメール設定
pdfFactoryダイアログにて "送信...”ボタンを押すと、pdfFactoryはデフォルトのメールクライアントにてメールメッセージを作成し、生成したPDFを添付ファイルとして添付します。
pdfFactoryのデフォルト処理は下記のようになります。
- Eメールプロファイルがひとつだけ定義されている場合、そのプロファイルを使います。
- 複数のEメールプロファイルが定義されている場合、デフォルトプロファイルを使います。デフォルトプロファイルが定義されていない場合、プロファイルの選択画面を表示します。
- 新しく作成されたメールには添付ファイルがついているだけであり、その他のフィールドは空になっています。(To, CC, BCC,
タイトル, 本文はすべて空です。)
- pdfFactoryはメールを生成するだけであり、送信はしません。送信するにはメールクライアントで送信操作を行う必要があります。
pdfFactory Proでは、メール設定ダイアログにてこの処理内容を変更することができます。(印刷設定の「設定」タブの「電子メール設定」)また、レジストリを設定することでも処理を変更できます。
HKCU\Software\FinePrint Software\pdfFactory3
\FinePrinters\pdfFactory Pro
にその設定を行います。設定する値は下記の通りです。
- EmailProfile (REG_SZ) : 使用するプロファイルの名前。EmailUseProfileが1の場合に有効。
- EmailTo (REG_SZ) :メール送信先リスト。区切り文字(通常はコンマ)で区切って複数メールアドレスを指定可能。(区切り文字はコントロールパネルの「地域と言語のオプション」で指定した文字です。)
- EmailCc (REG_SZ) :CC送信先リスト。EmailToと同様のフォーマット。
- EmailBcc (REG_SZ) :BCC送信先リスト。EmailToと同様のフォーマット。
- EmailSubject (REG_SZ) :メールタイトル(Subject)
- EmailMessage (REG_SZ) :メール本文。キャリッジリターンやタブ文字を含めてもかまいませんが、これはプログラムで行う必要があります。REGEDITの
.REG ファイルはそのような文字をサポートしないためです。
- EmailViewMessage (REG_DWORD) :0以外の値を設定すると、デフォルトのメールクライアントで送信前にメッセージを表示します。0を設定すると、メールは表示されずに送信されます。但し、実際に送信されるタイミングは、メールクライアントの設定によります。メールをすぐに送信する設定をメールクライアントで設定していない場合は、pdfFactoryが生成したメールは送信ボックスへ格納されますが、すぐには送信されません。
下記はサンプル設定です。(REGEDITの形式)
[HKEY_CURRENT_USER\Software\FinePrint Software\pdfFactory3
\FinePrinters\pdfFactory Pro]
"EmailTo"="dick@fineprint.com,jane@fineprint.com"
"EmailSubject"="here are the sales figures"
"EmailMessage"="Hi guys, here are the latest numbers."
"EmailViewMessage"=dword:00000000
*ご注意*
上記インターフェースを用いて作成されたプログラムに対してのサポートは提供しておりません。インターフェースに関するご質問には回答させていただきますが、プログラムが正しく動作しないといった場合のサポートは原則として提供しておりません。ご了承の上、お使いください。
|