Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Серверные технологии и Flash (http://www.flasher.ru/forum/forumdisplay.php?f=62)
-   -   Сохранение скриншота ролика посредством PHP (http://www.flasher.ru/forum/showthread.php?t=119864)

Volgar_new 04.01.2009 01:41

Сохранение скриншота ролика посредством PHP
 
Есть готовый флэш ролик, в котором пользователи могут методом драгндроп собирать коллажи. Нужно, чтобы потом они могли сохранить готовый коллаж себе на комп, например в JPG.
Сам ролик трогать не могу, хотя если будут варианты в AS, то спасибо и на этом. Но желательно сохранять посредством PHP.

amexdesign 04.01.2009 03:46

очень сложная вещь, говорю так, потому как сам программировал это. нужны глубокие знания OOP, а именно: BitmapExporter-Класс и FileReference-Класс. поищите, попробуйте разобраться, если что-то будет непонятно, обращайтесь...

etc 04.01.2009 07:11

Цитата:

Сообщение от amexdesign (Сообщение 788007)
очень сложная вещь, говорю так, потому как сам программировал это. нужны глубокие знания OOP, а именно: BitmapExporter-Класс и FileReference-Класс. поищите, попробуйте разобраться, если что-то будет непонятно, обращайтесь...

Хе-хе, BitmapExporter? Ну да, необходимы оочень глубокие знания, чтобы стянуть класс где-нибудь на задворках интернета и используя примеры вместе с ним, подпилить рашпилем под свой сайт. :quiet:
Интересно, сколько времени займёт разработка с нуля у вас?
Понимаете ли, сложность — вещь относительная. Очень относительная.

Volgar_new 04.01.2009 11:00

Спасибо, amexdesign, BitmapExporter видимо действительно подойдет. Посмотрел примеры, довольно сложно для меня, но попробую разобраться.

Ещё добавочный вопросик, обратный. А как можно импортировать со стороны пользователя картинку, чтобы она отображалась во флэше. В принципе, форму загрузки изображения можно сделать на PHP, только как потом передать готовый линк во флэш и его загрузку?

amexdesign 04.01.2009 18:21

Цитата:

Хе-хе, BitmapExporter? Ну да, необходимы оочень глубокие знания, чтобы стянуть класс где-нибудь на задворках интернета и используя примеры вместе с ним, подпилить рашпилем под свой сайт.
Уважаемый __etc! Судя по тому, что вы являетесь модератором этого форума, можно исходить из того, что ваши знания флэша и всего что с ним связанно довольно глубоки. Исходя из этого я думаю вы знаете, что BitmapExporter-Класс был разработан господином Марио Клингельманом(Mario Klingemann, больше известен в флэш-кругах под кличкой "quasimondo"), который по иогам Adobe MAX 2007 Europe-фестиваля, на который замечу приглашаются только лучшие флэшеры Европы, был причислен к так называемой "флэш-элите", и замечу, за свои разработки на этой стязе. Все свои кодовые разработки он выставляет на своём сайте для всеобщего пользования. Честь ему и хвала, так как все мы, я имею ввиду флэш-дизайнеры и программисты находимся в постоянном процессе обучения, и не зазорно поучиться у тех, кто умеет что-то делать лучше чем ты сам, не правда ли?
Не думаю что можно отнести господина Клингельмана к упомянутым вами "задворках интернета", хотя таковые имеют место быть.

Изначально, да в общем то и до сих пор, BitmapExporter-Класс был так спрограммирован, чтобы заданное место рабочего стола копировалось и загружалось в виде .jpg-файла в папку на сервере а затем открывалось в новом окне браузера. Как вы думаете, насколько глубоки должны быть знания ООР, чтобы дополнить этот класс так(не меняя его структуру, так как он прекрассно выполняет свои функции), чтобы этот .jpg-файл не открывался в новом окне браузера, а загружался на комп юзера? Думаю рашпиля будет недостаточно, по той простой причине, что примеров всего лишь один и одна ошибочка в дополнениях сделает весь Класс просто непригодным.

Цитата:

Интересно, сколько времени займёт разработка с нуля у вас?
Не обязательно разробатывать с нуля что-то, когда есть люди, у которых можно поучиться, для чего например и существует данный форум.
Мне лично потребовалось 3 дня(с тестированием), чтобы довести этот класс до выше описанного состояния, а до этого 6 лет работы с флэшем, чтобы научиться вообще разбираться с Классами в ООР.

Цитата:

Понимаете ли, сложность — вещь относительная. Очень относительная.
по моему сложность - вещь не "относительная", а "постоянная", или она есть, или её нет. Мне ещё ни разу не приходилось слышать выражений типа: "У меня полу-сложности"

Цитата:

Ещё добавочный вопросик, обратный. А как можно импортировать со стороны пользователя картинку, чтобы она отображалась во флэше. В принципе, форму загрузки изображения можно сделать на PHP, только как потом передать готовый линк во флэш и его загрузку?
в папке на диске С/:, в которой лежит флэш, есть под-папка "Samples and Tutorials", в ней папка "Samples", в ней папка "ActionScript", а там папка "FileUpload"... наглядно показанно, как это функционирует...

etc 04.01.2009 18:33

Цитата:

Сообщение от amexdesign (Сообщение 788069)
Как вы думаете, насколько глубоки должны быть знания ООР, чтобы дополнить этот класс так(не меняя его структуру, так как он прекрассно выполняет свои функции), чтобы этот .jpg-файл не открывался в новом окне браузера, а загружался на комп юзера?

Добавить единственную строчку в php-файл и изменить одну-две в BitmapExporter? :quiet:
Минуты две, я думаю. Вместе с ковырянием в носу.

Знаете, даже FileReference вообще тут не уперся. Ну не нужен и всё, потому как отдать изображение на сохранение браузеру php-скрипт может вполне самостоятельно, без участия флеша с какой-либо стороны.

з. Ы. Относительность сложности я имел ввиду относительно знаний того, кто про сложности говорит. Для человека А сделать одну вещь будет сложно, а для человека Б легко и непринужденно.

wvxvw 04.01.2009 19:30

[offtopic]
из последней строчки следует, что __etc -- человек Б.
[/offtopic]
По поводу топа: вы хоть версию языка уточняли бы...

amexdesign 05.01.2009 00:27

Цитата:

Добавить единственную строчку в php-файл и изменить одну-две в BitmapExporter?
Минуты две, я думаю. Вместе с ковырянием в носу.
ВАУ! Очень "впечатлительно"... для newby, а где ж конструктивное предложение по решению задачки, ради которой Volgar_new ваще создал этот топик? Я сделал одно, дело за вами, а то создаётся впечатление, что вы решили прыткому новичку вашего форума указать ему, кто здесь имеет право на безоговорочно-правильное мнение...

Цитата:

Знаете, даже FileReference вообще тут не уперся. Ну не нужен и всё, потому как отдать изображение на сохранение браузеру php-скрипт может вполне самостоятельно, без участия флеша с какой-либо стороны.
насчёт окна браузера верно, там совершенно не нужна функция "Download"... а теперь прочтите ещё раз вопрос Volgar_new, он хотел бы, чтобы юзер имел возможность вызгружать составленный коллаж на свой комп, из ФЛЭША. Функцию Download из ФЛЭША берёт на себя FileReference-Классе. Вот пример:
Код AS1/AS2:

slideShowBtnHolder.download_btn.onRelease = function(){
        Download();
}
var listener, fileRef;
function Download ( sFile:String ) {
        import flash.net.FileReference;
        listener = new Object();
    fileRef = new FileReference();
        listener.onSelect = function(file:FileReference):Void {
                trace("onSelect: " + file.name);
        _root.bla.text = "onSelect: " + file.name;
    }
    listener.onCancel = function(file:FileReference):Void {
        trace("onCancel");
    }
    listener.onOpen = function(file:FileReference):Void {
        trace("onOpen: " + file.name);
        _root.bla.text = "onOpen: " + file.name;
    }
    listener.onProgress = function(file:FileReference, bytesLoaded:Number, bytesTotal:Number):Void {
        trace("onProgress with bytesLoaded: " + bytesLoaded + " bytesTotal: " + bytesTotal);
    }
    listener.onComplete = function(file:FileReference):Void {
        trace("onComplete: " + file.name);
    }
    listener.onIOError = function(file:FileReference):Void {
        trace("onIOError: " + file.name);
    }
    fileRef.addListener(listener);
        fileRef.download("BILDER/pressemeldungen/meldung_0/fullview/" +ct+ ".jpg");
        trace(ct);
}

этот код скачивает актуальную фотку из ImageGalery, которая перед этим была загруженна во флэш посредством XML. Это означает, что эта фотка уже несёт в себе информацию о своей ширине, высоте и самое главное инфу о цветовой гамме каждого отдельного пикселя. Составленный на Stage во флэше коллаж не имеет такой информации, пока ему не "прикажут" это сделать посредством АS. Вот тут и начинает свою работу BitmapExporter-Класс.as. Он передаёт инфу о ширине и высоте Stage-Area, которую выбирает юзер, а самое главное в нём прописывается функция сканирования всех пикселей заданного Stage-Area на предмет цветов и колличества этих пикселей.
Как-то это звучит не очень то просто, а то тогда бы Volgar_new не обращался бы в этот форум, а тоже бы ковырнул бы пару раз и замастырил бы по быстренькому...

Вы подкиньте примерчик, от которого всем станет замечательно... не создавайте иллюзию, что стоит только ковырнуть... надо ногами по земле ходить, не у всех ещё такое "сияние ареола" над головой...

etc 05.01.2009 01:38

Цитата:

Сообщение от amexdesign (Сообщение 788127)
он хотел бы, чтобы юзер имел возможность вызгружать составленный коллаж на свой комп, из ФЛЭША. Функцию Download из ФЛЭША берёт на себя FileReference-Классе.

Цитирую (важное выделено):
Цитата:

Сам ролик трогать не могу, хотя если будут варианты в AS, то спасибо и на этом. Но желательно сохранять посредством PHP.
И с чего вы взяли, что именно из флеша надо сохранять — хз.

amexdesign 05.01.2009 17:15

Цитата:

И с чего вы взяли, что именно из флеша надо сохранять — хз.
Цитирую (важное выделено):
Цитата:

Есть готовый флэш ролик, в котором пользователи могут методом драгндроп собирать коллажи.
если новый коллаж лежит на Stage во флэш-ролике, и заметьте пока ещё, то есть на момент создания, только там и больше НИГДЕ, то из чего ж его нужно сохранять?

Добавлено через 9 минут
Цитата:

Сам ролик трогать не могу, хотя если будут варианты в AS, то спасибо и на этом. Но желательно сохранять посредством PHP.
если ему нужен хотя бы AS, то ему так или так придётся посредством import загружать этот AS в ролик, а это как, тут не крутись, "трогание".
Если же у него нет исходника, а только .swf, то он может ваще забыть обо всех прениях, здесь произошедших...


Часовой пояс GMT +4, время: 01:29.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.