com.adobe.indesign::IDSWFFile: исключение Null при загрузке swf-файлов

#actionscript-3 #flash #adobe-indesign

#actionscript-3 #flash #adobe-indesign

Вопрос:

По сути, это мой класс

 import mx.controls.Image;
public class ImageFrameView extends Image
{
    //Model. Contains x, y, z and z. Url for the png/jpg or swf-file
    private var m_imageFrame:ImageFrame;

    public function ImageFrameView(imageFrame:ImageFrame)
    {
        super();
        m_imageFrame = imageFrame;
        initFrameView();
    }

    private function initFrameView():void
    {
         maintainAspectRatio = false;
         width    = m_imageFrame.width;
         height   = m_imageFrame.height;
         x        = m_imageFrame.x;
         y        = m_imageFrame.y;
         rotation = m_imageFrame.rotation;           
         source   = m_imageFrame.url; //Url points to a handler on the same server which serves images and/or swf-files.
    }
}
  

И он используется подобным образом в классе SpreadView, который расширяет UIComponent

 var imageFrameView:ImageFrameView = new ImageFrameView(contentFrame as ImageFrame);
addChild(imageFrameView);
  

Png и Jpeg работают нормально. И swf-файлы, которые я экспортирую из Indesign CS4 или Indesign CS5, также отлично работают. Но недавно старые swf-файлы, которые были экспортированы с использованием того же метода и параметров (в Indesign CS4) и которые раньше работали, внезапно отказались загружаться, и я получаю следующую ошибку, когда вызывается updateDisplayList для ImageFrameView:

 TypeError: Error #1009: Cannot access a property or method of a null object reference.
    at com.adobe.indesign::IDSWFFile/readConfigurationData()
    at com.adobe.indesign::IDSWFFile()
  

Происходит то, что загруженный swf-файл выдает исключение при попытке прочитать свою собственную конфигурацию.

Все swf-файлы, которые я создавал в прошлом и в настоящем, все еще работают. Все swf-файлы, созданные клиентами в прошлом и настоящем, не работают, даже если они работали в прошлом. Насколько я знаю, swf-файлы создаются с использованием того же метода и параметров.

Может ли произойти какое-то внезапное изменение в Adobe Flash, о котором я не знаю? Я и мой клиент используем Flash 10.1 или выше. Откуда возникает ошибка?

Ответ №1:

Похоже, что причиной является переход страницы и / или скручивание страницы. Я не знаю почему, но когда я отключил опции для переноса страниц, ошибка исчезла при загрузке pdf. Поскольку такие функции в моем приложении бессмысленны, я позабочусь о том, чтобы такие опции были запрещены, когда клиенты экспортируют swf-файлы из indesign.