Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> skalowanie image bez pikselizacji ??
bartu$
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 8.01.2004
Skąd: z domu

Ostrzeżenie: (0%)
-----


Mam pytanie czy php potrafi i poradzi sobie ze skalowaniem obrazow.

Chodzi o skalowanie bez pikselizacji, wykorzystujac interpolacje dwuliniowa, i probkowanie pikseli obrazu wejsciowego.

Wiem ze php jest bardzo wydajny, ale czy poradzi sobie z tym ?

Jesli ktos zna odpowiedz, lub nawet jesli ktos ma juz taki skrypt albo wie skad moglbym cos takiego sciagnac, bylbym wdzieczny za wszelka pomoc.

Bardzo jest mi potrzebny taki skrypt/program a bardzo chce skorzystac tu z php, gdyz jego skladnia jest wg. mnie przyjemniejsza od innych jezykow programowania.

Pozdrawiam. (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
halfik
post
Post #2





Grupa: Zarejestrowani
Postów: 259
Pomógł: 0
Dołączył: 17.05.2003
Skąd: Nysa

Ostrzeżenie: (10%)
X----


No php jest dobry, ale nie aż tak (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Są tam jakieś bajerki od wygładzania itd. ale to nie to, czego Ci potrzeba. Oczywiście mogę się mylic, bo za dużo się nie przyglądałem funkcją z bibliotek spod rodzinki GD - tyle co mi było trzeba to wiem, a nie potrzebowałem nigdy rozciągać grafiki i do tego wszystko tak wygładzić żeby nie robiła się pikseloza.
Go to the top of the page
+Quote Post
bartu$
post
Post #3





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 8.01.2004
Skąd: z domu

Ostrzeżenie: (0%)
-----


Dziekuje Halfik za Twoja odpowiedz na moje pytanie.

I bardzo prosze innych, zwlaszcza tych co jednoznacznie moga powiedziec "tak" lub "nie" na pytanie czy php sie do tego nadaje.

Chodzi o skalowanie i probkowanie pixel po pixelu.

Ja dotychczas pisalem skrypty do obslugi formularzy (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Dlatego teraz siedze i czytam o bibliotece GD. Nie wiem czy nie szkoda czasu.

Jesli ktos ma źródła lub wie skąd ściągnąć źródła tak działającego programu - niekoniecznie napisanego w php, to bardzo prosze o pomoc.
Go to the top of the page
+Quote Post
halfik
post
Post #4





Grupa: Zarejestrowani
Postów: 259
Pomógł: 0
Dołączył: 17.05.2003
Skąd: Nysa

Ostrzeżenie: (10%)
X----


Odpowiedź brzmi: nie. Przynajmniej jeszcze nie teraz. To co ma php, to raczej do prostego generowania prostych grafik, to jeszcze nie jest openGL lub DirectX (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
orson
post
Post #5





Grupa: Zarejestrowani
Postów: 548
Pomógł: 2
Dołączył: 19.07.2003

Ostrzeżenie: (0%)
-----


witam ...

sam php i gd ci tego nie zrobi ... ale mozesz sie zainteresowac moze jakims konwerterem ... czyms co mozesz wywolac z linij polecen ... na *nixach na pewno cos takiego jest ... a na win nie wiem czy infran_view nie ma wywolywania z linji ...

cya
Go to the top of the page
+Quote Post
bartu$
post
Post #6





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 8.01.2004
Skąd: z domu

Ostrzeżenie: (0%)
-----


Dziekuje za odpowiedzi ale poszukuje pelnej implementacji algorytmu skalowania.

Pozdrawiam.
Go to the top of the page
+Quote Post
id4
post
Post #7





Grupa: Zarejestrowani
Postów: 223
Pomógł: 1
Dołączył: --
Skąd: Rogożnik /K-ce/

Ostrzeżenie: (0%)
-----


Witam

Spróbuj skorzystać z tego - upewnij się, że na pewno masz GD2
[php:1:b3bec9e6ed]<?php
// plik generowania miniatur
if($file && $width && $height) // nazwa pliku - max szerokosc miniatury - max wysokosc miniatury
{
$photo="../".$_site[imagedir].$file;
$photosize=getimagesize($photo);
if($photosize[2]==1)$photofile=imagecreatefromgif($photo);
if($photosize[2]==2)$photofile=imagecreatefromjpeg($photo);
if($photosize[2]==3)$photofile=imagecreatefrompng($photo);

$photoX[0]=round($width/$photosize[0],10);
$photoX[1]=round($height/$photosize[1],10);

if($photoX[0]>$photoX[1])$photoX[2]=$photoX[1];
else $photoX[2]=$photoX[0];

$newimagesize[0]=ceil($photosize[0]*$photoX[2]);
$newimagesize[1]=ceil($photosize[1]*$photoX[2]);

if($newimagesize[0]>$width)$newimagesize[0]=$width;
if($newimagesize[1]>$height)$newimagesize[1]=$height;

if(function_exists(imagecreatetruecolor))$newimage=imagecreatetruecolor($newimag
size[0],$newimagesize[1]);
else $newimage=imagecreate($newimagesize[0],$newimagesize[1]);
if(function_exists(imagecopyresampled))imagecopyresampled($newimage,$photofile,0
0,0,0,$newimagesize[0],$newimagesize[1],$photosize[0],$photosize[1]);
else imagecopyresized($newimage,$photofile,0,0,0,0,$newimagesize[0],$newimagesize[1],
photosize[0],$photosize[1]);

header("Content-type: image/png");
imagepng($newimage);
imagedestroy($newimage);
}
?>[/php:1:b3bec9e6ed]
Go to the top of the page
+Quote Post
FiDO
post
Post #8





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

Ostrzeżenie: (0%)
-----


Moze to: http://www.imagemagick.org/ Cie zainteresuje ?
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 18:13