Функции Shockwave Flash
PHP предлагает возможность создания файлов Shockwave Flash с помощью модуля libswf,
автор Paul Haeberli. Вы можете загрузить libswf с ftp://ftp.sgi.com/sgi/graphics/grafica/flash.
Если у вас есть libswf, то всё, что вам нужно, это сконфигурировать --with-swf[=DIR], где DIR это местонахождение include и lib-директорий. Директория include
должна содержать файл swf.h, а директория lib должна содержать файл libswf.a. Если
вы распаковали дистрибутив libswf, эти два файла должны находиться в одной
директории. Соответственно, вы должны скопировать их вручную в соответствующие места.
После того как вы успешно установили PHP с поддержкой Shockwave Flash, вы
можете создавать Shockwave-файлы из PHP.
Данное расширение не определяет никакие директивы конфигурации в php.ini.
Перечисленные ниже константы определены данным расширением и могут быть
доступны только в том случае, если PHP был собран с
поддержкой этого расширения или же в том случае, если
данное расширение подгружается во время выполнения.
Пример 1. SWF
<?php
swf_openfile("test.swf", 256, 256, 30, 1, 1, 1);
swf_ortho2(-100, 100, -100, 100);
swf_defineline(1, -70, 0, 70, 0, .2);
swf_definerect(4, 60, -10, 70, 0, 0);
swf_definerect(5, -60, 0, -70, 10, 0);
swf_addcolor(0, 0, 0, 0);
swf_definefont(10, "Mod");
swf_fontsize(5);
swf_fontslant(10);
swf_definetext(11, "This be Flash with PHP!", 1);
swf_pushmatrix();
swf_translate(-50, 80, 0);
swf_placeobject(11, 60);
swf_popmatrix();
for ($i = 0; $i < 30; $i++) {
$p = $i/(30-1);
swf_pushmatrix();
swf_scale(1-($p*.9), 1, 1);
swf_rotate(60*$p, 'z');
swf_translate(20+20*$p, $p/1.5, 0);
swf_rotate(270*$p, 'z');
swf_addcolor($p, 0, $p/1.2, -$p);
swf_placeobject(1, 50);
swf_placeobject(4, 50);
swf_placeobject(5, 50);
swf_popmatrix();
swf_showframe();
}
for ($i = 0; $i < 30; $i++) {
swf_removeobject(50);
if (($i%4) == 0) {
swf_showframe();
}
}
swf_startdoaction();
swf_actionstop();
swf_enddoaction();
swf_closefile();
?> |
|
Примечание:
Поддержка SWF была введена в PHP 4 RC2. libswf не поддерживает Windows. Разработка этой библиотеки остановлена, и
исходный код недоступен для переноса на другие системы.
Более современная поддержка SWF дана в функциях
MING.
- Содержание
- swf_actiongeturl - получает URL из Shockwave Flash-клипа
- swf_actiongotoframe - проигрывает кадр и останавливается
- swf_actiongotolabel - отображает кадр со специфицированной меткой
- swf_actionnextframe - переходит на один кадр вперёд
- swf_actionplay - стартует проигрывание flash-клипа, начиная с текущего кадра
- swf_actionprevframe - переходит на один кадр назад
- swf_actionsettarget - устанавливает контекст акций
- swf_actionstop - останавливает проигрывание flash-клипа, начиная с текущего кадра
- swf_actiontogglequality - переключает высокое/низкое качество
- swf_actionwaitforframe - пропускает акции, если кадр не загружен
- swf_addbuttonrecord - управляет размещением , видом и активной областью текущей кнопки
- swf_addcolor - устанавливает специфицированное rgba-значение глобального цвета дополнения
- swf_closefile - закрывает текущий Shockwave Flash-файл
- swf_definebitmap - определяет растр
- swf_definefont - определяет шрифт
- swf_defineline - определяет линию
- swf_definepoly - определяет многоугольник
- swf_definerect - определяет прямоугольник
- swf_definetext - определяет текстовую строку
- swf_endbutton - заканчивает определение текущей кнопки
- swf_enddoaction - заканчивает ткущую акцию
- swf_endshape - завершает определение текущей фигуры
- swf_endsymbol - заканчивает определение символа
- swf_fontsize - изменяет размер шрифта
- swf_fontslant - устанавливает наклон шрифта
- swf_fonttracking - устанавливает трэкинг текущего шрифта
- swf_getbitmapinfo - получает информацию о растре
- swf_getfontinfo - высота в пикселах заглавной А и х в нижнем регистре
- swf_getframe - получает номер текущего кадра
- swf_labelframe - помечает текущий кадр
- swf_lookat - определяет визуальную трансформацию
- swf_modifyobject - модифицирует объект
- swf_mulcolor - устанавливает специфицированное rgba-значение глобального цвета умножения
- swf_nextid - возвращает id следующего свободного объекта
- swf_oncondition - описывает переход, используемый для переключения списка акций
- swf_openfile - открывает новый Shockwave Flash-файл
- swf_ortho2 - определяет 2D орфографическое отображение координат пользователя в текущий порт просмотра
- swf_ortho - определяет орфографическое отображение координат пользователя в текущий порт просмотра
- swf_perspective - определяет трансформацию проекции перспективы
- swf_placeobject - помещает объект на экран
- swf_polarview - определяет позицию зрителя полярными координатами
- swf_popmatrix - восстанавливает матрицу предыдущей трансформации
- swf_posround - включает или отключает округление трансляции, когда объекты перемещаются или размещаются
- swf_pushmatrix - проталкивает матрицу текущей трансформации обратно в стэк
- swf_removeobject - удаляет объект
- swf_rotate - поворачивает текущую трансформацию
- swf_scale - масштабирует текущую трансформацию
- swf_setfont - изменяет текущий шрифт
- swf_setframe - переключает на специфицированный кадр
- swf_shapearc - рисует дугу окружности
- swf_shapecurveto3 - рисует кубическую кривую Безье (извините, если что не так ... Прим. перев.)
- swf_shapecurveto - рисует квадратную кривую Безье между двумя точками
- swf_shapefillbitmapclip - устанавливает текущий режим заполнения - clipped bitmap
- swf_shapefillbitmaptile - устанавливает текущий режим заполнения - tiled bitmap
- swf_shapefilloff - отключает заполнение
- swf_shapefillsolid - устанавливает текущий стиль заполнения специфицированным цветом
- swf_shapelinesolid - устанавливает стиль текущей линии
- swf_shapelineto - рисует линию
- swf_shapemoveto - перемещает текущую позицию
- swf_showframe - отображает текущий кадр
- swf_startbutton - стартует определение кнопки
- swf_startdoaction - стартует описание списка акций текущего кадра
- swf_startshape - стартует сложную фигуру
- swf_startsymbol - определяет символ
- swf_textwidth - получает ширину строки
- swf_translate - транслирует текущие трансформации
- swf_viewport - выбирает область для последующего рисования
|