Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 22.06.2011, 14:26
Merf вне форума Посмотреть профиль Отправить личное сообщение для Merf Посетить домашнюю страницу Merf Найти все сообщения от Merf
  № 1  
Ответить с цитированием
Merf
 
Аватар для Merf

Регистрация: Nov 2008
Адрес: Ukraine
Сообщений: 88
Отправить сообщение для Merf с помощью ICQ Отправить сообщение для Merf с помощью Skype™
По умолчанию JPGEncoder ошибка

хочу сохранить картинку из флеша. Воспользовался советом из одной из тем на флешере. Класы подключил енкодер добавил все вроде как должно работать. Но при компиляции выдает такую ошибку

Код:
1046: Type was not found or was not a compile-time constant: BitString.
и ведет на вот такую функцию в енкодере

Код AS3:
private function writeBits(bs:BitString):void
        {
            var value:int = bs.val;
            var posval:int = bs.len-1;
            while ( posval >= 0 ) {
                if (value & uint(1 << posval) ) {
                    bytenew |= uint(1 << bytepos);
                }
                posval--;
                bytepos--;
                if (bytepos < 0) {
                    if (bytenew == 0xFF) {
                        writeByte(0xFF);
                        writeByte(0);
                    }
                    else {
                        writeByte(bytenew);
                    }
                    bytepos=7;
                    bytenew=0;
                }
            }
        }
Что тут не так я понятия не имею, может вы подскажите. Проблема у меня или всетаки в енкодере?
__________________
http://merfius.weebly.com/

Старый 22.06.2011, 14:28
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 2  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Не импортировали класс.
__________________
тут я

Старый 22.06.2011, 14:37
Merf вне форума Посмотреть профиль Отправить личное сообщение для Merf Посетить домашнюю страницу Merf Найти все сообщения от Merf
  № 3  
Ответить с цитированием
Merf
 
Аватар для Merf

Регистрация: Nov 2008
Адрес: Ukraine
Сообщений: 88
Отправить сообщение для Merf с помощью ICQ Отправить сообщение для Merf с помощью Skype™
Цитата:
Сообщение от КорДум Посмотреть сообщение
Не импортировали класс.
Может что-то не правильно сделал?

Код AS3:
import com.adobe.images.JPGEncoder
в параметрах публикации указал путь к класу, после вашего совета указал его еще раз, но не помогло
__________________
http://merfius.weebly.com/

Старый 22.06.2011, 14:41
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 4  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Нужно импортировать BitString еще, что вы не сделали. Вероятно он лежит в том же пакете.
__________________
тут я

Старый 22.06.2011, 14:55
NikolyA вне форума Посмотреть профиль Отправить личное сообщение для NikolyA Найти все сообщения от NikolyA
  № 5  
Ответить с цитированием
NikolyA
 
Аватар для NikolyA

Регистрация: Dec 2006
Сообщений: 1,764
http://www.flasher.ru/forum/showpost...71&postcount=2

ну и можно без сервера:

Код AS3:
import flash.utils.ByteArray;
import flash.net.URLRequestHeader;
import flash.net.URLRequestMethod;
import com.adobe.images.JPGEncoder;
 
private function saveImages(event:MouseEvent):void
			{
 
			var temp:BitmapData = new BitmapData(viewer.width, viewer.height);
			temp.draw(viewer);
 
			var image = new Bitmap(temp);
			var jpgimage:JPGEncoder = new JPGEncoder(256);
			var ba:ByteArray = jpgimage.encode(temp);
			var save:FileReference = new FileReference();
			save.save(ba, "image.jpg");
 
			}
и на кнопку вешаем событие:

Код AS3:
saveBtn.addEventListener(MouseEvent.CLICK, saveImages);
__________________
а за окном атлантический океан!

Старый 22.06.2011, 16:22
Merf вне форума Посмотреть профиль Отправить личное сообщение для Merf Посетить домашнюю страницу Merf Найти все сообщения от Merf
  № 6  
Ответить с цитированием
Merf
 
Аватар для Merf

Регистрация: Nov 2008
Адрес: Ukraine
Сообщений: 88
Отправить сообщение для Merf с помощью ICQ Отправить сообщение для Merf с помощью Skype™
Спасибо вам большое, получилось
__________________
http://merfius.weebly.com/

Создать новую тему Ответ Часовой пояс GMT +4, время: 09:47.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
JPGEncoder

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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