OK,
![]()
Mais chez moi, ça fonctionne toujours pas ! Tu es sur de n'avoir que ça en code php ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 <?php $target_path = basename( $_FILES['uploadedfile']['name']); if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) { echo "Fichier : ". basename( $_FILES['uploadedfile']['name']). " ==> Upload OK "; } else{ echo " ==> Upload KO"; } $im = new Imagick(); $im->setResolution(640, 480); $im->readImage($target_path); $im->setImageFormat('tiff'); $im->writeImage("test23.tiff"); exit(" ==> Traitement PDF vers JPG ==> OK"); ?>
oui c'est le même code avec juste quelque test en plus (test si c'est un PDF) et la sortie en jpeg.
La sortie en tiff chez moi ne fonctionne pas. Le fichier est créer mais est illisible par IrfanView et par le browser.
et le fichier est énorme 50 Mega
je crois qu'il est préferable de faire une sortie en jpg et transformer en tiff (si c'est viable pour toi).
Même en PNG j'ai la même erreur ! Après, je pourrais toujours le faire mettre de jpg en tiff si c'est illisible comme tu le dis, mais il faudrait déjà que ca fonctionne de base !![]()
Je ne peux pas y aller x') Etant au travail, l'accès m'a été restreint, je n'ai pas les permissions pour aller sur un tchat x)
Voici le code exact que j'ai sur mon serveur et qui fonctionne (en JPG)
J'ai juste supprimer la partie download et destruction du fichier Uploader.
le html :
et le php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 </br> <form enctype="multipart/form-data" action="script.php" method="POST"> <input type="hidden" name="MAX_FILE_SIZE" value="205000" /> Select the PDF (MAX : 200 Ko) : <input type="file" name="uploadedfile" onchange="javascript:this.form.submit();"> </form>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
36 <?php //La valeur que l'on colle à la fin de output.jpg $random = rand(1000, 99000); echo ('<center> START '); $target_path = basename( $_FILES['uploadedfile']['name']); if (mime_content_type($_FILES['uploadedfile']['tmp_name']) == 'application/pdf'){ echo " ==> IS_PDF OK "; $filesize = filesize($_FILES['uploadedfile']['tmp_name']); } else { echo " ==> FILE IS NOT PDF OR SIZE IS BIGGER THAN 200 Ko ==> BYE ! "; exit(" ==> DONE !"); } if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) { echo "==> ". basename( $_FILES['uploadedfile']['name'])." ==> Upload OK [".$filesize."] Octets"; } else{ echo " ==> Upload KO"; exit(" ==> DONE !"); } $im = new Imagick(); $im->setResolution(640, 480); //la résolution de sortie de l'image $im->readImage($target_path); //[0] pour la page 1 du PDF $im->setImageFormat('jpg'); $im->writeImage("jpg/output".$random.".jpg"); unlink($target_path); echo (" ==> Traitement PDF vers JPG ==> OK ==> DONE !"); echo('</br>'); echo ('<center><img src="jpg/output'.$random.'.jpg" style="width:298px;height:421px;"/>'); ?>
Apparemment le tiff fonctionne egalement je viens de faire un test et j'ai downloadé le fichier et il est bien afficher dans IrfanView.
C'est apparement le browser qui ne supporte pas le format.
Mais ça marche !
![]()
J'ai copié/collé tout sans changé, j'ai une erreur comme quoi "mime_content_type" est pas définis.
J'ai lu qu'elle est devenue obsolète comme fonction.
On peux tester directement les 4 premier bits du PDF pour voir si ils sont égal à %PDF.
Supprime cette partie je te montrerai une autre méthode si ça t'intèresse.
Tu as vu que dans le nouveau code le fichier est sauver dans un repertoire [ jpg ]
donc crée le sur ton serveur si il n'existe pas !
J'ai encore la même erreur x') C'est incompréhensible !
Non, mais de toute façon, j'ai encore
Fatal error: Uncaught exception 'ImagickException' with message 'wand contains no images `
Essaye qqe chose de vraiment basique :
mets un test.pdf dans le repertoire et regarde ce que ça fait :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <?php $imagick = new Imagick(); $imagick->readImage('test.pdf'); $imagick->writeImage('sortie.jpg'); ?>
Au final je n'utilise plus Imagick, mais l'application que j'avais au début gswin32c, et j'ai réussis, donc c'est bon !
Merci quand même pour ton aide !![]()
Partager