SVG zu PNG konvertieren in PHP

4 Antworten

  1. Raketenforscher sagt:

    Welches Programm verwendest Du für die Avatarerstellung?

  2. MM sagt:

    Um bei höheren Auflösungen bessere Ergebnisse zu erhalten, sollte man zuerst die Auflösung setzen und dann erst konvertieren. Dazu die Reihenfolge beiden folgenden Befehle ändern:
    $im->setImageFormat(„png24“);
    $im->resizeImage(900, 900, imagick::FILTER_LANCZOS, 0.1);

  3. MM sagt:

    For an alternative solution, that correctly deals with size and resultion:
    $svg = “.$svg;
    $im = new Imagick();
    $im->readImage(„/path/to/image.svg“); // OR $im->readImageBlob($svg);
    $res = $im->getImageResolution();
    $x_ratio = $res[‚x‘] / $im->getImageWidth();
    $y_ratio = $res[‚y‘] / $im->getImageHeight();
    $im->removeImage();
    $im->setResolution($width_in_pixels * $x_ratio * 2.54, $height_in_pixels * $y_ratio * 2.54);
    $im->readImage(„/path/to/image.svg“); // OR $im->readImageBlob($svg);
    // Now you can do anything with the image, such as convert to a raster image and output it to the browser:
    $im->setImageFormat(„png“);
    header(„Content-Type: image/png“);
    echo $im;

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert