Учебник РНР
Назад Вперёд

LIX. Функции Ming для Flash

Предупреждение!

Это расширение является ЭКСПЕРИМЕНТАЛЬНЫМ. Поведение этого расширения, имена его функций и всё, что задокументировано, может измениться в последующих релизах РНР без предупреждения. Вы предупреждены и можете использовать это расширение только под вашу ответственность.

Введение

Ming это открытый ресурс - библиотека (LGPL), которая позволяет создавать клипы формата SWF ("Flash"). Ming поддерживает почти все возможности Flash 4, включая: фигуры/shapes, градиенты/gradients, растры/bitmaps (pngs и jpegs), morphs ("shape tweens"), текст, кнопки, акции/actions, спрайты/sprites ("movie clips"), потоковый mp3 и трансформации цвета - единственное, что не поддерживается - звуковые события.

Ming это не акроним.

Обратите внимание, что все значения, специфицирующие длину, расстояние, размер и т.и., даны в "twips", twenty units per pixel/20 единиц на пиксел. Это, однако, довольно приблизительные величины, поскольку player масштабирует клип до размера пиксела, специфицированного в тэге embed/object, или всего фрэйма, если не внедрён.

Ming имеет преимущества по сравнению с существующим модулем PHP/libswf. Вы можете использовать Ming везде, где компилируется код, в то время как libswf это ресурс, доступный только для некоторых платформ, и Windows не входит в их число. Ming несколько изолирует от некоторых деталей формата файлов SWF, предоставляя РНР объекты-оболочки для элементов клипа. Также Ming продолжает поддерживаться; если есть какая-то возможность, которой вы не нашли, просто дайте знать по адресу ming@opaque.net.

Ming были введены в PHP 4.0.5.

Установка

Для использования Ming с PHP вам сначала нужно построить и установить Ming-библиотеку. Исходный код и инструкции находятся на домашней странице Ming http://www.opaque.net/ming/ вместе с примерами, небольшим учебником и последними новостями.

Загрузите архив ming. Распакуйте его. Перейдите в директорию Ming. make. make install.

Это построит libming.so и установит его в /usr/lib/ и скопирует ming.h в /usr/include/. Отредактируйте строку PREFIX= в Makefile для изменения директории инсталяции.

