Perl,GhostScript& STDIN,STDOUT

时间:2012-02-27 09:57:38

标签: perl stdout stdin ghostscript

如何使用变量中的文件提供ghostscript并将结果发送回变量而无需写入HDD中间变体。

也许幽灵会被这条线召唤:

gs -q -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=%stdout -

1 个答案:

答案 0 :(得分:0)

use GSAPI qw();
use IO::CaptureOutput qw(capture);

my $pdf;
capture {
    my $handle = GSAPI::new_instance;
    GSAPI::init_with_args($handle, 'TITAN', qw(-dBATCH -dNOPAUSE -dQUIET -dSAFER -sDEVICE=pdfwrite -sOutputFile=-));
    GSAPI::run_string($handle, 'newpath 100 200 moveto 200 250 lineto 100 300 lineto closepath gsave 0.5 setgray fill grestore 4 setlinewidth 0.75 setgray stroke showpage');
    GSAPI::exit($handle);
} \$pdf;