ルビーの初心者として、私はあなたが助けになるかもしれないちょっとしたゴーストハントをしてきました
私はよく読んで、これらの卑劣な仲間を捕まえる最良の方法はスクリプトを使用することだと言われました:ゴーストスクリプト。
仮想プリンターで実行する Ghostscript コマンドを実行しようとしていますが、ルビー (靴) ファイルのコンテキストで:
私のコマンドは次のとおりです。
C:\Programas\gs\gs9.05\bin\gswin64c.exe -IC:\Programas\gs\gs9.05\lib;C:\Programas\gs\fonts -sDEVICE=pdfwrite -r300 -dNOPAUSE -dSAFER -sPAPERSIZE=a4 -sOutputFile=c:\tempRep\temp.pdf -
このコマンドをバッチ ファイル内に配置し、このバッチをプログラムとして設定して仮想プリンターのポート リダイレクトを呼び出すと、問題なく temp.pdf ファイルが書き込まれます。このソリューションの問題は、実際には次の 2 つです。
- あまり乾燥していない
- exeファイルが実行されない
私のファイルcreate.bat
C:\Programas\gs\gs9.05\bin\gswin64c.exe -IC:\Programas\gs\gs9.05\lib;C:\Programas\gs\fonts -sDEVICE=pdfwrite -r300 -dNOPAUSE -dSAFER -sPAPERSIZE=a4 -sOutputFile=c:\tempRep\temp.pdf -
c:\tempRep\myapp.exe
したがって、DRY ではなく、コウモリが役に立たないようであれば、ここで幽霊を探しても意味がありません。私たちは皆、幽霊を捕まえるにはDRYでなければならないことを知っています!
だから私はRghostに向かった:幽霊を明らかにすることが本当の意味です.
私がそれを呼び出すコンテキスト:
私の靴のアプリのソース:
Shoes.setup do
gem 'rghost'
end
require 'RGhost'
RGhost::Config::GS[:path]= 'C:\\Programas\\gs\\gs9.05\\bin\\gswin64c.exe'
doc=Document.new
doc.render :raw => "-sDEVICE=pdfwrite -r300 -dNOPAUSE -dSAFER -sPAPERSIZE=a4 -sOutputFile=c:\tempRep\temp.pdf -"
肌寒くなってきたのにゴーストファイルが出てこない…
これを捕まえる方法についてのアイデアはありますか?
私も次のようなものを使用することを検討しています
system("C:\Programas\gs\gs9.05\bin\gswin64c.exe -IC:\Programas\gs\gs9.05\lib;C:\Programas\gs\fonts -sDEVICE=pdfwrite -r300 -dNOPAUSE -dSAFER -sPAPERSIZE=a4 -sOutputFile=c:\tempRep\temp.pdf -")
しかし、それはうまくいかないようです:S ...何が間違っているのでしょうか?