Witam, mam problem z dynamicznym wyśrodkowaniem zdjęcia po skalowaniu w php.
function miniatura($foto, $width, $height){
if($rozmiar[0]>$rozmiar[1]) $wspolczynnik = $rozmiar[0]/$width;
else $wspolczynnik = $rozmiar[1]/$height;
$szerokosc = (int)($rozmiar[0]/$wspolczynnik);
$wysokosc = (int)($rozmiar[1]/$wspolczynnik);
$class = ' style="width:'.$szerokosc.'px; height:'.$wysokosc.'px;"';
return '<img src="'.$foto.'" class="zdjecie_produkt" alt="'.$sub_kategoria1.'" title="'.$sub_kategoria1.'" '.$class.'/>';
}
W tym momencie idealnie proporcjonalnie skaluje mi zdjęcie i je wyświetla. Problem pojawia się kiedy obraz jest dłuższy niż szerszy.
Jest wtedy wyrównany do lewej. Próbowałem poprzez dodanie margin-left, ale nie do końca mi to wychodzi.
function miniatura($foto, $width, $height){
if($rozmiar[0]>$rozmiar[1]) $wspolczynnik = $rozmiar[0]/$width;
else $wspolczynnik = $rozmiar[1]/$height;
$szerokosc = (int)($rozmiar[0]/$wspolczynnik);
$wysokosc = (int)($rozmiar[1]/$wspolczynnik);
if($rozmiar[0]>$rozmiar[1]){
$center = (int)($wspolczynnik);
}else{
$center = (int)($rozmiar[0]/$wspolczynnik);
}
$class = ' style="width:'.$szerokosc.'px; height:'.$wysokosc.'px; margin-left:'.$center.'px;"';
return '<img src="'.$foto.'" class="zdjecie_produkt" alt="'.$sub_kategoria1.'" title="'.$sub_kategoria1.'" '.$class.'/>';
}
A funkcje wywołuje np.
miniatura('../uploated_file/'.$kategoria1.'/'.$nazwa.'/'.$sub_kategoria1.'/1.jpg', 145, 100)
Mogę liczyć na waszą pomoc?

edit/
Przepraszam za spam.
Szukałem nie tam gdzie trzeba, problem tkwił w css.
Dodałem do stylu:
margin: 0 auto;
display: block;
Ten post edytował przemo191 4.07.2012, 13:09:27