C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[7]: .NetからのPDFファイルのダイレクト印刷


(過去ログ 121 を表示中)

[トピック内 10 記事 (1 - 10 表示)]  << 0 >>

■72697 / inTopicNo.1)  .NetからのPDFファイルのダイレクト印刷
  
□投稿者/ yuuki (1回)-(2014/07/07(Mon) 13:58:07)

分類:[.NET 全般] 

いつもお世話になっております。yuukiと申します。

タイトルの件について、アドバイスいただけたら助かります。
VB.NetよりPDFファイルをダイレクト印刷(プリントダイアログなし)で印刷を行いたいです。
現在はAdobeReaderのコマンドラインオプションによる指定プリンタへのダイレクト印刷を検討しているのですが
下記の懸念事項により、他の手法がないかを検討しているところです。
 参考にしたページ)http://jehupc.exblog.jp/8568978/
[1]Adobe社がAdobeReaderのコマンドラインオプションを保障していない
 http://helpx.adobe.com/jp/acrobat/kb/510705.html
[2]外部ツールのためプロセスが別になってしまい、かつ、AdobeReaderが印刷後に自動的に終了しない。
 印刷が終了するとAdobeReaderのプロセスが終了してくれると助かりますが、実際はプロセスが残ったままになります
[3]印刷終了後にAdobeReaderのプロセスを殺すため、印刷キューの状態を監視しなければならない

有償、無償を問わず、.NetからのPDFファイルのダイレクト印刷できる機能やツールや技術があればアドバイスいただけないでしょうか。(できれば無償がよいですが・・)


■求める機能
VisualStudio.NETのプログラムよりPDFファイルが印刷できる開発ツールまたはミドルウェアまたは技術
[1]PDFファイル、および出力するプリンタをプログラムで指定し、ダイレクト印刷ができる
[2]出力するプリンタに対して、詳細な出力設定が(給紙方法など)できれば助かります
[3]外部ツール(AdobeReaderなど)なしで印刷できると助かります
[4]印刷結果(きちんと印刷できたかなど)がわかればなお良し

■利用環境
[開発]
 VisualStudio 2012 VB.NET FrameWork4.0
[クライアント]
 Windows7 約60台


Spire.PDF for .NET が無償で印刷処理までできたのですが、なぜかMSゴシックのフォントがうまく印字できずに断念してしまいました。。
もし、その他の情報などご存知であれば、ご教授ください。。

以上、よろしくお願いします。


引用返信 編集キー/
■72698 / inTopicNo.2)  Re[1]: .NetからのPDFファイルのダイレクト印刷
□投稿者/ PANG2 (36回)-(2014/07/07(Mon) 14:55:31)
条件を満たすかは分かりませんが、

DDE通信
AcroPDFコントロール
WebBrowserコントロール

http://www.knowledge-base.jp/pdf/page/2/
引用返信 編集キー/
■72699 / inTopicNo.3)  Re[2]: .NetからのPDFファイルのダイレクト印刷
□投稿者/ yuuki (2回)-(2014/07/07(Mon) 18:08:00)
to PANG2 様

早々のご返答ありがとうございます。
> DDE通信
上記は一度考えた手法なのですが、結局はAdobeReaderを外部ツールとして操作してるだけなので却下となりました。。

> AcroPDFコントロール
一度ちらっとみたことはあったのですが、印刷時に強制メッセージの仕様がすごい微妙な感じですね。。

> WebBrowserコントロール
こちらも一度考えた手法なんですが、発想は面白いなとおもったのですが、結局はAdobeReader経由なんですよね。
ですが、プロセスの心配はしなくてもよさそうですね。。

貴重な情報、大変ありがとうございます。
他にも情報がありましたら、是非教えていただきたく思います。

現在、Spire.Pdfに再トライしているところです。。
FONTがだめなら、「画像として印刷」をプログラムで制御できないものかと。。

引き続き、よろしくお願いいたします。。


引用返信 編集キー/
■72701 / inTopicNo.4)  Re[1]: .NetからのPDFファイルのダイレクト印刷
□投稿者/ 魔界の仮面弁士 (41回)-(2014/07/07(Mon) 18:35:58)
No72697 (yuuki さん) に返信
> [1]Adobe社がAdobeReaderのコマンドラインオプションを保障していない
>  http://helpx.adobe.com/jp/acrobat/kb/510705.html

# 保障 → 保証

求める条件からは若干外れますが、"Foxit J-Reader" 無償版であれば、
コマンドラインによる印刷機能もサポートされています。
http://www.logicalsidelogs.com/use_foxit_pdf_command_line_options

なお Foxit には、アプリケーションに統合させたい開発者向けに
SDK も提供されていたはずですが、そちらの内容は未確認です。


> [2]外部ツールのためプロセスが別になってしまい、かつ、AdobeReaderが印刷後に自動的に終了しない。
>  印刷が終了するとAdobeReaderのプロセスが終了してくれると助かりますが、実際はプロセスが残ったままになります
> [3]印刷終了後にAdobeReaderのプロセスを殺すため、印刷キューの状態を監視しなければならない

Foxit J-Reader の /p オプションで試してみましたが、印刷後にプロセスが
残ってしまうような現象は確認できませんでした。


