Dans la documentation officielle de FPDF, il est indiqué que le canal alpha n'est pas pris en charge pour le format PNG.Insérer PNG avec canal alpha à l'aide de FPDF (PHP)
Y a-t-il une solution de contournement?
Dans la documentation officielle de FPDF, il est indiqué que le canal alpha n'est pas pris en charge pour le format PNG.Insérer PNG avec canal alpha à l'aide de FPDF (PHP)
Y a-t-il une solution de contournement?
Si vous avez besoin de mettre une image transparente par-dessus une autre: utilisez les fonctions PHP intégrées pour copier une image sur l'autre. Ensuite, vous allez vous retrouver avec une nouvelle image, contenant les deux images. Enregistrer en tant que png non-alpha, et insérer.
Il y a un exemple here du code nécessaire pour combiner les images.
Si vous voulez que le texte soit visible sous votre image: insérez d'abord l'image, puis écrivez votre texte dans le document.
Essayez cette extension pour FPDF:
http://valentin.dasdeck.com/php/fpdf/fpdf_alpha/
Description succincte de la page:
Ce script permet d'utiliser des images (ou PNGs ) avec alpha JPGs canaux. Le canal alpha peut être fourni sous la forme en tant que PNG 8 bits distinct ("mask"), ou, pour les fichiers PNG, et un canal alpha interne peut être utilisé. Pour le , l'extension GD 2.x est requise.
La spécification d'une image de masque séparée a plusieurs avantages: - aucun GD requis. - Amélioration de la qualité (full canal alpha 8 bits, tandis que GD interne seulement supporte les canaux alpha 7 bits) - beaucoup plus rapide (extraction de l'alpha-canal intégré doit être fait pixel-sage)
fonction image (fichier de chaîne, x float, flotteur y [, flotteur w [, float h [, type de chaîne [, link mixte [, boolean isMask [, int maskImg]]]]]])
mêmes paramètres que pour l'original Image() - méthode, avec 2 paramètres supplémentaires (optionnel): isMask: si spécifié et vrai, l'image est utilisée comme masque pour d'autres images. Dans ce cas , les paramètres x, y, w et h seront ignorés et l'image de masque elle-même n'est pas visible sur la page. maskImg: nombre de ressources d'image ( renvoyé par l'image précédemment appelée() avec le paramètre isMask défini sur true) qui sera utilisé comme masque pour cette image .
fonction ImagePngWithAlpha (string fichier , x float, float y [, flotteur w [, flotteur h [, liaison mixte]]])
Mêmes paramètres que pour origine image() - méthode, mais sans paramètre de type .
Cela a fonctionné pour moi merci les gens.J'ai fondamentalement inclus l'extension ci-dessus (http://staff.dasdeck.de/valentin/fpdf/fpdf_alpha/), puis les classes étendues comme suit:
In fpdf_tpl.php require ('PDF_ImageAlpha.php');
class FPDF_TPL extends PDF_ImageAlpha
En PDF_ImageAlpha.php:
class PDF_ImageAlpha extends FPDF{
Inside of here I chaged the image() function to F_image() to avoid clashing (probably should have used namespaces). With a quick search and replace you will see that this needs replacing 2 more times.
}
Puis dans mon fichier workhorse.php j'ai appelé la fonction F_image() au lieu de l'image() et que ce soit réglé mon problème.
Merci !!!
Le lien est cassé. Maintenant, c'est: http://valentin.dasdeck.com/php/fpdf/fpdf_alpha/ – user3514092
Le lien est rompu. Maintenant, c'est: http://valentin.dasdeck.com/php/fpdf/fpdf_alpha/ – user3514092