Доступ к классу JpegEncoder из JavaScript в приложении Adobe AIR - PullRequest
4 голосов
/ 01 октября 2011

Мне нужно кодировать объект BitmapData с помощью JPegEncoder в приложении Adobe AIR с использованием JavaScript

Я пытаюсь создать объект JpegEncoder

var encoder=new window.runtime.mx.graphics.codec.JPEGEncoder()

и получаю ошибку

TypeError: Результат выражения 'window.runtime.mx.graphics.codec.JPEGEncoder' [] не является конструктором.

Я не уверен, что сделал что-то не такили невозможно получить доступ к этому классу Это мой заголовок mxml

<?xml version="1.0" encoding="utf-8" standalone="no"?>
<application xmlns="http://ns.adobe.com/air/application/2.6">

Обновление: я обнаружил, что вам нужно добавить ссылку на swf / swc, здесь приведен фрагмент кода для приложения, которое используетrpc

<script type="application/x-shockwave-flash" 
src="lib/air/swf/framework/framework/library.swf"></script>
<script type="application/x-shockwave-flash" 
src="lib/air/swf/framework/rpc/library.swf"></script>

Я пытался добавить mx вместо rpc, но это не работает, я думаю, если мне нужно развернуть файл mx.swc с приложением? (я думаю, что это не нужно) илиможет быть, он не может разрешить этот путь

Я решил это путем развертывания файла framework.swf вместе с приложением, но можно ли это сделать без него? Этот файл присутствует на клиентских машинах?

1 Ответ

0 голосов
/ 01 октября 2011

Не уверен, почему 'window.runtime' ...

с использованием xmlns:mx="http://www.adobe.com/2006/mxml" и явным импортом класса отлично работает для меня ...
И вы также получите предупреждение компилятора о не указании типа для переменной, т.е. вы хотите:

import mx.graphics.codec.JPEGEncoder;

var encoder:JPEGEncoder = new JPEGEncoder();

И пожалуйста - я видел очень много AS-кода, который полагается на то, что для завершения оператора не требуется точка с запятой - используйте их - FB ide гораздо приятнее, если вы делаете (автокоррекция отступа и т. Д.), А не упомянуто, что это часто приводит к смешанному «использованию» с некоторыми строками, использующими его, но нет - я бы хотел, чтобы Adobe удалил эту «функцию»

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...