Jump to content

[Résolu] Mettre de la transparence en fond des images des produits


Recommended Posts

Bonjour,
Au début j'avais des bordures blanches tout autour de mes images de produits. J'ai réussis à corriger ce qui est pour moi un défaut en modifiant la ligne 231 du fichier images.inc.php en remplaçant la ligne par ceci :

if (Configuration::get('PS_IMAGE_GENERATION_METHOD') == 2 OR (!Configuration::get('PS_IMAGE_GENERATION_METHOD') == 0 AND $widthDiff > $heightDiff))



Je n'ai plus de bordure mais sur certaines images j'ai encore des bordures blanches sur certaines photos (après avoir régénéré les miniatures dans le back office)

Ma question est comment je peux enlever ça définitivement ? J'aurai besoin d'aide car j'ai pas mal bidouillé déjà et sans succès.

J'utilise la dernière version de prestashop et mes images sont sous le format .jpg

Merci.

Link to comment
Share on other sites

Bonjour,

pourquoi s'embêter à modifier le fichier php ?
un simple

 img {border: none;}

dans global.css et plus de bordure sur les images...

où alors je n'ai pas pigé ta question

après avoir relu le titre de ton post, j'ai encore plus de doute, tu parles de mettre de la transparence dans le titre mais ta question parle plutôt de la bordure des images donc...?!

Link to comment
Share on other sites

Non j'ai du mal m'exprimer, tout d'abord merci pour ta réponse.

Alors mon problème est que quand on ajoute une image a un produit, celle-ci est redimensionnée par le script prestashop en plusieurs images dont la hauteur et la largeur se gère dans la partie administration.

Quand j'ajoute une image (sans aucune bordure) celle-ci est donc redimensionnée mais il y a des bordures blanches qui sont présente (car prestashop ne prends pas la transparence en compte donc les png)

Ce matin j'ai remplacer mon fichier images.inc.php celui que j'ai mis en pièce jointe.

Je n'ai plus aucune bordure, donc on pourrait dire problème résolu, mais maintenant j'en ai un autre c'est que mes images sont vraiment déformées, ce que je ne voulais pas.

Comment puis-je faire pour que le script les redimensionnes de façon à avoir des bordures transparentes mais en gardant les dimensions proportionnelles ?

images.inc.php

Link to comment
Share on other sites

Ok je vois mieux maintenant mais malheureusement je n'ai pas vraiment de solution car le générateur transforme automatiquement en jpg et ça, ça ne plaît pas du tout aux png ou gif avec transparence puisque le fait de de passer en jpg consiste à remplacer la transparence par du blanc.

En gros il vaut mieux éviter de s'en servir pour les produits si on ne veut pas tout reprendre manuellement comme pour un logo en png... si tu n'as pas beaucoup de produits, tu peux essayer de mettre directement des images png à la place des jpg générées mais cela va te prendre un temps considérable.

désolé de ne pas t'aider davantage mais là je ne vois pas car il faudrait que le générateur accepte de redimensionner les png mais sans les convertir au format jpg, pour l'instant ce n'est pas le cas et je ne suis pas assez calé en php pour coder ça.

Link to comment
Share on other sites

@vipmax

Ce module ne vaut pas un clou et il n'a jamais fonctionné.

Ce qu'il faut savoir, c'est qu'une réduction d'image se fait proportionnellement (largeur -hauteur).
Si dans le B.O tu as configuré tes images pour être en 129x129px (catégorie "home" par exemple) et que ton image d'origine est rectangulaire (Ex: 600x400px), il est impossible d'obtenir une image de 129x129px et elle aura pour dimensions 129x86px.
Prestashop compense et corrige ce problème en ajoutant une bande blanche ( en l'occurrence dans cet exemple la bande aura 129-86=43px répartis à droite et à gauche de l'image.
Si tu supprimes cette possibilité, l'image sera réduite en 129x129px, sans bordure mais déformée car il est impossible à partir d'une image rectangulaire d'obtenir une image carrée !
La solution?
Il n'y a pas de solution miracle mais ce qu'il faut faire , c'est tout simplement travailler ses images avant de les placer sur le site.
La catégorie "home" étant par ex réglée à 150x150px, il faut donc une image qui à l'origine aura pour dimensions (toujours par exemple) 600x600px ou 800x800px c'est à dire carrée.

Pour bien comprendre, il suffit d'ouvrir son logiciel photo préféré et de tenter de réduire une image, on voit tout de suite que lorsque l'on modifie la largeur, la hauteur se modifie également (mais toujours proportionnellement afin de ne pas avoir de déformations)

  • Like 2
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...