Ga naar inhoud
Log in om dit te volgen  
Dylan

Imagick werkt niet ( not authorized )

Aanbevolen berichten

Hi,

Ik heb imagick aanstaan in DA:
Plaatje

En dit is mijn script:

Plaatje

En de error die ik krijg:
Codeblok:
1
Fatal error: Uncaught ImagickException: not authorized `/tmp/magick-2081946dErEzoVLyHP @ error/constitute.c/ReadImage/412 in /home/x/svg2png/generatePNGS.php:25


En na wat Google werk:
https://www.securityinet.com/php-imagickexception-error-in-cloudlinux-not-authorized/

Kan dit aangepast worden? smiley

Deel dit bericht


Link naar bericht
Delen op andere sites
Welke regel geeft precies die melding?

Ik heb het op mijn eigen shared host geprobeerd met PHP 7 en dat werkt prima.

Codeblok:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
error_reporting(E_ALL);
ini_set(display_errors, 1);

$base64 = "iVBORw0KGgoAAAANSUhEUgAAAM0AAAD
 NCAMAAAAsYgRbAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5c
 cllPAAAABJQTFRF3NSmzMewPxIG//ncJEJsldTou1jHgAAAARBJREFUeNrs2EEK
 gCAQBVDLuv+V20dENbMY831wKz4Y/VHb/5RGQ0NDQ0NDQ0NDQ0NDQ0NDQ
 0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0PzMWtyaGhoaGhoaGhoaGhoaGhoxtb0QGho
 aGhoaGhoaGhoaGhoaMbRLEvv50VTQ9OTQ5OpyZ01GpM2g0bfmDQaL7S+ofFC6x
 v3ZpxJiywakzbvd9r3RWPS9I2+MWk0+kbf0Hih9Y17U0nTHibrDDQ0NDQ0NDQ0
 NDQ0NDQ0NTXbRSL/AK72o6GhoaGhoRlL8951vwsNDQ0NDQ1NDc0WyHtDTEhD
 Q0NDQ0NTS5MdGhoaGhoaGhoaGhoaGhoaGhoaGhoaGposzSHAAErMwwQ2HwRQ
 AAAAAElFTkSuQmCC"
;

$imageBlob = base64_decode($base64);
$imagick = new Imagick();
$imagick->readImageBlob($imageBlob);

$imagick->setImageFormat(png24);
$imagick->writeImage(./lalaal.png);
$imagick->clear();


Heb je een stukje code waarmee ik het kan reproduceren?

Deel dit bericht


Link naar bericht
Delen op andere sites
Lennard (link):
Welke regel geeft precies die melding?

Ik heb het op mijn eigen shared host geprobeerd met PHP 7 en dat werkt prima.

Codeblok:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
error_reporting(E_ALL);
ini_set(display_errors, 1);

$base64 = "iVBORw0KGgoAAAANSUhEUgAAAM0AAAD
 NCAMAAAAsYgRbAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5c
 cllPAAAABJQTFRF3NSmzMewPxIG//ncJEJsldTou1jHgAAAARBJREFUeNrs2EEK
 gCAQBVDLuv+V20dENbMY831wKz4Y/VHb/5RGQ0NDQ0NDQ0NDQ0NDQ0NDQ
 0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0PzMWtyaGhoaGhoaGhoaGhoaGhoxtb0QGho
 aGhoaGhoaGhoaGhoaMbRLEvv50VTQ9OTQ5OpyZ01GpM2g0bfmDQaL7S+ofFC6x
 v3ZpxJiywakzbvd9r3RWPS9I2+MWk0+kbf0Hih9Y17U0nTHibrDDQ0NDQ0NDQ0
 NDQ0NDQ0NTXbRSL/AK72o6GhoaGhoRlL8951vwsNDQ0NDQ1NDc0WyHtDTEhD
 Q0NDQ0NTS5MdGhoaGhoaGhoaGhoaGhoaGhoaGhoaGposzSHAAErMwwQ2HwRQ
 AAAAAElFTkSuQmCC"
;

$imageBlob = base64_decode($base64);
$imagick = new Imagick();
$imagick->readImageBlob($imageBlob);

$imagick->setImageFormat(png24);
$imagick->writeImage(./lalaal.png);
$imagick->clear();


Heb je een stukje code waarmee ik het kan reproduceren?


Codeblok:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#!/usr/bin/env php
<?php
// Path to SVGs
$svgPath = ./svg/;

// Path to PNGs
$pngPath = ./png/;

// Fill colors
$fillColors = [#FFFFFF, #363636];

// ------------------------------------ //
$im = new Imagick();



foreach ( glob($svgPath . *.svg) as $svg ) {

    $svgData = file_get_contents($svg);

    foreach($fillColors as $fill) {
        $svgData = preg_replace(/fill="#[0-9a-fA-F]{6}"/, fill=".$fill.", $svgData);    
    }


    $im->readImageBlob($svgData);

    $im->setImageFormat(png24);

    $im->writeImage($pngPath . basename($svg) . .png);
    $im->clear();
}


$im->destroy();

echo "Done! nr";

Deel dit bericht


Link naar bericht
Delen op andere sites

Maak een account aan of log in om te reageren

Je moet lid zijn om een reactie te kunnen achterlaten

Account aanmaken

Maak een account aan in onze gemeenschap. Het is makkelijk!

Registreer een nieuw account

Aanmelden

Ben je al lid? Meld je hier aan.

Nu aanmelden
Log in om dit te volgen  

×