image

Obiektowy język definiowania dokumentów hipertekstowych i jego implementacja.

ObjectHTML : Projekt języka : image

Poprzednia strona: file
Nastepna strona: include

Bardzo często na stronach umieszczane są pliki graficzne. Do osadzenia rysunku na stronie służy znacznik <IMG src="plik.gif">. Znacznik ten posiada kilka opcjonalnych atrybutów, między innymi WIDTH i HEIGHT które określają odpowiednio szerokość i wysokość rysunku.

Większość przeglądarek ładuje na początku cały dokument HTML, wyświetla go, a następnie ładuje pozostałe elementy strony takie jak rysunki. Po załadowaniu kolejnego rysunku przeglądarka wyświetla go na stronie. Jeśli znacznik definiujący rysunek nie posiadał atrybutów określających jego szerokość i wysokość, przeglądarka jest zmuszona do ponownego wyświetlenia całej strony już z odpowiednio wpasowanym rysunkiem. Przy dużych dokumentach operacja ta jest czasochłonna. Przy wolnym połączeniu z serwerem, z którego ściągana jest strona jest to bardzo niewygodne: przeglądarka wyświetla stronę, którą następnie zaczynamy czytać, po przeczytaniu kilku wierszy strona znika, aby po chwili znowu się pojawić. Dlatego zalecane jest podanie wysokości i szerokości do każdego rysunku osadzanego na stronie.

W języku ObjectHTML istnieje konstrukcja pozwalająca na łatwe tworzenie znaczników IMG. Wszystkie rysunki użyte na stronie powinny być zadeklarowane. Służy do tego instrukcja image o następującej składni:

image iden1 "stała1"

gdzie iden1 jest identyfikatorem obiektu, stała1 jest ścieżką dostępu wraz z nazwą pliku. Instrukcja ta tworzy globalny obiekt o nazwie iden1. Posiada on następujące metody:

Nazwa metody

Wartość zwrotna

href()

“Względne” odwołanie do rysunku, może być ono użyte jako wartość atrybutu SRC znacznika IMG.

fhref()

“Bezwzględny” odnośnik do rysunku.

filename()

Nazwę pliku graficznego.

size()

Rozmiar pliku w bajtach.

width()

Szerokość rysunku.

height()

Wysokość rysunku.

 

Obsługiwane formaty plików graficznych to: GIF, JPEG, PNG. Są to najczęściej wykorzystywane formaty plików graficznych osadzanych na stronach HTML.

Przykład użycia:

class cutil extends OHBase
	method imgtag ( im )
		'<IMG SRC="'; call($im,href)
		'" WIDTH='; call($im,width);
		' HEIGHT='; call($im,height); '>'
	endm
endc

image logo "public_html/logo.gif"

cutil.imgtag(logo)

W klasie cutil zdefiniowana jest metoda imgtag tworząca cały znacznik IMG. Jej jedynym parametrem jest obiekt klasy image. Dzięki tej metodzie wstawienie znacznika IMG wraz z parametrami jest bardzo proste i krótkie. W miejscu wywołania metody zostanie podstawiony tekst:

<IMG SRC=”logo.gif” WIDTH=100 HEIGHT=60>

Listopad 2000