Как я могу получить изображение из Open Flash Chart 2? - PullRequest
1 голос
/ 13 июля 2009

Я попробовал учебник из их домашней страницы (http://teethgrinder.co.uk/open-flash-chart-2/adv-upload-image.php),, но это не работает вообще. Моя серверная сторона работает нормально, но когда я пытаюсь получить экземпляр ofc и вызвать post_image, Firefox выдает следующую ошибку «ofc.post_image не является функцией». Есть ли обходной путь для этой проблемы?

Ответы [ 2 ]

1 голос
/ 27 июня 2011

У меня была такая же проблема при попытке обучения. В строке:

x = ofc.post_image( url, 'done', debug );

Я получаю эту ошибку в браузере: Object doesn't support this property or method.

Я нашел проблему в следующих строках:

function findSWF(movieName) {
    if (navigator.appName.indexOf("Microsoft")!= -1) {
        return window[movieName];
    } else {
        return document[movieName];
    }   
}

В проверке if он возвращал return window[movieName] в моем случае, так как мой браузер IE8.

Я только что снял проверку if и просто использовал return document[movieName]:

function findSWF(movieName) {
    return document[movieName]; 
}

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

1 голос
/ 14 июля 2009

У меня была та же проблема, и я решил ее, просто обновив open-flash-chart.swf для первой версии Kvasir (ранее я использовал версию Jörmungandr). Похоже, старая версия была повреждена и не позволяет получить доступ к внешним функциям AS. Мне также нужно было очистить данные кэша и куки в моем браузере (Firefox), чтобы получить новый SWF. У меня возникла новая проблема с получением изображения флэш-карты 2, данные загружаются на мой сервер, и файл png сохраняется в файловой системе, но функция обратного вызова для post_image никогда не запускается, мой код похож на примеры сайтов ofc2:

function done(id){
alert("Finished upload. Id:"+id);}

function post_chart_image(chart_png_name){
url =  context + '/swtMktShare/uploadChartImage.html?chartImgFileName='+chart_png_name;
var ofc = findSWF("my_chart1");
x = ofc.post_image( url, 'done', false);}

На стороне сервера я использую Spring MVC и в качестве ответа я получаю полный путь к сгенерированному png файлу

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