- Фантастика и фэнтези
- Ироническое фэнтези
- Стимпанк
- Детективная фантастика
- Киберпанк
- Попаданцы
- LitRPG
- Космоопера
- Технофэнтези
- Городская фантастика
- Русское фэнтези
- Юмористическая фантастика
- Космическая фантастика
- Боевое фэнтези
- Эпическая фантастика
- Зарубежная фантастика
- Книги магов
- Мистика
- Разная фантастика
- Разное фэнтези
- Любовное фэнтези
- Романтическая фантастика
- Городское фентези
- Историческая фантастика
- Историческое фэнтези
- Социально-философская фантастика
- Сказочная фантастика
- Иностранное фэнтези
- Романтическое фэнтези
- Ироническая фантастика
- Ужасы и Мистика
- Постапокалипсис
- Героическая фантастика
- Фэнтези
- Научная Фантастика
- Социально-психологическая
- Альтернативная история
- Боевая фантастика
- Разная литература
- Пословицы, поговорки
- Шахматы
- Визуальные искусства
- Фанфик
- Авто и ПДД
- Военное
- Отраслевые издания
- Гиды, путеводители
- Зарубежная образовательная литература
- Военная история
- Цитаты из афоризмов
- Современная литература
- Великолепные истории
- Начинающие авторы
- Современная зарубежная литература
- Боевые искусства
- Изобразительное искусство, фотография
- Кино
- Литература 19 века
- Недвижимость
- Музыка, музыканты
- Готические новеллы
- Истории из жизни
- Культура и искусство
- Спецслужбы
- Зарубежная прикладная литература
- Музыка, танцы
- Подростковая литература
- Прочее
- Военная техника, оружие
- Газеты и журналы
- Периодические издания
- Домоводство, Дом и семья
- Любовные романы
- Экономическая литература
- Научные и научно-популярные книги
- О животных
- Биохимия
- Культурология
- Юриспруденция
- Политика
- Психотерапия
- Языкознание
- Научпоп
- Медицина
- Психология, личное
- Радиотехника
- Филология
- Педагогика
- Образовательная литература
- Деловая литература
- Физика
- Науки: разное
- Химия
- Воспитание детей, педагогика
- Детская психология
- Зарубежная публицистика
- Биология
- Архитектура
- Зарубежная психология
- Науки о космосе
- Социология
- Математика
- География
- Беременность, ожидание детей
- Литературоведение
- Транспорт, военная техника
- Обществознание
- Зоология
- География
- Альтернативная медицина
- Иностранные языки
- Ветеринария
- Рефераты
- Астрология
- Биофизика
- Экология
- История Европы
- Учебники
- Шпаргалки
- Государство и право
- Ботаника
- Религиоведение
- История
- Техническая литература
- Прочая научная литература
- Психология
- Детективы и Триллеры
- Справочная литература
- Проза
- Новелла
- Юмор
- Проза
- Историческая проза
- Русская современная проза
- Советская классическая проза
- Повести
- Очерки
- Эссе
- Рассказы
- Зарубежная современная проза
- Сентиментальная проза
- Зарубежная классика
- Афоризмы
- Эпистолярная проза
- Феерия
- Семейный роман/Семейная сага
- Разное
- Антисоветская литература
- Магический реализм
- Русская классическая проза
- Современная проза
- О войне
- Контркультура
- Классическая проза
- Поэзия, Драматургия
- Детская литература
- Детская фантастика
- Детские остросюжетные
- Детские стихи
- Детские приключения
- Внеклассное чтение
- Учебная литература
- Зарубежные детские книги
- Бизнес
- Загадки
- Книги для подростков
- Школьные учебники
- Детский фольклор
- Книги для дошкольников
- Детские детективы
- Детская познавательная и развивающая литература
- Буквари
- Прочая детская литература
- Сказка
- Детская проза
- Детская образовательная литература
- Юмор
- Документальные книги
- Бизнес
- Внешнеэкономическая деятельность
- Тайм-менеджмент
- Кадровый менеджмент
- О бизнесе популярно
- Управление, подбор персонала
- Бизнес
- Менеджмент и кадры
- Продажи
- Экономика
- Ценные бумаги и инвестиции
- Малый бизнес
- Делопроизводство, офис
- Корпоративная культура, бизнес
- Банковское дело
- Финансы
- Зарубежная деловая литература
- Ораторское искусство / риторика
- Личные финансы
- Интернет-бизнес
- Поиск работы
- Государственное и муниципальное управление
- Бухучет и аудит
- Работа с клиентами
- Менеджмент
- Краткое содержание
- Личная эффективность
- Переговоры
- Приключения
- Старинная литература
- Религия и духовность
- Компьютеры и Интернет
- Блог
Читаем без скачивания Справочник по PHP - white cat
Шрифт:
Интервал:
Закладка:
Две точки называются связанными сильно, если у них совпадает, по крайней мере, одна координата, а по другой координате они отличаются не более, чем на 1 в любую сторону.
imageFillToBorder
Заливка области, ограниченной бордюром.
Синтаксис:
int imageFillToBorder(int im, int x, int y, int border, int color)
Эта функция очень похожа на imageFill(), только она выполняет закраску цветом color не одноцветных точек, а любых, но до тех пор, пока не будет достигнута граница цвета border.
imagePolygon
Рисует многоугольник с заданными вершинами.
Синтаксис:
int imagePolygon(int im, array points, int num_points, int color)
Эта функция рисует в изображении im многоугольник, заданный своими вершинами. Координаты углов передаются в массиве points, причем $points[0]=x0, $points[1]=y0, $points[2]=x1, $points[3]=y1 и т.д.
Параметр num_points указывает общее число вершин - на тот случай, если в массиве их больше, чем нужно нарисовать. Многоугольник не закрашивается - только рисуется его граница цветом color.
<?php
// создаем изображение 400x300
$image = imagecreate(400, 300);
// устанавливаем цвет бордюра многоугольника
$col_poly = imagecolorallocate($image, 255, 255, 255);
// рисуем многоугольник
imagepolygon($image,
array (
0, 0,
100, 200,
300, 200
),
3, $col_poly);
// вывод картинки в браузер
header("Content-type: image/png");
imagepng($image);
?>
imageFilledPolygon
Рисует закрашенный многоугольник с заданными вершинами.
Синтаксис:
int imageFilledPolygon(int im, array points, int num_points, int color)
Эта функция делает практически то же самое, что и imagePolygon(), за исключением одного очень важного свойства: полученный многоугольник целиком заливается цветом color.
При этом правильно обрабатываются вогнутые части фигуры, если она не выпукла.
<?php
// задаем массив с координатами углов
$values = array(
0 => 40, // x1
1 => 50, // y1
2 => 20, // x2
3 => 240, // y2
4 => 60, // x3
5 => 60, // y3
6 => 240, // x4
7 => 20, // y4
8 => 50, // x5
9 => 40, // y5
10 => 10, // x6
11 => 10, // y6
);
// создаем картинку 250x250
$im = imagecreate(250, 250);
// задаем цвет заполнения многоугольника
$blue = imagecolorallocate($im, 0, 0, 255);
// рисуем многоугольник
imagefilledpolygon($im, $values, 6, $blue );
// вывод каринки в браузер и ее закрытие
header('Content-type: image/png');
imagepng($im);
imagedestroy($im);
?>
Работа с фиксированными шрифтами
Библиотека GD имеет некоторые возможности по работе с текстом и шрифтами. Шрифты представляют собой специальные ресурсы, имеющие собственный идентификатор, и чаще всего загружаемые из файла или встроенные в GD. Каждый символ шрифта может быть отображен лишь в моноцветном режиме, т.е. "рисованные" символы не поддерживаются. Встроенных шрифтов всего 5 (идентификаторы от 1 до 5), чаще всего в них входят моноширные символы разных размеров. Остальные шрифты должны быть предварительно загружены.
imageLoadFont
Загрузка шрифта.
Синтаксис:
int imageLoadFont(string file)
Функция загружает файл шрифтов file и возвращает идентификатор шрифта - это будет цифра, большая 5, потому что пять первых номеров зарезервировано как встроенные. Формат файла - бинарный, а потому зависит от архитектуры машины. Это значит, что файл со шрифтами должен быть сгенерирован по крайней мере на машине с процессором такой же архитектуры, как и у той, на котором вы собираетесь использовать PHP.
Формат файла со шрифтом
Число символов в шрифте (nchars)
Левая колонка задает смещение начала данных внутри файла, а группами цифр, записанных через дефис, определяется, до какого адреса продолжаются данные.
imageFontHeight
Установка высоты шрифта.
Синтаксис:
int imageFontHeight(int font)
Функция возвращает высоту в пикселях символов в заданном шрифте.
imageFontWidth
Установка ширины шрифта.
Синтаксис:
int imageFontWidth(int font)
Функция возвращает ширину в пикселях символов в заданном шрифте.
imageString
Выводит строку в горизонтальном направлении.
Синтаксис:
int imageString(int im, int font, int x, int y, string s, int color)
Функция выводит строку s в изображение im, используя шрифт font и цвет color.Координаты (x, y) будут координатами верхнего левого угла прямоугольника, в который вписана строка.
Если параметр font задан как 1, 2, 3, 4 или 5, то выводится шрифт соответствующего размера.
<?php
// создаем изображение 100x30
$im = imagecreate(100, 30);
// задаем цвет текста
$textcolor = imagecolorallocate($im, 0, 0, 255);
// выводим надпись в верхнем левом углу
imagestring($im, 5, 0, 0, "Hello world!", $textcolor);
// выводим изображение в браузер
header("Content-type: image/jpg");
imagejpeg($im);
?>
imageStringUp
Выводит строку в вертикальном направлении.
Синтаксис:
int imageStringUp(int im, int font, int x, int y, string s, int color)
Эта функция также выводит строку текста, но не в горизонтальном, а в вертикальном направлении.
Верхний левый угол задается координатами (x, y).
Если параметр font задан как 1, 2, 3, 4 или 5, то выводится шрифт соответствующего размера.
imageChar
Вывод символа горизонтально.
Синтаксис:
int imageChar(int im, int font, int x, int y, string c, int color)
Функция выводит символ c в горизонтальном положении в месте на рисунке, заданном координатами (x, y). Шрифт символа задается параметром font. Если этот параметр принимает значение от 1 до 5, то используются встроенные шрифты. Цвет символа задается параметром color.
<?php
// создаем картинку размером 100x100
$im = imagecreate(100, 100);
$string = "PHP";
// задаем цвет символа
$black = imagecolorallocate($im, 0, 0, 0);
// Выведем символ "P" в верхнем левом углу
imagechar($im, 1, 0, 0, $string, $black);
// выведем картинку в браузер
header("Content-type: image/png");
imagepng($im);
?>
imageCharUp
Вывод символа вертикально.
Синтаксис:
int imageCharUp(int im, int font, int x, int y, string c, int color)
Функция выводит символ c в вертикальном положении в месте на рисунке, заданном координатами (x, y). Шрифт символа задается параметром font. Если этот параметр принимает значение от 1 до 5, то используются встроенные шрифты. Цвет символа задается параметром color.
Работа со шрифтами TrueType и PostScript Type 1
Библиотека GD поддерживает также работу со шрифтами PostScript и TrueType. Для того чтобы заработали приведенные ниже функции, PHP должен быть откомпилирован и установлен вместе с библиотекой FreeType, доступной по адресу http://www.freetype.org. В Windows-версии PHP она установлена по умолчанию.
imageTTFText
Рисование текста шрифтом TrueType.
Синтаксис:
array imageTTFText(int im, int size, int angle, int x, int y, int color, string fontfile, string text)
Эта функция помещает строку text в изображение im цветом color. Как обычно, color должен представлять собой допустимый идентификатор цвета. Параметр angle задает угол наклона в градусах выводимой строки, отсчитываемой от горизонтали против часовой стрелки. Координаты (x, y) указывают положение так называемой базовой точки строки (обычно это ее левый нижний угол). Параметр size задает размер шрифта, который будет использоваться при выводе строки. fontfile должен содержать имя TTF-файла, в котором и храниться шрифт.
Функция возвращает список из 8 элементов. Первая их пара задает координаты (x,y) верхнего левого угла прямоугольника, описанного вокруг строки текста в изображении, вторая пара - координаты верхнего правого угла, и т.д. Так как в общем случае строка может иметь любой наклон angle, здесь требуются 4 пары координат.
Строка текста text может содержать символьные последовательности UTF-8 (в виде {) для вывода символов с кодами, большими 255.
При использовании отрицательного значения индекса цвета color отключается сглаживание шрифта (antialiasing).