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/
