DocSet

 view release on metacpan or  search on metacpan

bin/html2ps  view on Meta::CPAN

  s/⊇?/\\supseteq /g;
  s/⊃?/\\supset /g;
  s/∈?/\\in /g;
  s/←?/\\leftarrow /g;
  s/→?([_^])/\\mathop\\rightarrow\\limits$1 /g;
  s/→?/\\rightarrow /g;
  s/↑?/\\uparrow /g;
  s/↓?/\\downarrow /g;
  s/↔?/\\leftrightarrow /g;
  s/⇐?/\\Leftarrow /g;
  s/⇒?/\\Rightarrow /g;
  s/⇑?/\\Uparrow /g;
  s/⇓?/\\Downarrow /g;
  s/∃?/\\exists /g;
  s/&inf;?/\\infty /g;
  s/&?int;?/\\int\\limits /g;
  s/&?sum;?/\\sum\\limits /g;
  s/&?prod;?/\\prod\\limits /g;
  s/&pd;?/\\partial /g;
  s/{?/\\{/g;
  s/}?/\\}/g;
  s/<t>/\\hbox{/gi;
  s/<b>/\\bf /gi;
  s/<bt>/{\\bf\\hbox{/gi;
  s/<sub$R/_{/gi;
  s/<sup$R/\^{/gi;
  s/<box\s*size=["']?(\w+)["']?>/{\\def\\lft{$s{$1}}\\def\\rgt{$s{$1}}/gi;
  s/<box$R/{/gi;
  s/<text\s*>/\\hbox{/gi;
  s/([\(\[\|])\s*<left>/\\lft$1/gi;
  s/<right>/\\rgt /gi;
  s/<(atop|choose|over)>/\\\L$1 /gi;
  s/<of>/}\\of{/gi;
  s/<bar>/\\overline{/gi;
  s/<vec>/\\overrightarrow{/gi;
  s/<hat>/\\widehat{/gi;
  s/<tilde>/\\widetilde{/gi;
  s/<(sqrt|root|vec|dot|ddot|hat|tilde)>/\\\L$1\{/gi;
  while(/<above\s+sym\s*=\s*["']?equals["']?\s*>/i) {
    $beg=$`."\\overline{\\overline{";
    $rest=$';
    $rest=~s/<\/above>/}}/i;
    $_=$beg.$rest;
  }
  s/<above\s*>/\\overline{/gi;
  s/<above\s+sym\s*=\s*["']?(\w+)["']?\s*>/\\$a{$1}\{/gi;
  s/<below\s*>/\\underline{/gi;
  s/<below\s+sym\s*=\s*["']?(\w+)["']?\s*>/\\$b{$1}\{/gi;
  s/<\/(math|row|item|b)>//gi;
  s/<\/(box|t|sup|sub|sqrt|root|vec|bar|dot|ddot|hat|tilde|above|below|text|array)>/}/gi;
  s/<\/bt>/}}/gi;
  s/&lt;?/< /gi;
  s/&gt;?/>/gi;
  s/&(\w+);?/\\$1 /gi;
  s/<array$R/\\matrix{/gi;
  s/<row>\s*<item$R//i;
  s/<row>\s*<item$R/\\cr /gi;
  s/<item>/&/gi;
  s/<[^ ]$R//gi;
  s/\n*$//;
  $tex="\\batchmode\\magnification=$mag\\hsize=40cm\\nopagenumbers\n"
 ."\\def\\lft{\\left}\\def\\rgt{\\right}\n\\setbox0=\\hbox{\$$st$di".$_."\$}\n"
 ."\\immediate\\write0{$prog: \\the\\ht0: \\the\\dp0}\\box0\n\\end\n";
}
sub Getopts {
  local($optlist)=@_;
  local(@args,$_,$opt,$opts,$rest,$olist,$plist,$found,@popts);
  local($errs)=0;
  local($[)=0;
  @args=split( /\|/, $optlist );
  for $opt (@args) {
    if(substr($opt,-1,1) ne ':') {$olist.=$opt}
    else {$plist.=$opt}
  }
  @popts=split(/:/,$plist);
  while(@ARGV && ($_=$ARGV[0]) =~ /^-(.*)/) {
    $opt=$1;
    if($opt=~/^-/ && $optalias{$'}) {$opt=$optalias{$'}};
    if($opt =~ /^[$olist]+$/) {
      while ($char=chop $opt) {eval "\$opt_$char=1"}
      shift(@ARGV);
    }
    else {
      $found=0;
      for $opts (@popts) {
        $rest=substr($opt,length($opts));
        if(index($opt,$opts)==0) {
          $found=1;
          shift(@ARGV);
          if(length($rest)==0) {
            ++$errs unless @ARGV;
            $rest=shift(@ARGV);
          }
          eval "\$opt_$opts=\$rest";
        }
      }
      if(!$found) {
        &dbg("Unknown option: $opt\n");
        ++$errs;
        shift(@ARGV);
      }
    }
  }
  $errs==0;
}
sub openps {
  open(STDOUT,">$opt_o") || die "*** Error opening $opt_o for output\n";
}
sub getalt {
  if($imgcmd eq "img") {
    $alt="";
    $match=0;
    if($img=~/alt\s*=\s*"([^"]*)"/i) {$alt=$1; $match=1};
    if(!$match && $img=~/alt\s*=\s*([\w\.-]+)/i) {$alt=$1; $match=1};
    if(!$match) {$alt=")WB IA WB("};
    $text="$alt )WB(";
    return;
  }
  if($imgcmd eq "hr") {
    $text=$img=~/align\s*=\s*["']?(left|center|right)/i?")$algn{lc $1} ":")2 ";
    $text.=$img=~/size\s*=\s*["']?$V/i?$1:.6;



( run in 0.576 second using v1.01-cache-2.11-cpan-39bf76dae61 )