On Mon, 2002-12-23 at 04:15, Emil Perhinschi wrote:

> > Pune-l negzipat, poate asa trece.
nu vrea nici necomprimat ... 

imi trebuia si mie asa ceva, poate ca e util si altora ...
Am vazut la http://gallica.bnf.fr carti scanate ca imagini si puse pdf
si planuiam de mult asa ceva ... altfel ziceam si eu: "RTFM" :-)

o sa il pun si la http://www.geocities.com/emilper in cateva ore


_________________________________________________________________

#!/usr/bin/perl -w

# script pentru crearea unui document LaTeX dintr-un
# director, sau mai multe directoare cu o sigura radacina
# continand imagini in format jpeg avand numele de forma
# numar.jpg
#
# probabil util pentru transformarea cartilor scanate in
# format jpeg in documente pdf
#
# poate fi copiat, modificat, distribuit conform licentelor
# aplicabile in cazul Perl
#
# copyright 2002 Emil Perhinschi

use strict;

my %files;

my $root = $ARGV[0];

&write_latex($root);

sub write_latex 
{
    my $rootdir = shift;
    opendir(ROOT, $rootdir) or die("could not open $rootdir");
    
    my @dir_in = readdir(ROOT);
    closedir ROOT;

    foreach my $x (@dir_in)
    {
        next if $x eq ".";
        next if $x eq "..";

        my $y = $rootdir."/".$x; #ii trebuie si calea 
        if (-d $y) # daca e director
        {
            write_latex($y) if ($y ne $rootdir."." and $y ne $rootdir."..");
        }
        elsif (-f $y) # daca e fisier normal
        {
            if ($y =~ /jpg$/) # daca are extensia jpg
            {
                my $ps = $y;
                $ps =~ s/jpg$/ps/;
                #convertirea din jpeg in postscript
                `jpegtopnm $y | pnmtops >$ps `; 
                my $eps = $x;
                $eps =~ s/jpg$/eps/;
                # convertirea din ps in embeded postscript
                # parca era si un pachet LaTeX pentru alte formate,
                # dar nu l-am mai gasit acum

                `ps2epsi $ps $eps`;

                my $key = $x;
                # ca sa le poata sorta numeric scoatem '.jpg'
                # de la coada
                $key =~ s/\.jpg$//;

                # un hash cu numarul paginii drept cheie si 
                # numele fisierului eps ca valoare

                $files{$key} = $eps; 
                # proba
                print "$key is $files{$key} \n";
            }
        # daca nu are numele terminat in "jpg" nu se intampla nimic
        # banuiesc ca se poate verifica si altfel ...
        }
        else # aici nu ar trebui sa ajunga niciodata
        {
            print "done\n\n";
        }
    }
    
}

# compunem documentul LaTeX
# se pot am pus "report" ca sa bage pagini noi inaintea 
#       fiecarui capitol

my $doc = '
\documentclass{report}
\usepackage{epsfig}  
\begin{document}
';

# sorteaza dupa numarul paginii, si adauga cate o imagine
# pe fiecare pagina

foreach my $x (sort {$a <=> $b} keys %files)
{
    $doc .= '\newpage'."\n";
    $doc .= '\epsfig{file='.$files{$x}.'}'."\n";
}

$doc .= '\end{document}';


open (DOC, ">/tmp/test.tex");
print DOC $doc;
close DOC;

EOF
_________________________________________________________________________

---
Pentru dezabonare, trimiteti mail la 
[EMAIL PROTECTED] cu subiectul 'unsubscribe rlug'.
REGULI, arhive si alte informatii: http://www.lug.ro/mlist/


Raspunde prin e-mail lui