Render.ru

BitmapLayerManager

#1
Никак не пойму...
В сабже имеется вот такая функция:

<string>LoadLayer <string>filename <integer>index <boolean>fullframe

Loads the specified indexed layer from the the specified file. Returns the name of the layer. If fullframe is set to true, loads the layer at the resolution of the full image.

Таки что бы это могло означать? Если она "Returns the name of the layer", то как понимать "loads the layer" ? Куда она его, в таком случае, "loads", и как его оттуда получить? Если функция возвращает всего лишь "the name of the layer", то чем тогда она вообще отличается от:

<string>getLayerName <string>filename <integer>index

Returns the name of the indexed layer in the specified file.

???

На деле получается еще интереснее. Если выполнить
a=BitmapLayerManager.LoadLayer "c:\\somepicture.psd" 1 true
то переменная а получает значение
Bitmap: "c:\somepicture.psd"
то есть, тип ее все ж таки именно битмап, а вовсе не строка,
однако при попытке что-нибудь сделать с оным битмапом,
к примеру узнать его ширину,
возникает
** system exception **

Что бы это все могло означать?

Спасибо.
 

Savin Denis

Модератор форума
Команда форума
Рейтинг
138
#2
Полностью формат PSD не потдерживанется
такую ошибку может вызвать например наличие чистого слоя
надо следить чтоб в файле небыло ничего лишнего
 
#3
>надо следить чтоб в файле небыло ничего лишнего

Но там действительно нет ничего лишнего. При загрузке того же слоя того же файла "ручками" (или, например, через SelectBitmap() ) все работает нормально.
А у вас это работает?
 
#5
Все это очень странно.
При любых действиях с этим примером у меня по-прежнему вылетает системная ошибка. Может, у меня Макс какой-то неправильный? (проверялось на разных машинах, в разных ОСах, Макс, правда, везде один - 5.0)
 
Сверху