Generowanie miniatur stron internetowych

Dawno nic nie pisałem więc postanowiłem coś nowego wreszcie zamieścić na tej stronie. Ostatnio natknąłem się w sieci na fajną stronę pozwalającą tworzyć miniatury stron internetowych – webthumbnail.org. Udostępnione tam jest bardzo proste API do tworzenia miniaturek. W zapytaniu przekazujemy metodą GET wielkość zrzutu strony, format, przeglądarkę oraz adres strony i to wszystko. Po chwili czekania na wygenerowanie miniatury mamy dostępną grafikę z żądaną stroną.

Postanowiłem napisać do tego niewielką klasę w PHP. Umożliwia ona na pobranie zrzuty strony. Sprawdzane jest tu czy zrzut został już pobrany czy nadal jest w kolejce. Użycie klasy jest bardzo proste i sprowadza się do kilku linijek kodu:

include 'thumbgenerator.class.php';
$generator = new thumbgenerator();
//set params of thumbnail:
$generator->setWidth(100);
$generator->setHeight(150);
$generator->setBrowser("firefox");
$generator->setFormat("jpg");
$generator->setUrl("google.pl");
//set timeout between two checks of thumbnail (if it is still in queue):
$generator->setCheckTimeout(5);
//get thumbnail url:
$u = $generator->getThumb();
echo '<img src="'.$u.'" alt="" />';
//or save thumbnail on local disk:
$generator->saveThumb();

Jak widać klasa użycie tej klasy jest równie proste jak samo API do generowania miniaturek. Należy po prostu ustawić podstawowe parametry pobieraniego zrzutu strony, ustawić czas pomiędzy dwoma kolejnymi sprawdzeniami czy ministura została już wygenerowana (metoda setCheckTimeout()) i pobrać url miniaturki lub zapisać ją na lokalnym dysku.

Klasa wymaga dostępnej biblioteki curl oraz dostępu do katalogu temp i katalogu do zapisu miniatur. Katalogi te można ustawić samodzielnie metodami:

setTempPath($path) oraz
setDestPath($path)

Klasę można pobrać tutaj – download

Mam nadzieję, że komuś może się ona przydać. Oczywiście wszelkie uwagi w komentarzach są mile widziane 🙂

  1. pytanie za 10 punktów czemu
    plik thumbgenerator.class.php
    $this->_getReadyThumb()
    i
    $this->_getReadyThumb()
    za każdym razem zwracają pusty ciąg ??

Zostaw komentarz


Podpowiedź - możesz użyć tych HTML tagów i atrybutów:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 
Korzystanie z Serwisu oznacza zgodę na wykorzystywanie plików cookie. Akceptuję