java爱好者
Uid: 140648
注册日期: 2010-01-12, 13:36
来自: 余姚
年龄: 34
感谢: 267
381 个帖子获得 891 次感谢
现金: 1854金币
资产: 1954金币
声望: 11
|
javascript 脚本 初始
先看图
QQ截图20211230233218.png
脚本内容如上图
1.在任意位置添加 文字 矩形 线条
2.可以群组 也可以结合
3.每个函数都写了例子 详细的不能再详细了.
4.直接把main.js 扔进去就可以 (前提有3个画板,或者把代码改了)
5.如果一点不懂 请先 新建 3个画板 因为脚本例子里用到了 再运行mian.js
1. 文字前面有 // 表示不运行
2. 文字被 /* */ 包裹 表示不运行
3. 对象.英文动词() 表示方法
3.1 obj.work() 表示运行 work方法
4. 对象.名词 表示属性
4.1 obj.left 表示obj的左边坐标
希望每个看到此贴的人都能复现,通过组合写出自己希望的脚本
此贴 里面用到的函数
写一个 定咬口的功能(缺一个修改画板尺寸) 应该不过分
在画板 加个字 画条线 随便玩玩
PHP 代码:
// 创建的函数 比如 矩形 文本 线条
#include
"utils/create.js";
// 文件的函数 比如 获取文件名
#include
"utils/file.js";
// 判断的函数
#include
"utils/judgement.js";
// 图层函数 比如 创建图层
#include
"utils/layer.js";
// 列表函数 比如 复制列表
#include
"utils/list.js";
// 修改函数 比如 修改坐标 尺寸
#include
"utils/set.js";
// 以下是逐一使用
info2 = ''
/**
* 1. artboard.js
* 这里没有引用 artboard.js
* 因为 create.js 里面包含了 此js
* 所以 无需引用
*/
artboard_info = '以下是artboard.js\n'
artboard = Artboard()
artboard_info += 'left:' + artboard.left + '\n';
artboard_info += 'top:' + artboard.top + '\n';
artboard_info += 'right:' + artboard.right + '\n';
artboard_info += 'bottom:' + artboard.bottom + '\n';
artboard_info += 'width:' + artboard.width + '\n';
artboard_info += 'height:' + artboard.height + '\n';
artboard_info += 'centerX:' + artboard.centerX + '\n';
artboard_info += 'centerY:' + artboard.centerY + '\n';
info2 += artboard_info+'\n\n';
/**
* 2. file.js
*
*/
file_info = '以下是file.js\n'
//2.1 保存文件
file_save_pdf('C:/Users/Administrator/Desktop/file_save_pdf.pdf')
//2.2 文本存txt
file_words_save_txt('C:/Users/Administrator/Desktop/file_words_save_txt.txt', 'dj\r\nll简单\r\n123')
//2.3 列表存txt
file_list_save_txt('c:/Users/Administrator/Desktop/file_list_save_txt.txt', ['中文CPC', 'https://www.cnprint.org/bbs/'])
//2.4 获取pdf路径
file_info += 'get_pdf_name:' + get_pdf_name() + '\n'
//2.5 获取ai路径
file_info += 'get_ai_name:' + get_ai_name() + '\n'
//2.6 获取txt路径
file_info += 'get_txt_name:' + get_txt_name() + '\n'
//2.7 获取文件名称不带后缀
file_info += 'get_name_no_suffix:' + get_name_no_suffix() + '\n'
//2.8 获取文件名称
file_info += 'get_name:' + get_name() + '\n'
//2.9 获取父路径
file_info += 'get_parent:' + get_parent() + '\n'
info2 += file_info;
/**
* 3. layer.js
*
*/
/**
sels = doc.selection;
//3.1 单个图形移动到指定图层
obj_move_to_active_layer(sels[0],doc.activeLayer)
//3.2 一堆(列表)图形移动到指定图层
objs_move_to_active_layer(sels,doc.layers[0])
//3.3 选择 指定图层 所有内容
layer_all_selected(doc.activeLayer)
//3.4 创建图层
create_layer()
*/
/**
* 4. list.js
*
*/
/**
sels = doc.selection;
// 4.1 复制列表 返回一个新列表
new_list = list_duplicate(sels);
// 4.2 复制列表 返回一个新列表 并且选中 新的列表
new_list = list_duplicate_and_selected(sels);
// 4.3 列表群组
list_to_group(sels);
*/
/**
* 5. set.js
*/
/**
sels = doc.selection;
// 填个色
set_color_fill(sels[0],create_color())
// 填个描边色
set_color_stroke(sels[0],create_color())
// 设置坐标
set_position_xy(sels[0],20,20)
// 设置尺寸
set_size_wh(sels[0],20,20)
// 取消选择
set_selection_null();
*/
/**
* 6. create.js
*/
sels = doc.selection;
// 6.1 创建颜色
color_red = create_color('', 0, 100, 100, 0);
if (sels.length > 0) {
set_color_fill(sels[0], color_red)
color_black = create_color('', 0, 100, 100, 0);
set_color_fill(sels[0], color_black)
color_485C = create_color('pt', 0, 100, 95, 0, '485C', 100);
set_color_fill(sels[0], color_485C)
color_485C_50 = create_color('pt', 0, 100, 95, 0, '485C', 50);
set_color_fill(sels[0], color_485C_50)
color_nocolor = create_color('nocolor');
set_color_fill(sels[0], color_nocolor)
color_reg = create_color('reg');
set_color_fill(sels[0], color_reg)
}
//6.2 创建线条
// 温馨提示 ai的 原点在 画板的左上角
/**
* 6.2.1
* 1.在 doc下创建 线条
* 2.第一点绝对坐标 (10,10)
* 3.第二点绝对坐标 (30,30)
* 4.线条粗细 0.1mm
* 5.第二点的坐标是 绝对坐标
* 6.颜色为红色
*/
create_line(doc, 10, 10, 30, 30, 0.1 * pt, 'abs', color_red)
//第二点的坐标(20,5)[相对于第一点]
create_line(doc, 0, 0, 20, 5, 0.1 * pt, 'relative', color_red)
//此函数最简单的写法 为啥可以这样写 因为设置了默认值
create_line('', 10, 10, 30, 0)
/**
* 6.2.2
* 1.在一开始创建了一个 artboard
* 2.配合 画板 使用 创建线条
* 3.下面例子 在画板的左下教画脚线
* 4.并且是群组的
*/
g = doc.groupItems.add();
jx = 3 * pt
create_line(g, artboard.left - jx, artboard.bottom, -jx, 0, 0.1 * pt, '', create_color('reg'));
create_line(g, artboard.left, artboard.bottom - jx, 0, jx, 0.1 * pt, '', create_color('reg'));
create_line(g, artboard.left - jx, artboard.bottom - jx, -jx, 0, 0.1 * pt, '', create_color('reg'));
create_line(g, artboard.left - jx, artboard.bottom - jx, 0, jx, 0.1 * pt, '', create_color('reg'));
/**
* 6.2.3
* 1.在一开始创建了一个 artboard
* 2.配合 画板 使用 创建线条
* 3.下面例子 在画板的右下教画脚线
* 4.并且组合的
*/
c = doc.compoundPathItems.add();
create_line(c, artboard.right + jx, artboard.bottom, jx, 0, 0.1 * pt, '', create_color('reg'));
create_line(c, artboard.right, artboard.bottom - jx, 0, jx, 0.1 * pt, '', create_color('reg'));
create_line(c, artboard.right + jx, artboard.bottom - jx, jx, 0, 0.1 * pt, '', create_color('reg'));
create_line(c, artboard.right + jx, artboard.bottom - jx, 0, jx, 0.1 * pt, '', create_color('reg'));
//6.3 创建矩形
create_rect('', 0, 0, 5 * pt, 10 * pt, 0.1, 0, create_color('', 100, 0, 100, 0), create_color('nocolor'))
/**
* 6.3.1 创建10x10mm矩形 且 四周放大 3mm
*/
create_rect('', 10 * pt, 0, 10 * pt, 10 * pt, 0.1, 3 * pt, create_color('', 0, 0, 100, 0), create_color('nocolor'))
/**
* 6.3.1 创建10x10mm矩形 且 四周缩小 3mm
*/
create_rect('', 30 * pt, 0, 10 * pt, 10 * pt, 0.1, -3 * pt, create_color('', 0, 0, 100, 0), create_color('nocolor'))
//6.4 创建跟画板相关的矩形 (开挂了)
line_width = 0.1 * pt;
/**
* 在 当前画板创建一个矩形
*/
create_rect_with_artboard('', 0, 0, 50, 50, line_width, 0, regColor, create_color('nocolor'), new Artboard())
/**
* 在 第二个画板 创建一个矩形
*/
create_rect_with_artboard('', 0, 0, 50, 50, line_width, 0, regColor, create_color('nocolor'), new Artboard(1))
/**
* 在每个画板创建一个矩形
* 并且 尺寸等于画板
*/
for (i = 0; i < doc.artboards.length; i++) {
create_rect_with_artboard('', 0, 0, 'artboard_width', 'artboard_height', line_width, 0, create_color('nocolor'), create_color('', 0, 100, 0, 0), new Artboard(i))
}
/**
* 在每个画板创建一个矩形
* 并且 尺寸小画板3
*/
for (i = 0; i < doc.artboards.length; i++) {
create_rect_with_artboard('', 0, 0, 'artboard_width', 'artboard_height', line_width, -3 * pt, create_color('nocolor'), create_color('', 0, 100, 0, 0), new Artboard(i))
}
/**
* 在每个画板创建一个矩形
* 并且 尺寸大画板3
*/
for (i = 0; i < doc.artboards.length; i++) {
create_rect_with_artboard('', 0, 0, 'artboard_width', 'artboard_height', line_width, 3 * pt, create_color('nocolor'), create_color('', 0, 100, 0, 0), new Artboard(i))
}
/**
* 在每个画板创建一个矩形
* 并且 尺寸 较 画板 0 3 3 3
*/
for (i = 0; i < doc.artboards.length; i++) {
r1 = create_rect_with_artboard('', 0, 0, 'artboard_width', 'artboard_height', line_width, 3 * pt, create_color('nocolor'), create_color('', 0, 100, 0, 0), new Artboard(i))
set_size_wh(r1, r1.width - 3 * pt, r1.height)
r1.left += 3 * pt;
}
// 6.5 创建文本
/**
* 创建一个文本 并且转曲
* 完了 在改成蓝色
*/
t = create_text('', '你在就好了', 'MicrosoftYaHei', 24, create_color('pt', 100, 100, 0, 0, 'cut', 100), true)
set_color_fill(t, create_color('', 100, 0, 0, 0))
/**
* 创建一个文本
* 完了 再移动到 画板 3 并且居中
*/
t2 = create_text('', '你在就好了', 'MicrosoftYaHei', 24, create_color('pt', 100, 100, 0, 0, 'cut', 100))
artboard = new Artboard(2)
set_position_xy(t2, artboard.centerX - t2.width / 2, artboard.centerY + t2.height / 2)
t3 = create_text('', info2, 'MicrosoftYaHei', 24, create_color('pt', 100, 100, 0, 0, 'cut', 100))
set_position_xy(t3,100,100)
|