> [2]出力するプリンタに対して、詳細な出力設定が(給紙方法など)できれば助かります
この機能はありません。ただし、「通常使うプリンター」側の設定を
プログラムにて一時的に変更してやることで、ある程度は調整できそうです。


> [3]外部ツール(AdobeReaderなど)なしで印刷できると助かります
EXE ではなく、自作アプリから DLL として呼び出す形であったとしても、
それらのライブラリを実行環境に導入する必要はあると思います。


> なぜかMSゴシックのフォントがうまく印字できずに断念してしまいました。。
この点、Adobe Reader での回避策があるのか、J-Reader でも再現するのかなどは未確認です。
引用返信 編集キー/
■72707 / inTopicNo.5)  Re[3]: .NetからのPDFファイルのダイレクト印刷
□投稿者/ yuuki (3回)-(2014/07/08(Tue) 09:44:20)
to 魔界の仮面弁士様

返信、ありがとうございます。

"Foxit J-Reader" 無償版のコマンドラインによる印刷は、知りませんでした。
開発者向けSDKは、認識があったのですが。。(必要十分な機能でした)
情報ありがとうございます。
たしかに、無償でAdobeReaderと同じ動きというか、こちらのほうがよさそうですね。。
プリンタ名も指定はできるみたいですね。

貴重な情報、ありがとうございます。

また引き続き、その他の情報などありましたら教えていただきたく。
よろしくお願いします。


引用返信 編集キー/
■72717 / inTopicNo.6)  Re[4]: .NetからのPDFファイルのダイレクト印刷
□投稿者/ yuuki (4回)-(2014/07/08(Tue) 15:46:30)
余談ですが。
"Foxit J-Reader" 商用利用はNGとのことでした。
残念ですが、貴重な意見ありがとうございました。

他にもありましたら、是非情報おねがいいたします。。


引用返信 編集キー/
■72718 / inTopicNo.7)  Re[5]: .NetからのPDFファイルのダイレクト印刷
□投稿者/ 魔界の仮面弁士 (44回)-(2014/07/08(Tue) 16:07:33)
No72717 (yuuki さん) に返信
> "Foxit J-Reader" 商用利用はNGとのことでした。

同社の PhantomPDF Standard/Business や PDF SDK はどうですか?
引用返信 編集キー/
■72731 / inTopicNo.8)  Re[6]: .NetからのPDFファイルのダイレクト印刷
□投稿者/ PANG2 (37回)-(2014/07/09(Wed) 11:30:26)
↓中国サイトですが、色々なヒントがあります。
http://www.freeshow.net.cn/ja/questions/9ddef8934f97999bf58bcf6934082c4b7f3880b4dd4b1eaa772117ce1ff1dc8c/

プリンタ側がPDF印刷に対応していれば簡単ですね。

引用返信 編集キー/
■72738 / inTopicNo.9)  Re[7]: .NetからのPDFファイルのダイレクト印刷
□投稿者/ daive (25回)-(2014/07/09(Wed) 21:12:30)
>FONTがだめなら、「画像として印刷」をプログラムで制御できないものかと。。
であれば、
Ghostscript は、選択肢に入らないのかなぁ。
PDF を TIFマルチにして、という具合、
但し、カラー写真の様な画像があると、TIFマルチは不利かも、
マルチ頁画像は、TIFマルチ、jpeg2000 があるけれど、元々のPDFから比べたら大きくなりがちですが、
メモリー上で扱う事も可能。
引用返信 編集キー/
■72750 / inTopicNo.10)  Re[6]: .NetからのPDFファイルのダイレクト印刷
□投稿者/ yuuki (5回)-(2014/07/11(Fri) 10:19:40)
2014/07/11(Fri) 10:24:19 編集(投稿者)

to 魔界の仮面弁士さま

返信が遅れて申し訳ありません。
>同社の PhantomPDF Standard/Business や PDF SDK はどうですか?
上記のツールもいろいろ見させていただきました。
有償ですが、機能としては十分ですね。一つの選択肢として考えたいと思います。
情報ありがとうございます。

to PANG2さま
貴重な情報ありがとうございます。
拝見させてもらいますっ。

to daiveさま
Ghostscript、一番最初に食いついたんですけど、やはり画像印刷は品質の面で少し不安で断念してしましました。。


こちらでも色々調べた結果、下記の候補で落ち着きました。

【外部プロセス】
PDF-XChange Viewer のコマンドラインにて印刷。
⇒無料で商用利用可能
⇒アドビリーダーのようにプロセスが残ることはない
⇒独自エンジンによる印刷なのでアドビ不要
⇒プリンタ指定可能
⇒コマンドラインからAdobeJavascriptが可能(かなり出来ることの幅が広がります)

【SDK】
Spire.Pdf for .NET による印刷
⇒有償だけど、安い(笑
⇒何故かMSゴシックが印刷できない(他のフォントに変更を検討
⇒それなりにプリント命令において細かな設定が可能
⇒.NETのPrintDocumentクラスを保持しているのでトレイの選択なども可能
⇒フォント埋め込みされてないPDFを読み込むとアベンドする(目をつぶる

上記二つの筋で考えたいと思います。

PANG2様、魔界の仮面弁士様、daive様、貴重な情報ありがとうございました。
非常に助かりました。

これで、本件は解決済みとさせていただきます。
ありがとうございました。



解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -