Changeset 8

Show
Ignore:
Timestamp:
05/05/08 01:11:25 (8 months ago)
Author:
jms
Message:

[popip] Nouvelle option : -s [a4|a3|...] pour fixer la taille de la feuille utilisée par ghostscript.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/popip/popip

    r6 r8  
    99use File::Basename; 
    1010### --- Commandes GhostScript ----------------------------------------------- 
    11 my $GSBBOX     = "gs -sDEVICE=bbox -dBATCH -dNOPAUSE -c save pop -f "; 
     11my $GSBBOX     = ""; 
    1212my $GSPIPE      = " 2>&1 1>/dev/null |"; 
    1313my $GSPSPDF     = "gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -dNOSAFER "; 
    1414my $GSPNMRAW    = "gs -sDEVICE=pnmraw -dBATCH -dNOPAUSE -dMaxBitmap=500000000 "; 
    15    $GSPNMRAW   .= "-dAlignToPixels=0"; 
     15   $GSPNMRAW   .= "-dAlignToPixels=0 -sPAPERSIZE=a3"; 
    1616my $GSPNM       = ""; 
    1717my $GSPNMP      = " 2>&1 1>/dev/null"; 
     
    2121my $GSPNMTAB    = 4   ; # TextAlphaBits 
    2222my $GSPNMGAB    = 4   ; # GraphicsAlphaBits 
     23my $GSPAPERSIZE = ""  ; # PAPERSIZE 
    2324sub SetGSPNMCMD { 
    2425    $GSPNM      = "$GSPNMRAW -dGraphicsAlphaBits=$GSPNMGAB -dTextAlphaBits=$GSPNMTAB"; 
    25     $GSPNM     .= " -r$GSPNMRES"; 
     26    $GSPNM     .= " -r$GSPNMRES $GSPAPERSIZE " ; 
     27
     28sub SetGSBBOX { 
     29    $GSBBOX     = "gs -sDEVICE=bbox -dBATCH -dNOPAUSE $GSPAPERSIZE -c save pop -f "; 
    2630} 
    2731SetGSPNMCMD(); 
     32SetGSBBOX(); 
    2833sub SetGSPNMRES { 
    2934    $GSPNMRES = shift; 
     
    3742    $GSPNMGAB = shift; 
    3843    SetGSPNMCMD(); 
     44} 
     45sub SetGSPAPERSIZE { 
     46    $GSPAPERSIZE = shift; 
     47    SetGSPNMCMD(); 
     48    SetGSBBOX(); 
    3949} 
    4050### --- Constructeur générique ---------------------------------------------- 
     
    390400### --- Paramètres de la ligne de commande ----------------------------------- 
    391401use Getopt::Std; 
    392 getopts("Bb:f:g:i:lp:o:r:Tt:x:"); 
     402getopts("Bb:f:g:i:lp:o:r:s:Tt:x:"); 
    393403my $fichier = shift; 
    394404 
     
    427437GS::SetGSPNMGAB($text_ab); 
    428438 
     439if ($opt_s) { 
     440    GS::SetGSPAPERSIZE(" -sPAPERSIZE=$opt_s "); 
     441} 
    429442### -------------------------------------------------------------------------- 
    430443my $f = GS->new($fichier,$preout);