JSFL fl.saveDocumentAs();

#flash #extending #jsfl

#flash #расширение #jsfl

Вопрос:

Я пишу скрипт JSFL, который изменяет размеры fla и сохраняет различные версии с добавленными именами.

Я могу получить всплывающее приглашение «Сохранить как», используя fl.saveDocumentAs();

Но, похоже, я не могу заставить flash сгенерировать новое имя для FLA.

Я просто хочу сохранить «document.fla» как «document_foo.fla» (и позже «document_qux.fla»), желательно, не прерывая сценарий с помощью запроса «сохранить как».

Комментарии:

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

Ответ №1:

спасибо, работает только с помощью fl.saveDocument(). Я использовал это, чтобы переименовать его и переключить фокус Flash на новую версию:

 var docURI= fl.documents[0].pathURI;// get nameamp;location of current document
var appendName = "_appended.fla";
docURI=docURI.replace(".fla",appendName);//create appended name for new version
//(do stuff to my fla)
fl.saveDocument(fl.documents[0] ,docURI);//save as new doc name
fl.openDocument(docURI);//open this newly saved document
  

Ответ №2:

Вам не нужно использовать fl.saveDocumentAs().

Если файл никогда не сохранялся или не изменялся с момента последнего сохранения, файл не сохраняется и возвращается значение false . Чтобы разрешить сохранение несохраненного или неизмененного файла, используйте fl.saveDocumentAs() .

Читать — http://help.adobe.com/en_US/flash/cs/extend/WS5b3ccc516d4fbf351e63e3d118a9024f3f-7d12.html

Просто используйте fl.saveDocument после каждого изменения.