Новые книги

Эта книга-шпаргалка для всех рекламщиков и маркетологов на все времена. Основанная на многолетних исследованиях и практическом опыте. Данная книга помогла бесчисленному количеству людей увеличить продажи товаров и услуг, а также оптимизировать рекламный бюджет. В книге вы найдете более 1000 практических советов и рекламных инструментов. После прочтения этой книги: – вы окончательно разберетесь в типах сайтов, их преимуществах и недостатках; – будете иметь огромный список шаблонов продающих заголовков; получите рекомендации касательно написания текстов; – определитесь, какие рекламные инструменты стоит применять в каждой нише. Если вы занимаетесь рекламой, но у вас не получается достичь желаемых результатов, не стоит расстраиваться. Прочтите книгу, она поможет вам понять возможно допущенные ошибки.
The tutorials start with the most basic Windows program, the windows equivalent of "hello world!", Winnie. Then we move on to a more Generic program, which serves as a skeleton for a simple Windows application. Then we discuss various Controls. Using these controls one can build a complete dialog-based application, whose main window is a dialog. We are then ready to discuss a Generic Dialog, a framework with which one can quickly build specific dialogs.

To do some simple graphics one needs a Canvas object. You use Pens and Brushes to paint on the canvas.

More advanced topics include programming with Threads with a practical example of a Folder Watcher — a program that watches directories for changes.

Modern windows programming requires some knowledge of the Shell API, which leads us to the discussion of OLE and COM. We show how one can encapsulate OLE in C++ to create Smart OLE. OLE is also used in Automation, which lets your application talk to other applications.

Controls are nothing but specialized windows. You can easily create your own controls, as evidenced by the Splitter Bar tutorial.

For graphics programmer, we give a short introduction on using Bitmaps for animation and a more advanced tutorial on using Direct Draw.

Функции Shockwave Flash

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

XCIV. Функции 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. Вы будете удивлены, но для этого понадобится сделать всего лишь:

Пример 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, "Это Flash в 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 - выбирает область для последующего рисования

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