Не текстом единым
Никита Кислицин
Xakep, номер #060, стр. 060-094-3
Параметры dst_im и src_im указывают на выходные и входные изображения соответственно. Если координаты, а также линейные размеры копируемого участка и изображения-приемника различны, то происходит растяжение или сжатие картинки. Поговорим теперь о более интересных вещах - как же рисовать геометрические фигуры?
Int ImageLine(int image, int x1, int y1, int x2, int y2, int color) - чертит линию, связывающую две точки с координатами (x1, y1) и (x2, y2). Что касается третьего параметра - это цветовой индекс, указатель на цвет, которым будет закрашена линия. Этот индекс генерируется функцией ImageColorAllocate($im, r, g, b), где r g b - числа от 0 до 255, устанавливающие требуемые значения красного, зеленого и синего. Для создания более сложных геометрических фигур существует функция int ImagePolygon(int image, array points, int num_points, int color), вычерчивающая многоугольник по заданным координатам, причем на четных позициях стоят координаты точек по оси "X", по нечетным - "Y". Для отрисовки кривой следует пользоваться функцией int ImageArc(int image, int cx, int cy, int w, int h, int s, int e, int color). Эта функция рисует часть эллипса с центром в точке (cx, cy); параметры w и h определяют ширину и высоту эллипса, а начальная и конечная точки задаются в аргументах s и e. Для печати на рисунке некоторой текстовой информации используется функция int ImageString(int image, int font, int x, int y, string s, int col). Эта функция выведет на изображении с идентификатором image строку s, первый символ которой будет иметь координаты x и y. При этом текст будет написан шрифтом font (используются внутренние индексы) и цветом color.
Существует еще множество функций по работе со шрифтами PostScript, созданию сложных геометрических фигур и т.д. - все они подробно описаны в документе, который находится на диске. Но ты можешь его скачать и с официального сайта библиотеки - www.boutell.com/gd/.
Графика в HTML-документах
Не секрет, что графические изображения вставляются в HTML-документ при помощи тега <IMG> (от английского слова "IMaGe"). Тег имеет целый ряд параметров, основные из которых: src="урл картинки", alt="текст, отображаемый, пока не загрузится картинка", width="ширина изображения", height="высота". Таким образом, тег <IMG src="logo.gif" alt="Супер Лого" width=100 height=40> вставит картинку logo.gif, причем пользователь, не дожидаясь загрузки изображения, поймет, что это логотип.
Как же быть с динамической графикой, когда нет статического файла? Ответ напрашивается сам собой - указывать в качестве параметра src путь к скрипту, формирующему изображение. Дело в том, что в самом начале передачи данных веб-браузер получает заголовки - текст, который сообщает клиенту некоторую служебную информацию, в т.ч. и тип передаваемых данных. И ничто не мешает послать браузеру строчку "Content-Type: image/png", после чего направить в поток вывода картинку - браузер не почувствует разницы относительно статичного изображения.