Tak przezroczysty, że nie mogę go złapać… Używanie Rghosta do emulacji polecenia ghostscript, tak jak na drukarce wirtualnej

jako Rubin Newb byłam na małym polowaniu na duchy, które może ci pomóc

Czytałem dużo i powiedziano mi, że najlepszym sposobem uzyskania tych podstępnych kolegów jest użycie skryptu: ghostscript.

Próbuję wykonać polecenie ghostscript, które uruchamiam na drukarce wirtualnej, ale w kontekście pliku ruby ​​(buty):

Moje polecenie to:

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 -

Jeśli po prostu umieściłem to polecenie w pliku wsadowym i ustawię tę partię jako program do wywoływania w celu przekierowania portu na drukarkę wirtualną, wszystko pójdzie dobrze, pisząc plik temp.pdf. Problem z tym rozwiązaniem to w rzeczywistości dwa:

Niezbyt suchaplik exe nie zostanie wykonany

mój plik filecreate.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

Więc jeśli to nie jest DRY, a nietoperze nie pomagają, nie ma sensu szukać tutaj duchów. Wszyscy wiemy, że złapanie ducha musi być OSUSZONE!

Udałem się więc w kierunku Rghost: Odkrycie duchów to prawdziwe znaczenie.

Kontekst, w którym to nazywam:

Źródło aplikacji Moje buty:

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 -"

Zaczynam czuć się chłodno, ale nie pojawia się plik z duchami ...

Masz jakieś pomysły na złapanie tego?

Rozważam również użycie czegoś takiego

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 -")

ale to po prostu nie działa: S ... Co mogę zrobić źle?

questionAnswers(0)

yourAnswerToTheQuestion