Bild überlagern

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Bild überlagern

    Hallo,

    ich möchte unter gewissen Umständen ein Bild mit einer Grafik überlagern. Dabei ist es egal ob die Grafik vorhanden ist oder ob der algo die selbst erstellt. Daran scheiterts nicht.
    Es scheitert bei mir vielmehr daran, dass die Bilder nicht alle gleich groß sind.

    Wie im Beispielbild sichtbar, soll die untere rechte Ecke überlagert werden. Bei jedem Bild, egal welche Größe...

    Hat jemand einen Vorschlag?
    Danke im Voraus
    Bilder
    • Lyon-009_verkauft.jpg

      31,64 kB, 614×461, 1.147 mal angesehen
  • Naja,
    du hast schon recht, ich will dafür die GDLib nutzen.
    Die Sache ist wiefolgt: das ganze ist eine Galerie in der der Administrator den "Status" des Bildes verändern kann.
    Entsprechend des Status sollen dann sie Bilder rübergelegt werden. Nun haben die Bilder aber meistens andere Größen, a ich sie prozentual vom thumbnail abhängig speichern lasse.

    Am besten wäre also ein Algo mit der GDLib, der den Schriftzug auch prozentual an die Bildgröße anpasst.

    Naja ich werd mal rumprobieren. Dachte nur jemand hätte sowas schon gemacht und kann mir schnelle Tipps geben.

    Danke soweit, falls ich ne Lösung finde, stell ich sie hier rein...

    cya
  • OK, das ging schnell und die Lösung war denkbar einfach.

    Habe ein Tutorial zu Wasserzeichen gefunden.

    hier mal meine leicht veränderte Lösung:

    Quellcode

    1. <?php
    2. header('Content-type: image/jpeg');
    3. $file = 'lyon.jpg';
    4. // Originalformat auslesen
    5. $size = getimagesize($file);
    6. $width = $size[0];
    7. $height = $size[1];
    8. // Bild laden
    9. $old_picture = imagecreatefromjpeg($file);
    10. // Neues Bild erzeugen
    11. $new_picture = imagecreatetruecolor($width, $height);
    12. // Kopiert das Ursprungsbild und formatiert es um + Weichzeichnung.
    13. imagecopyresampled($new_picture, $old_picture, 0, 0, 0, 0, $width, $height, $width, $height);
    14. // Wasserzeichen einbinden
    15. $transition = 100;
    16. $watermarkfile = imagecreatefrompng('verkauft.png');
    17. $waternarkpic_width = imagesx($watermarkfile);
    18. $waternarkpic_height = imagesy($watermarkfile);
    19. $watermarkdest_x = $width - $waternarkpic_width;
    20. $watermarkdest_y = $height - $waternarkpic_height;
    21. imagecopymerge($new_picture, $watermarkfile, $watermarkdest_x, $watermarkdest_y, 0, 0, $waternarkpic_width, $waternarkpic_height, $transition);
    22. // Bild ausgeben
    23. imagejpeg($new_picture);
    24. ?>
    Alles anzeigen


    werde ich wohl noch in ne Funktion basteln, oder mal sehen...

    bis denne