Jeff Kowalczyk wrote:
> I needed to use pst-barcode in Latex templates with branches/1.2.
> 
> Per pstricks documentation, pdflatex alone will not work. The latex,
> dvips, pstopdf workflow is required.
> 
> Fortunately, this leads to a small de-duplication of code, see[1].
> 
> However, the texlive-packaged pstopdf apparently lacks a quiet output
> mode, causing error[2]. Appending " > /dev/null" wasn't working for me,
> that probably redirected the output pdf.
> 
> I worked around it by using the ghostscript-packaged ps2pdf utility, which
> works fine with the single argument and doesn't create a dependency
> problem for me personally, but it could be avoided.
> 
> If anyone has an idea to silence or ignore pstopdf output in the system()
> call, perhaps this would be good commit to branches/1.2 and trunk,
> facilitating use of additional advanced-graphics CTAN packages.

How about using -o and -l?  -o output filename (otherwise it is munged 
from the input filename) and -l specifies that any messages generated
during file conversion be written to a log file (/dev/null).

Untested.  Just a theory.


Rod
-- 
> 
> Let me know if I should commit a variation of [1].
> 
> [1] LedgerSMB/Form.pm |   37 ++++++++++++++-----------------------
>     1 files changed, 14 insertions(+), 23 deletions(-)
> 
>   diff --git a/LedgerSMB/Form.pm b/LedgerSMB/Form.pm
>   index 85aec60..192ea06 100755
>   --- a/LedgerSMB/Form.pm
>   +++ b/LedgerSMB/Form.pm
>   @@ -971,40 +971,31 @@ sub parse_template {
>            $self->{errfile} =~ s/tex$/err/;
>    
>            my $r = 1;
>   -        if ( $self->{format} eq 'postscript' ) {
>    
>   -            system(
>   +        system(
>    "latex --interaction=nonstopmode $self->{tmpfile} > $self->{errfile}"
>                );
>    
>   -            while ( $self->rerun_latex ) {
>   -                system(
>   +        while ( $self->rerun_latex ) {
>   +            system(
>    "latex --interaction=nonstopmode $self->{tmpfile} > $self->{errfile}"
>                    );
>   -                last if ++$r > 4;
>   -            }
>   +            last if ++$r > 4;
>   +        }
>    
>   -            $self->{tmpfile} =~ s/tex$/dvi/;
>   -            $self->error( $self->cleanup ) if !( -f $self->{tmpfile} );
>   +        $self->{tmpfile} =~ s/tex$/dvi/;
>   +        $self->error( $self->cleanup ) if !( -f $self->{tmpfile} );
>    
>   -            system("dvips $self->{tmpfile} -o -q");
>   -            $self->error( $self->cleanup . "dvips : $!" ) if ($?);
>   -            $self->{tmpfile} =~ s/dvi$/ps/;
>   -        }
>   +        system("dvips $self->{tmpfile} -o -q");
>   +        $self->error( $self->cleanup . "dvips : $!" ) if ($?);
>   +        $self->{tmpfile} =~ s/dvi$/ps/;
>    
>   +        # convert postscript to pdf
>            if ( $self->{format} eq 'pdf' ) {
>   -            system(
>   -"pdflatex --interaction=nonstopmode $self->{tmpfile} > $self->{errfile}"
>   -            );
>   -
>   -            while ( $self->rerun_latex ) {
>   -                system(
>   -"pdflatex --interaction=nonstopmode $self->{tmpfile} > $self->{errfile}"
>   -                );
>   -                last if ++$r > 4;
>   -            }
>    
>   -            $self->{tmpfile} =~ s/tex$/pdf/;
>   +            system("ps2pdf $self->{tmpfile}");
>   +            $self->error( $self->cleanup . "ps2pdf :$!" ) if ($?);
>   +            $self->{tmpfile} =~ s/ps$/pdf/;
>                $self->error( $self->cleanup ) if !( -f $self->{tmpfile} );
>            }
>        }
> 
> 
> 
> [2] malformed header from script.
>     Bad header=PsToPdf | converting ps (ps) i: is.pl
> 
> 
> 
> 
> ------------------------------------------------------------------------------
> This SF.net email is sponsored by:
> SourcForge Community
> SourceForge wants to tell your story.
> http://p.sf.net/sfu/sf-spreadtheword
> _______________________________________________
> Ledger-smb-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/ledger-smb-devel


------------------------------------------------------------------------------
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
_______________________________________________
Ledger-smb-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ledger-smb-devel

Reply via email to