Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Jakie rozwiązanie będzie najlepsze - GD, czy SVG?
sweter
post
Post #1





Grupa: Zarejestrowani
Postów: 623
Pomógł: 11
Dołączył: 1.01.2009
Skąd: Wrocław

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


Witam,
na swojej stronie pod obrazkami chcę zastosować modne ostatnio rozmazane odbicie (mniej więcej takie coś).
Wpadły mi do głowy dwa rozwiązania:
1. GD
Po wrzuceniu pliku na serwer zostanie utworzony drugi plik z odbiciem.
2. SVG
Przy wyświetlaniu każdy obrazek będzie miał tworzone odbicie za pomocą JS+SVG.

Co Wy radzicie? Jakie rozwiązanie będzie najodpowiedniejsze?
Czy wybierając 1. nie obciążę za bardzo serwera (najbardziej obawiam się wykorzystania procesora podczas rozmywania)?
A czy wybierając 2. nie obciążę za bardzo komputera użytkownika (na próbę utworzyłem 8 obrazków z rozmyciem w Inkscapie i przy przewijaniu obraz mocno skacze - na www też to będzie?)?

Pozdrawiam


--------------------
Go to the top of the page
+Quote Post
erix
post
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




SVG? A nie przypadkiem canvas? Chyba to drugie. tongue.gif

Jest mały problem - canvas jeszcze nie wszystkie przeglądarki obsługują.

Cytat
Czy wybierając 1. nie obciążę za bardzo serwera (najbardziej obawiam się wykorzystania procesora podczas rozmywania)?

To jeszcze z GD się korzysta? Nie masz ImageMagick?

Cytat
(na próbę utworzyłem 8 obrazków z rozmyciem w Inkscapie i przy przewijaniu obraz mocno skacze - na www też to będzie?)?

Ok, fajnie że mamy fusy do wróżb.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
everth
post
Post #3





Grupa: Zarejestrowani
Postów: 782
Pomógł: 153
Dołączył: 21.07.2010

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


JS +Canvas - Taki ContentFlow robi wszystko po stronie użytkownika. I robi to szybko - z tego co się zainteresowałem to wychodzi że w normalnych przeglądarkach używa Canvas a do IE jakiegoś ichniejszego filtra. Przeglądnij sobie kod źródłowy (ze szczególnym uwzględnieniem metody addReflection). Za pomocą Canvas można też nałożyć blur więc przy paru modyfikacjach w skrypcie i ten efekt by poszedł. Co do IE to przecież nie wszystko musi błyszczeć na glanc.

GD - również mogłoby by być gdyby zastosować cache do generowanych zdjęć. Działa zawsze tak samo bez względu na przeglądarkę - tylko jest niestety mniej elastyczne (nie można płynnie obrabiać np. w przeglądarce)

JS+SVG - wszystkie moje próby kończyły się porażką (albo Opera protestowała, albo Chrome lub FF, nie wspominając z wiadomych względów IE). Dlatego uważam że nawet normalne przeglądarki nie dorosły jeszcze do pełnej obsługi tego standardu.


--------------------
Już mi się ani wiedzieć, ani tym bardziej myśleć nie chce.
[Think different]!
Go to the top of the page
+Quote Post
thek
post
Post #4





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Ale to nie jest odbicie winksmiley.jpg Przyjrzyj się dokładnie. Jeśli dobrze widzę to nałożona jedynie maska o przejściu od przezroczystości do białego smile.gif Ale tak to wygląda na pierwszy rzut oka.


--------------------
Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
Go to the top of the page
+Quote Post
everth
post
Post #5





Grupa: Zarejestrowani
Postów: 782
Pomógł: 153
Dołączył: 21.07.2010

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


@thek Nie wiem jak to ściśle określić - ale to samo robi ContentFlow (tyle że bez bluru). Jeśli dla ciebie to nie jest odbicie to w takim razie jak je zdefiniujesz? Nałożona maska + przekształcenie perspektywiczne?

Jakby się ktoś uparł to pewnie by się dało (nie takie wtyczki już widziałem) - tylko że to rozwiązania jest na tyle eleganckie i nie zajeżdża procka że w zupełności wystarczy. W przypadku GD czy ImageMagick można by się prosić o nałożenie perspektywy (dalej zakładając że o to ci chodzi).

@DOWN: Patrzyłem, patrzyłem i wreszcie złapałem o ci chodzi winksmiley.jpg Rzeczywiście to nałożona maska na dolną część foty (choć faktura tak się ułożyła że ciężko zauważyć). Trochę ordynarne to rozwiązanie.

Ten post edytował everth 14.08.2010, 00:52:31


--------------------
Już mi się ani wiedzieć, ani tym bardziej myśleć nie chce.
[Think different]!
Go to the top of the page
+Quote Post
thek
post
Post #6





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Mówię o tym konkretnym przykładzie podanym przez autora smile.gif Jeśli się przyjrzysz to zauważysz, że tam nie ma zniekształceń i odbić obrazu. Najlepiej to widać na głazach bo odcinają się od reszty otoczenia. Powinny mieć po "zblurowanej" stronie odpowiedniki. Nie ma ich. Dlatego wnioskuję, że tutaj nie ma efektu rozmytego lustra.


--------------------
Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
Go to the top of the page
+Quote Post
#luq
post
Post #7





Grupa: Zarejestrowani
Postów: 589
Pomógł: 91
Dołączył: 22.05.2008
Skąd: Gliwice

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


Oczywiście rozwiązanie z JS to jest w ogóle jakaś pomyłka, każdy user odwiedzając każdorazowo tą stronę będzie przekształcał obrazek (bo obrazków z canvas chyba nie da się zapisać do cache`a przeglądarki). Rozwiązuj to po stronie serwera przy zapisie obrazka. Co do obciążenia procesora to bez przesady to nie są nie wiadomo jakie obliczenia, ja mam skrypt który dodaje do dość dużych zdjęć liniuszek z każdego boku, żeby było można było ustalić wielkość poszczególnych elementów zdjęcia + na dole opis zdjęcia i działa to bez jakichkolwiek zastrzeżeń wydajnościowych.

Co do rozwiązania to jeśli czujesz się na siłach to zawszę możesz dopisać metodę do mojej klasy opartej o GD. Niestety nie miałem styczności z ImageMagick więc na temat jego wyższości nie mogę nic powiedzieć winksmiley.jpg


--------------------
Moja gra - scraby.io
Go to the top of the page
+Quote Post
sweter
post
Post #8





Grupa: Zarejestrowani
Postów: 623
Pomógł: 11
Dołączył: 1.01.2009
Skąd: Wrocław

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


Dziękuję za odpowiedzi.
Z ImageMagic niestety nie mogę skorzystać, nie ma jej na serwerze, więc pozostanie GD smile.gif
@thek i @everth: źle patrzycie - to jest odbicie smile.gif


--------------------
Go to the top of the page
+Quote Post
erix
post
Post #9





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
Z ImageMagic niestety nie mogę skorzystać, nie ma jej na serwerze, więc pozostanie GD

Zmień serwer. Bez IM są sto lat za konkurencją.

Poza tym, na wielu serwerach nie ma tego rozszerzenia wkompilowanego w PHP, ale przez shell_exec możesz normalnie korzystać z ImageMagick jak z linii poleceń.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 20.08.2025 - 12:02