Hallo TwingO,
ich wollte mal Fragen ob mir hier jemand sagen kann wie man
diese Zähler programmiert noch xxx Tage bis Weihnachten,
welche man dann als Signatur in die E-Mail einbauen kann - ich
meine so was wie hier
http://www.webstyleboard.de/ticker/wm2006.png
OK, wie man die Datumsdifferenz berechnet,
hat Dir Rainer schon gesagt. Wie man sowas
tatsächlich praktisch macht, habe ich gerade
ausprobiert.
Dazu nimmt man:
- eine Ausgangsgrafik (Template)
- eine Web-taugliche Grafikbibliothek (GD)
- eine Web-taugliche Datumsbibliothek
Dann liest man das Bild (in einem Skript)
ein, bemalt es und gibt es wieder raus.
Ich habe gerade sowas mal probiert
(in Perl, ist aber ‚straightforward‘ so
in PHP).
Das zieht „Dein“ Bild (/ticker/wm2006.png)
vom entfernten Server, streicht den
mittleren Satz (Bis zur WM …) durch,
ersetzt ihn durch „Fußball ist Quark“
und schreibt unten rechts eine Zeile
mit „Bis Weihnachten sind es noch …“.
Aufzurufen mit

[ - - 8#!/usr/bin/perl
use LWP::Simple;
use Date::Manip;
use GD;
use strict;
my $what = „http://www.webstyleboard.de/ticker/wm2006.png“;
my $neutxt = „Fußball ist doch Quark!“;
my $zeitwn = bis_weihnachten();
hole image und verschoenere es
my $data = get( $what ) or die „Couldn’t get it!“;
my $image = GD::Image->newFromPngData($data);
modify_image();
#schreibe das geaenderte Image raus
binmode STDOUT;
print „content-type: img/png\n\n“;
print $image->png;
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
sub bis_weihnachten
{
my $err;
my $date1 = ParseDate(„today“);
my $date2 = ParseDate(„2006-12-24“);
my @d_ds = split (/:/, DateCalc($date1, $date2, $err));
my @d_id =(‚0‘,‚0‘,‚WK‘,‚DD‘,‚HH‘,‚MM‘,‚SS‘);
my %h;
@h{ @d_id } = @d_ds;
return „Noch $h{WK} Wochen, $h{DD} Tage und $h{HH} Stunden bis Weihnachten“;
}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
sub modify_image
{
my $blue = $image->colorAllocate(0, 0, 127);
my $rosa = $image->colorAllocate(255, 30, 30);
my $white = $image->colorAllocate(255, 255, 255);
unten rechts --> bis Weihnachten noch … (weiss auf blau)
$image->filledRectangle (200, 49, 465, 57, $blue);
$image->string (gdTinyFont, 204, 49, $zeitwn, $white);
mitte --> „Fussball ist quark“ auf rosa balken
$image->filledRectangle (15, 28, 460, 48, $rosa);
$image->string (gdGiantFont, 131, 31, $neutxt, $blue);
$image->string (gdGiantFont, 130, 30, $neutxt, $white);
}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #Viele Grüße
CMБ