[html, php] Zaokrąglenie

0

Witam. Mam pytanie jak za pomocą html'a, lub php, mając grafikę w postaci prostokąta, zaokrąglić go?

0

nie bardzo rozumiem - raczej niemożliwe albo w przypadku php - bardzo trudne ale może to jakoś lepiej wytłumacz

0
Adamo napisał(a)

nie bardzo rozumiem - raczej niemożliwe albo w przypadku php - bardzo trudne ale może to jakoś lepiej wytłumacz

Hmmm... Mam obrazek, powiedzmy o wymiarach 80x80.
Rzecz jasna jest to kwadrat. A ja chcę, żeby jego wierzchołki były zaokrąglone. Niestety muszę to zrobić programowo.

0

Skrypt wcale nie jest taki trudny do napisania. Jeżeli chcesz możesz bazować na moim. Nie zaokrągla rogów, ale robi gradientowe przejście między kolorem przekazanym jako parametry R,G,B a obrazkiem.
Wygląda to tak
user image - obrazek wejściowy
user image - wynik skryptu

A tak wygląda skrypt który to generuje. Używaj dowoli.

<?
 header("Content-type: image/jpeg");
 header("Last-Modified: Mon, 26 Jul 1997 05:00:00 GMT");

 if (!isset($directory))
 $directory = "images/";

 if (file_exists($directory.$plik))
 {
    $org = imagecreatefromjpeg($directory.$plik);
    $s_org = imagesx($org);
    $w_org = imagesy($org);

     $wmin = 200;
     $hmin = 150;

     if ($s_org / $w_org > $wmin / $hmin)
     {
          $s_min = $wmin;
          $w_min = $wmin * $w_org / $s_org;
     }
     else
     {
          $s_min = $hmin * $s_org / $w_org;
          $w_min = $hmin;
     }

    $min_ = imagecreatetruecolor($s_min, $w_min);
    imagecopyresized($min_, $org, 0, 0, 0, 0, $s_min, $w_min, $s_org, $w_org);
    imagedestroy($org);

    if (!isset($R)) $R = 253;
    if (!isset($G)) $G = 254;
    if (!isset($B)) $B = 255;

    for ($a=0; $a<$s_min;$a++)
     for ($b=0; $b<10;$b++)
     {

      $colort = imagecolorallocatealpha ($min_, $R,$G,$B,12*$b);
      imagesetpixel($min_,$a,$b,$colort);
      imagesetpixel($min_,$a,$w_min-$b,$colort);
     }
    for ($a=0; $a<$w_min;$a++)
     for ($b=0; $b<10;$b++)
     {
      $colort = imagecolorallocatealpha ($min_, $R,$G,$B,12*$b);
      imagesetpixel($min_,$b,$a,$colort);
      imagesetpixel($min_,$s_min-$b,$a,$colort);
     }

   imagejpeg($min_);

   imagedestroy($min_);
 }
 else
 {
   $org = imagecreatefromjpeg("img/brakpliku.jpg");
   imagejpeg($org);
 }
?>

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.