Thema: Bildupload
Einzelnen Beitrag anzeigen
Alt 10.08.2005, 21:53   #8 (permalink)
kerri
Die Kerrimaus
 
Benutzerbild von kerri
 

Registriert seit: 17.11.2003
Beiträge: 2.987

kerri kann auf vieles stolz seinkerri kann auf vieles stolz seinkerri kann auf vieles stolz seinkerri kann auf vieles stolz seinkerri kann auf vieles stolz seinkerri kann auf vieles stolz seinkerri kann auf vieles stolz seinkerri kann auf vieles stolz seinkerri kann auf vieles stolz sein

Standard AW: Bildupload

Hier:

PHP-Code:
#!/usr/bin/perl -w

################# global variables
my $directory = "~/";
my $filetype  = "jpg";
my $size      = "128x128";
my $quality   = "100";

################# initialization
sub init()
{
    use 
Getopt::Std;
    
my $opt_string = 'hd:t:s:q:';
    
getopts( "$opt_string", \%opt ) or usage();

    if(
$opt{d}) {$directory = $opt{d};} else { usage(); }
    if(
$opt{t}) {$filetype = $opt{t};}
    if(
$opt{s}) {$size = $opt{s};} else { usage(); }
    if(
$opt{q}) {$quality = $opt{q};}

    
usage() if $opt{h};
}

################### prints helptext
sub usage()
{
    print 
STDERR <<"END_OF_TEXT" ;

  
This program resizes files using ImageMagick. 
  
The aspect ratio of the images is NOT changed.

  
usage: $0 [-d directory] [-t filetype] [-s size] [-q quality]

      -
h              : this message ([H]elp)
      -
d directory    : directory containing the files to resize
      
-t filetype     : filetype, default: jpg
      
-s size         : new size, example: 100x100
      
-q quality      : quality in % in case of jpg-files

  example
: $0 -d ~/my_pictures/ -t jpg -s 100x100 -q 75

END_OF_TEXT

    
exit;
} 

######################## resizes Images
sub resize()
{
    
chdir $directory or die "could not change to $directory: $!\n";

    
system ("mkdir -p resized_images");

    print 
"mkdir -p resized_images\n";

    @
files = <*.$filetype>;

    foreach 
$file (@files)
    {
    
system("convert $directory/$file -resize $size  -quality $quality $directory/resized_images/$file ");
    print(
"convert $directory/$file -resize $size   -quality $quality $directory/resized_images/$file \n");
    }
}

init();
resize(); 
Ist perl, nicht php wies dransteht. Tut vermutlich zumindest einen Teil dessen, was Du willst, naemlich die Bilder verkleinern, und auf Wunsch auch die Qualitaet runterschrauben. Ist hoffentlich halbwegs selbsterklaerend Du brauchst perl, ImageMagick und vermutlich Linux. Da Du Dich nicht speziell zum Betriebssystem geaeussert hast, nehme ich an, Du kannst auch so was damit anfangen

Vielleicht kann man die Zusgabe des Skripts irgendwie an einen ftp-clienten weiterleiten zwecks Upload.

Gruesse, kerri
kerri ist offline   Mit Zitat antworten