встраивание в php (unix)


       mkdir <phpdir>/ext/ming
       cp php_ext/* <phpdir>/ext/ming
       cd <phpdir>
       ./buildconf
       ./configure --with-ming <другие опции конфигурации>

Постройте и установите РНР как обычно, рестартуйте web-сервер, если нужно.

встраивание в php (unix)

Загрузите php_ming.so.gz, распакуйте и скопируйте в вашу директорию РНР-модулей. (Вы можете найти вашу директорию РНР-модулей, запустив php-config --extension-dir). Теперь либо просто добавьте extension=php_ming.so в ваш файл php.ini, либо поместите dl('php_ming.so'); в самом начале ваших Ming-скриптов.

Как использовать Ming

Ming вводит в РНР 13 новых объектов с соответствующими атрибутами и методами. Для использования их вам необходимо знать об объектах.

Содержание
ming_setcubicthreshold - устанавливает cubic threshold (?)
ming_setscale - устанавливает масштаб (?)
ming_useswfversion - использует SWF-версию (?)
SWFAction - создаёт новую Action/Акцию
SWFBitmap->getHeight — возвращает высоту растра
SWFBitmap->getWidth — возвращает ширину растра
SWFBitmap - загружает Bitmap-объект
swfbutton_keypress — возвращает флаг акции для keyPress(char)
SWFbutton->addAction - добавляет акцию
SWFbutton->addShape - добавляет фигуру кнопке
SWFbutton->setAction - устанавливает акцию
SWFbutton->setdown - псевдоним для addShape(shape, SWFBUTTON_DOWN)
SWFbutton->setHit - псевдоним для addShape(shape, SWFBUTTON_HIT)
SWFbutton->setOver - псевдоним для addShape(shape, SWFBUTTON_OVER)
SWFbutton->setUp - псевдоним для addShape(shape, SWFBUTTON_UP)
SWFbutton - создаёт новую кнопку
SWFDisplayItem->addColor - добавляет данный цвет к трансформации цвета данного элемента
SWFDisplayItem->move - перемещает объект в относительных координатах
SWFDisplayItem->moveTo - перемещает объект в глобальных координатах
SWFDisplayItem->multColor - умножает трансформацию цвета элемента
SWFDisplayItem->remove - удаляет объект из клипа
SWFDisplayItem->Rotate - поворачивает объект в относительных координатах
SWFDisplayItem->rotateTo - поворачивает объект в глобальных координатах
SWFDisplayItem->scale - масштабирует объект в относительных координатах
SWFDisplayItem->scaleTo - масштабирует объект в глобальных координатах
SWFDisplayItem->setDepth - устанавливает z-порядок (в стэке)
SWFDisplayItem->setName - устанавливает имя объекта
SWFDisplayItem->setRatio - устанавливает пропорцию объекта
SWFDisplayItem->skewX - устанавливает X-наклон
SWFDisplayItem->skewXTo - устанавливает X-наклон
SWFDisplayItem->skewY - устанавливает Y-наклон
SWFDisplayItem->skewYTo - устанавливает Y-наклон
SWFDisplayItem - создаёт новый объект displayitem
SWFFill->moveTo - перемещает fill-источник
SWFFill->rotateTo - устанавливает fill-поворот
SWFFill->scaleTo - устанавливает fill-масштаб
SWFFill->skewXTo - устанавливает fill x-наклон
SWFFill->skewYTo - устанавливает fill y-наклон
SWFFill - загружает SWFFill-объект
swffont->getwidth — возвращает ширину строки
SWFFont - загружает определение шрифта
SWFGradient->addEntry - добавляет вхождение в gradient-список
SWFGradient - создаёт gradient-объект
SWFMorph->getshape1 - получает дескриптор для начальной фигуры
SWFMorph->getshape2 - получает дескриптор для конечной фигуры
SWFMorph - создаёт новый SWFMorph-объект
SWFMovie->add - добавляет тип и данные в клип
SWFMovie->nextframe - перемещает на следующий фрэйм анимации
SWFMovie->output - выполняет дамп вашего любовно приготовленного клипа
SWFMovie->remove - удаляет экземпляр объекта из display-списка
SWFMovie->save - сохраняет ваш клип в файле
SWFMovie->setbackground - устанавливает цвет фона
SWFMovie->setdimension - устанавливает ширину и высоту клипа
SWFMovie->setframes - устанавливает общее количество фрэймов в анимации
SWFMovie->setrate - устанавливает класс фрэйма анимации
SWFMovie->streammp3 - запускает поток MP3-файла
SWFMovie - создаёт новый movie-объект, представляющий клип SWF версии 4
SWFShape->addFill - добавляет сплошную заливку фигуре
SWFShape->drawCurve - рисует кривую (относительно)
SWFShape->drawCurveTo - рисует кривую
SWFShape->drawLine - рисует линию (относительно)
SWFShape->drawLineTo - рисует линию
SWFShape->movePen - перемещает карандаш фигуры (относительно)
SWFShape->movePenTo - перемещает карандаш фигуры
SWFShape->setLeftFill - устанавливает левый цвет растра
SWFShape->setLine - устанавливает стиль линии фигуры
SWFShape->setRightFill - устанавливает правый цвет растра
SWFShape - создаёт новый shape-объект
SWFSprite->add - добавляет объект в спрайт
SWFSprite->nextframe - перемещает к следующему фрэйму анимации
SWFSprite->remove - удаляет объект из спрайта
SWFSprite->setframes - устанавливает общее количество фрэймов в анимации
SWFSprite - создаёт клип (спрайт)
SWFText->addString - рисует строку
SWFText->getWidth - вычисляет ширину строки
SWFText->moveTo - перемещает карандаш
SWFText->setColor - устанавливает текущий цвет шрифта
SWFText->setFont - устанавливает текущий шрифт
SWFText->setHeight - устанавливает высоту текущего шрифта
SWFText->setspacing - устанавливает spacing текущего шрифта
SWFText - создаёт новый SWFText-объект
SWFTextField->addstring - объединяет данную строку с текстовым полем
SWFTextField->align - устанавливает выравнивание текстового поля
SWFTextField->setbounds - устанавливает ширину и высоту текстового поля
SWFTextField->setcolor - устанавливает цвет текстового поля
SWFTextField->setFont - устанавливает шрифт текстового поля
SWFTextField->setHeight - устанавливает высоту шрифта данного текстового поля
SWFTextField->setindentation - устанавливает отступ первой строчки абзаца
SWFTextField->setLeftMargin - устанавливает ширину левого поля текстового поля
SWFTextField->setLineSpacing - устанавливает межстрочный интервал текстового поля
SWFTextField->setMargins - устанавливает ширину полей текстового поля
SWFTextField->setname - устанавливает имя переменной
SWFTextField->setrightMargin - устанавливает ширину правого поля текстового поля
SWFTextField - создаёт объект текстового поля

Назад Оглавление Вперёд
mssql_select_db Вверхming_setcubicthreshold

Дополнительная информация на сайте script-info.net: скрипт-технологии (JS, VBS, PHP, Perl).