Page 1 sur 1

faire une page fpdf

Posté : 08 janv. 2009, 18:50
par x@v
Bonjour,
j'essaie de créer une page.
j'ai une erreur en sortie:
FPDF error: Alpha channel not supported: images/logo.png
<?php
require 'fpdf/fpdf.php';
require 'donnees.php';

// crée une instance pdf
$pdf=new FPDF();

// ajouter une page
$pdf->AddPage();

// image
$pdf->Image('images/logo.png', 5, 5, 50, 50);
// ecrire une chaine
$pdf->SetFont('Arial', 'B', 16);
$largeur=$pdf->GetStringWidth($titre);
$pdf->SetX(105-($largeur/2));
$pdf->Cell($largeur, 0, $titre);

// envoyer à la sortie standard
$pdf->Output();
//$fpdf->Output('factureDupond');?>
Mais même l'affichage d'une simple image pose problème dans mon environnement.
<?php
require 'fpdf/fpdf.php';
require 'donnees.php';

// crée une instance pdf
$pdf=new FPDF();

// ajouter une page
$pdf->AddPage();

// image
//$pdf->Image('images/logo.png', 5, 5, 50, 50);
// ecrire une chaine

//$pdf->SetFont('Arial', 'B', 16);
//$largeur=$pdf->GetStringWidth($titre);
//$pdf->SetX(105-($largeur/2));
//$pdf->Cell($largeur, 0, $titre);

// envoyer à la sortie standard
$pdf->Output('ddd');
//$fpdf->Output('factureDupond');?>
cela m'imprime
Warning: fopen(ddd) [function.fopen]: failed to open stream: Permission denied in /home/xav/web/test/pdf/fpdf/fpdf.php on line 1044
FPDF error: Unable to create output file: ddd

Posté : 08 janv. 2009, 19:06
par jojolapine
Bonjour,
Les deux errerus sont je pense assez explicite...
Pour la première, c'est que le spng transparents ne sont pas supportés par fpdf
Remplace par un .jpg et ça devrait rouler

Pour la secodne, c'est simplement une histoire de droit sur le répertoire...
Un coup de chmod et c'est réglé ;)

Posté : 08 janv. 2009, 19:11
par x@v
d'accord pour l'image mais pour les droits :

Code : Tout sélectionner

xav@boutiknline:~/web/fpdf16$ ls -l total 96 drwxr-xr-x 2 xav xav 4096 2009-01-08 16:57 doc -rwxrwxrwx 1 xav xav 15814 2008-12-28 14:09 FAQ.htm drwxr-xr-x 3 xav xav 4096 2009-01-08 16:57 font -rwxrwxrwx 1 xav xav 1339 2008-07-19 15:04 fpdf.css -rwxrwxrwx 1 xav xav 45079 2008-08-03 11:32 fpdf.php -rwxrwxrwx 1 xav xav 7726 2008-08-24 15:13 histo.htm -rwxrwxrwx 1 xav xav 1079 2004-12-31 22:20 install.txt -rwxrwxrwx 1 xav xav 331 2008-08-03 10:52 license.txt drwxr-xr-x 2 xav xav 4096 2009-01-08 16:57 tutoriel xav@boutiknline:~/web/fpdf16$
je suis en 777 ?

PS:
autant pour moi, je me suis trompé de répertoire

xav@boutiknline:~/web/test$ sudo chmod 777 -R pdf/
je n'ai plus d'erreur.
;)

Par contre, il ne se passe rien avec ce bout de code quand j'ajoute une chaine à la sortie outPut():
<?php
require 'fpdf/fpdf.php';
require 'donnees.php';

// crée une instance pdf
$pdf=new FPDF();

// ajouter une page
$pdf->AddPage();

// image
//$pdf->Image('images/logo.png', 5, 5, 50, 50);
// ecrire une chaine

$pdf->SetFont('Arial', 'B', 16);
$largeur=$pdf->GetStringWidth($titre);
$pdf->SetX(105-($largeur/2));
$pdf->Cell($largeur, 0, $titre);

// envoyer à la sortie standard
$pdf->Output('ddd');
//$fpdf->Output('factureDupond');?>

Posté : 08 janv. 2009, 19:24
par jojolapine
En fait, si ça change simplement le nom de ton pdf, mais si il est ouvert dans le navigateur via adobe reader, tu le verra pas forcément, mais si tu rajoutes l'option "D" par exemple, tu verras le nom...