Мне нужно сделать очень простое приложение swf
, которое может отображать серию файлов pdf
. На самом деле мне удалось создать на одном слое интерфейс меню (некоторые кнопки на фрейме 0, которые перенаправляют пользователя на другие рамки, где должен быть показан pdf-файл).загрузить внешнюю swf (FlashPaper pdf) в Flash-проект
Вот мой вопрос:
Мне нужен способ, чтобы прочитать PDF внутри кадра флэш.
Я нашел возможное решение для преобразования pdf в swf с FlashPaper 2
Теперь я хочу знать, как импортировать swf в фрейм.
Чтения некоторого ActionScript 3 руководства я был в состоянии создать контейнер мувиклип (простой прямоугольник), в которую я загрузил файл SWF с этим кодом:
var swf:MovieClip;
var loader:Loader = new Loader();
var defaultSWF:URLRequest = new URLRequest("test.swf"); //test.swf is my converted pdf
loader.load(defaultSWF);
screen_01.addChild(loader); //screen_01 is the container rectangle converted to movieclip
Я использовал контейнер мувиклип означает сохранение другие объекты (кнопки меню) на кадре, и это помогает с позиционированием swf.
Я видел, что можно использовать loader.x
и loader.y
и он работает.
К сожалению, я не был в состоянии контролировать ширину и высоту файла SWF/PDF (loader.width
и loader.height
существует, но если используется причина в швейцарских франков не будет загружен на всех)
Решение:
Я нашел возможное решение на уровне this page.
Идея состоит в том, чтобы изменить масштаб swf
только после завершения процесса загрузки (позиционирование можно выполнить и раньше).
Во всяком случае я должен был использовать Actionscript 2
для этого проекта, потому что FlashPaper
преобразованного pdf
не работает должным образом с AS3
, я не знаю, почему ...
здесь код:
//insert an emplty movieclip to load the swf, I've called it screen_01
var movLoad:MovieClipLoader = new MovieClipLoader();
var myListener:Object = new Object();
myListener.onLoadInit = function(thisMc:MovieClip) {
thisMc._height = 600;
thisMc._width = 900;
thisMc._x = 50;
thisMc._y = 30;
};
movLoad.addListener(myListener);
movLoad.loadClip("folder/flashpaper_converted_pdf.swf.swf",screen_01);
Да, вы должны быть правы (я нашел другое решение, но я буду проверить ваш на моем следующем проекте). В любом случае проблема была в сроках загрузки. Координаты положения можно установить перед загрузкой swf, но масштабирование должно быть выполнено после завершения загрузки. – Mave751