Здравствуйте Гость ( Вход | Регистрация )

>  Просьба

не забывайте благодарить (+1 к репутации) тех, кто реально оказал вам помощь в вашем вопросе.

 
Reply to this topicStart new topic
> Сохранить данные в тхт и считать их, цветовая палитра
kovblood 
26.09.2012, 7:00
Отправлено #1


Member
*

Сообщений: 35
Регистрация: 17.02.2009

Поблагодарили: 13 раз(а)

Создал палитру цветов, которая создает эффект Fill, или меняет его если он есть... если нажата галочка изменяете цвет палитры, если нет, то создается филл цвета этой кнопки... в общем проблема в следующем, пока толку от такой палитры нету если он данные цвета не пишет в файл, так как при перезагрузки панели или АЕ все сбрасывается.. как записать в файл и считать с него сразу же ?

закидывать файлом в папку scriptUI, для new window не стал писать, уже влом было)

function myScript(thisObj) {
var myPanel = thisObj;
b1Panel = myPanel.add("group");
b2Panel = myPanel.add("group");
myPanel.orientation = 'column'
myPanel.alignChildren = ['left', 'top']
btn1 = b1Panel.add ("button", [0,0,20,20], "");
btn2 = b2Panel.add ("button", [0,0,20,20], "");
check = myPanel.add ("checkbox", undefined, "Edit");
function ColorPicker1() {
var defaultColor =eff.property(3).value;
var colorInt = 255 * (65536 * defaultColor[0] + 256 * defaultColor[1] + defaultColor[2]);
var c1 = $.colorPicker(colorInt);
if (c1 == -1) return;
var r1 = ((c1 >> 16) & 0xFF) / 255;
var g1 = ((c1 >> 8) & 0xFF) / 255;
var b1 = (c1 & 0xFF) / 255;
return rgb1 = [r1, g1, b1];
}
function ColorPicker2() {
var defaultColor =eff.property(3).value;
var colorInt = 255 * (65536 * defaultColor[0] + 256 * defaultColor[1] + defaultColor[2]);
var c2 = $.colorPicker(colorInt);
if (c2 == -1) return;
var r2 = ((c2 >> 16) & 0xFF) / 255;
var g2 = ((c2 >> 8) & 0xFF) / 255;
var b2 = (c2 & 0xFF) / 255;
return rgb2 = [r2, g2, b2];
}
btn1.onClick = function () {
if (check.value == true){
ColorPicker1()
b1Panel.graphics.backgroundColor = b1Panel.graphics.newBrush (b1Panel.graphics.BrushType.SOLID_COLOR, rgb1);
} else {
comp = app.project.activeItem;
myLayer = comp.selectedLayers[0];
eff =myLayer.Effects.Fill
if (myLayer.Effects.Fill) {
comp = app.project.activeItem;
myLayer = comp.selectedLayers[0];
eff =myLayer.Effects.Fill
eff =myLayer.Effects.Fill
eff.property(3).setValue(rgb1);
} else {
eff =myLayer.Effects.addProperty("ADBE Fill");
eff.property(3).setValue(rgb1);
}}}

btn2.onClick = function () {
if (check.value == true){
ColorPicker2()
b2Panel.graphics.backgroundColor = b2Panel.graphics.newBrush (b2Panel.graphics.BrushType.SOLID_COLOR, rgb2);
} else {
comp = app.project.activeItem;
myLayer = comp.selectedLayers[0];
eff =myLayer.Effects.Fill
if (myLayer.Effects.Fill) {
comp = app.project.activeItem;
myLayer = comp.selectedLayers[0];
eff =myLayer.Effects.Fill
eff =myLayer.Effects.Fill
eff.property(3).setValue(rgb2);
} else {
eff =myLayer.Effects.addProperty("ADBE Fill");
eff.property(3).setValue(rgb2);
}}}


myPanel.layout.layout(true);
myPanel.layout.resize();
myPanel.onResizing = myPanel.onResize = function () {this.layout.resize();
}
}
myScript(this);


добавлено через 3 часа 28 секунд:

или хотя бы подскажите как считать из тхт файла число и приравнять к позишну, так как у него массив, а файл вида "234.3, 456.5, 224.5", то есть через запятую координаты, а не построчно!
пытаюсь вот так

var comp = app.project.activeItem;
var theFile = new File ("/g/proba1.txt");
theFile.open("r");
str = theFile.read();
alert(str)
comp.selectedLayers[0].position.setValue(str)
theFile.close()

причем alert показывает без проблем, а позишн ругается(

добавлено через 6 часов 7 минут:

мозг кипит, но понял как, вот пока бета версия палитры, кому интересно:
http://www.sendspace.com/file/3n50q6
сохранить в scriptUI panels папку, перезагрузить АЕ и в window достать эту панель принцип действия такой, это палитра цветов, пока из двух цветов, при включенной галочки настраиваешь цвет на кнопке, при выключенной назначается на слой как эффект филл.... для наглядности щас первая кнопка сохраняется в файл и запоминает цвет даже когда выключаешь комп =) вторая не сохраняется

User is offlineProfile CardPMGo to the top of the page
Репутация:   6  
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:


 



- Упрощённая версия Сейчас: 15.11.2019, 5:27