2017-03-27 12 views
1

Win7プリントドライバからテキストを抽出することはできますが、Win8ではPostScriptファイルを生成できません。Win8プリントドライバからPostScriptファイルを生成するにはどうすればよいですか?

たとえば、Windowsの「メモ帳」にテキストを作成し、メモ帳にHP PostScriptプリントドライバを使用して印刷するように指示し、プリントドライバにファイルに出力するよう指示すると、テキストを抽出するファイルが取得されますから。

私は、Ghostscriptのps2asciipstopdf | pdftotextなどをUbuntuプラットフォームで試してみましたが、これらはWin7の出力で動作しますが、Win8の出力では動作しません。

オープンソースのソリューションはありますか?

答えて

1

PostScriptプログラムからテキストを取得することは保証できません。そのために設計されたものではありません。

しかし、Ghostscriptのtxtwriteデバイスは、Windows PostScriptプリンタドライバからの出力に対して適切なジョブを実行します。 ps2asciiよりもはるかに優れています(他のものの中でも)Unicodeを扱うことができるため、ASCIIに限定されていません。

アプリケーションがPostScriptを生成する可能性があるので、出力がWindows PostScriptプリンタドライバのと表示されても、アプリケーションによって実際の内容が生成されることがあります。

また、アプリケーションが実際にデバイスコンテキストにテキストを書き込む場合は、Windows PostScriptプリンタドライバからテキストを取り出せます。たとえば、EdgeブラウザからPDFを印刷すると、出力にテキストが表示されます。同じシステム上で同じPDFをChromeから印刷すると、テキストはテキストではなくベクトル(線、円弧、線の塗りつぶしなど)としてレンダリングされます。

あなたがしようとしていることは、一般的なケースで100%成功することはないことにご注意ください。

+0

Windows 8版を使用して、Windows 8プラットフォームで** Windows ** **アプリケーション** **メモ帳**を使用して、** ** ** ** **使用** ** **を使用して質問していますドライバーはポストスクリプトファイルを生成します。私はそれをWindows 7で動作させることはできますが、Windows 8や10では動作させることはできません。 – Randy

+1

まあ、サンプルファイルを投稿していないし、これをあなたのユースケースと明示的には言いませんでした。だから、私は一般的な言葉で私の返答をした。私が上で述べたように、Ghostscriptのtxtwriteデバイスはこれでまともな仕事をすることができるはずです。すでにテキストファイルがあるので、PostScriptファイルを作成してテキストをもう一度取り出すという点は実際にはわかりません。 – KenS

+1

また、MSと一部のプリンタベンダは、Windows 8+の一部のデバイス用にWindowsプリントドライバを変更しました。これは、プリントパイプラインが大幅に変更された場合(XPSを使用する場合)です。 Microsoft XPSライターに印刷してから、GhostsXPSとtxtwriteデバイスを使ってテキストを抽出する方が良いでしょう(最新のGhostXPSリリースを使用する必要があります)。上で暗示したように、人々がこれを見てもらいたい場合は、PostScriptのサンプルファイルを投稿してください。誰もがWindows 8以上にアクセスすることはできません。 – KenS