Obrázok PNG pri zmenšení zostane čierne pozadie – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Obrázok PNG pri zmenšení zostane čierne pozadie – PHP – Fórum – Programujte.comObrázok PNG pri zmenšení zostane čierne pozadie – PHP – Fórum – Programujte.com

 

zelenac10
Stálý člen
21. 12. 2019   #1
-
0
-

Zdravím,

Potrebujem zmenšiť obrázky PNG, keď ale má original presvitné pozadie pri zmenšení zostanie čierne neviete poradiť, ako to vyriešiť? Pozeral som už aj Stackoverflow.com neviem tam zatial nič nájsť.. :)

Ďakujem 

function zmensi_obrazok($image_max_width, $image_max_height, $obrazok, $cesta, $nazov)
{

 $valid_exts = array("jpg","jpeg","png");  
 $ext = end(explode(".",strtolower($obrazok[name])));
  
 if($obrazok[size] <= 1024000)
  {
   
   if(in_array($ext,$valid_exts))
    { 
    
     if($ext == "jpg" || $ext == "jpeg")
      {
        $image = imagecreatefromjpeg($obrazok[tmp_name]);
      }
     elseif($ext == "png")
      {
       $image = imagecreatefrompng($obrazok[tmp_name]);           
      }


     list($width,$height) = getimagesize($obrazok[tmp_name]);


     $old_width      = imagesx($image);
     $old_height     = imagesy($image);
     $scale          = min($image_max_width/$old_width, $image_max_height/$old_height);
     $new_width      = ceil($scale*$old_width);
     $new_height     = ceil($scale*$old_height);


     $tmp = imagecreatetruecolor($new_width,$new_height);
     
     if($ext == "gif" or $ext == "png")
      {
       imagecolortransparent($tmp, imagecolorallocatealpha($tmp, 0, 0, 0, 127));
       imagealphablending($tmp, false);
       imagesavealpha($tmp, true);
      }
      
     $filename = $cesta.$nazov.".".$ext;
     
     imagecopyresampled($tmp,$image,0,0,0,0,$new_width,$new_height,$width,$height);

      
     imagejpeg($tmp,$filename,100);
     return "";
     imagedestroy($image);
     imagedestroy($tmp);

 
    } 
  }

}
Nahlásit jako SPAM
IP: 95.102.167.–
Octopia.sk - Záhrada na kľúč
gna
~ Anonymní uživatel
1891 příspěvků
21. 12. 2019   #2
-
+1
-
Zajímavé
Kit +

Jestli chceš tu průhlednost zachovat, tak v první řadě ten obrázek nekládej jako JPEG, přetože ten průhlednost nepodporuje.

Nahlásit jako SPAM
IP: 213.211.51.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 11 hostů

Podobná vlákna

Pozadie + obrázok — založil Anonymní uživatel

JavaFX - ako nastavit pozadie — založil bitEe.Eu

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý