Supportnet / Forum / PC-Sonstiges
Text in Bilder einfügen?
Frage
Hallo,
ich suche eines Software, mit der ich in (jpg) Bilddateien einen Text einfügen kann. Da es sich um sehr viele Bilder handelt, scheidet eine normale Bildbearbeitung aus.
Die Bilder haben i.d.R. alle die gleiche Größe und man sollte einen Text in einer bestimmten Größe, Schriftart und Farbe vorgeben können, der dann automatisch (z.B. in der rechten unteren Ecke) eingefügt wird.
Gibt es so eine Software?
Danke!
Jürgen
Antwort 1 von Nessus
Hi,
wg. der Software kann ich Dir leider ad hock nicht weiterhelfen, wenn die Bilder allerdings ins Internet sollen, kannst Du dies mit der GD-Bibliothek und einem Script dyn. bei Aufruf des Bildes vornehmen. D.h. Du definierst nur einmal die Parameter und kannst zig Bilder uploaden, den Rest macht das Script.
Nessus
wg. der Software kann ich Dir leider ad hock nicht weiterhelfen, wenn die Bilder allerdings ins Internet sollen, kannst Du dies mit der GD-Bibliothek und einem Script dyn. bei Aufruf des Bildes vornehmen. D.h. Du definierst nur einmal die Parameter und kannst zig Bilder uploaden, den Rest macht das Script.
Nessus
Antwort 2 von sjuergen
Hi Nessus,
ich hatte das Programm für zwei verschiedene Zwecke gedacht.
Zum einen, um Bilder auf meiner Homepage zu veröffentlichen und auf den Bildern die URL zu vermerken,
zum anderen, um bei Bildern, die mit der Digitalkamera geschossen wurden, das Datum (nachträglich) einzublenden.
Jürgen
ich hatte das Programm für zwei verschiedene Zwecke gedacht.
Zum einen, um Bilder auf meiner Homepage zu veröffentlichen und auf den Bildern die URL zu vermerken,
zum anderen, um bei Bildern, die mit der Digitalkamera geschossen wurden, das Datum (nachträglich) einzublenden.
Jürgen
Antwort 3 von gresti
Hallo Jürgen,
schau dir doch mal das Programm Bildschutz an.
Gruß
gresti
Signatur und Textformatierungen wurden mit SNTool V1.1.1 erstellt
schau dir doch mal das Programm Bildschutz an.
Gruß
gresti
Signatur und Textformatierungen wurden mit SNTool V1.1.1 erstellt
Antwort 4 von Nessus
Hi,
für dein erstes Problem findest Du hier eine Lösung:
Und hier die Datei insert_text_to_image.class.php
Jetzt mußt Du nur die Dateien des Verzeichnisses auslesen und mit mit einer Schleife im ersten Script einlesen, das war es......
Natürlich muß das dein Provider unterstützen. Der Vorteil ist, das Du die die Bilder nur Hochladen mußt der Rest geht komplett automatisch, egal ob 5 Bilder oder 500....
HTH
Nessus
für dein erstes Problem findest Du hier eine Lösung:
<?php
/////////////////////////////////////////////
//---- this class gets a jpeg file and places a string in desired place of
//---- that image. font and color of this text can be determind as input parameters.
/////////////////////////////////////////////
include("insert_text_to_image.class.php");
$imagename="test.jpg";// place a jpeg file in classes directory and enter its name here.
$string="ZAALION";
$colorr=250;
$colorg=10;
$colorb=250;
$x_pos=100;
$y_pos=150;
$font=4;// for font enter a number between 1 to 5.
//---- insert_text_to_image(image file addess ans name, the text which must be placed in image, x of text place
//---- , y of text place, text color (r), text color (g), text color (b), text font "a numbe between 1 to 5" )
$ins=new insert_text_to_image($imagename, $string, $x_pos, $y_pos, $colorr, $colorg, $colorb, $font);
$ins->insert();
?>
Und hier die Datei insert_text_to_image.class.php
<?php
/////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////
//--- Reza Salehi
//--- zaalion@yahoo.com
//--- free for non-commercial use.
/////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////
class insert_text_to_image
{
function insert_text_to_image($imageSource, $text, $x_position, $y_position, $colorR, $colorG, $colorB, $font)
{
$this->source=$imageSource;
$this->text=$text;
$this->x_position=$x_position;
$this->y_position=$y_position;
$this->colorR=$colorR;
$this->colorG=$colorG;
$this->colorB=$colorB;
$this->x=0;
$this->y=0;
$this->font=$font;
}
function insert()
{
header ("Content-type: image/jpeg");
$image=imagecreatefromjpeg($this->source);
$this->x=imagesx($image);
$this->y=imagesy($image);
$colx = imagecolorallocate ($image,(int)$this->colorR,(int)$this->colorG,(int)$this->colorB);
$col = imagecolorallocate ($image,(int)$this->colorR,(int)$this->colorG,(int)$this->colorB);
if(!$image)
die("this image does not exist ! try a currect filename as a jpeg file .");
if($this->x_position<0 || $this->x_position>$this->x || $this->y_position<0 || $this->y_position>$this->y)
die("the x_position or y_position values are not currect. they must be smaller than image dimentions . ");
imagestring ($image,$this->font,$this->x_position,$this->y_position,$this->text,$col);
imagejpeg ($image, "", 100);
}
}
?>
Jetzt mußt Du nur die Dateien des Verzeichnisses auslesen und mit mit einer Schleife im ersten Script einlesen, das war es......
Natürlich muß das dein Provider unterstützen. Der Vorteil ist, das Du die die Bilder nur Hochladen mußt der Rest geht komplett automatisch, egal ob 5 Bilder oder 500....
HTH
Nessus
Antwort 5 von sjuergen
Danke für die Tips!
Ich werde vorerst mal das 'Bildschutz'-Prgramm verwenden.
Jürgen
Ich werde vorerst mal das 'Bildschutz'-Prgramm verwenden.
Jürgen
Antwort 6 von Nessus
Dachte ich mir ;-))
Trotzdem gerne geschehen....
Nessus
Trotzdem gerne geschehen....
Nessus

