AI脚本选择相同重叠文本 以避免文本对象重叠的现象

所属分类: 平面设计 / Illustrator教程 阅读数: 472
收藏 0 赞 0 分享

脚本之家的朋友们,大家好。我是脚本之家会员胡说八道。今天给大家带来的这个教程像脚本之家的朋友们介绍用AI脚本选择相同重叠文本,难度中等。算是和朋友们分享一个技巧吧!

该脚本可以选择重叠的文本对象,以避免文本对象重叠的现象产生。
注意:文本对象必须相同,即内容、大小写。

要用“文件-脚本”来使用,以CS3为例应放在"C:\Program Files\Adobe\Adobe Illustrator CS3\预设\脚本"下。
当然,也可以放置在其他文件夹中,通过Ctrl+F12定位到脚本所在处来使用。
复制以下全部文字到记事本中,保存为以.js结尾的脚本文件(如:脚本.js)即可。


复制代码
代码如下:
/////////////////////////////////////////////////////////////////
//Select Replicated (Overlaping) Text Items v.1 -- CS,CS2
//>=--------------------------------------
// This script removes all duplicate overlaping text items from a document.
// The ONLY parameters it checks are top and left coordinates, and text contents.
// Anchor points within one point of each other are considered the same.
// (tolerance can be adjusted by changing the 'tolerance' value.)
//
// The lower duplicate objects are selected for manual removal.
//
//>=--------------------------------------
// JS code (c) copyright: John Wundes ( john@wundes.com ) www.wundes.com
//copyright full text here: http://www.wundes.com/js4ai/copyright.txt
//////////////////////////////////////////////////////////////////
var selName = "仅本文档中)";
if(selection.length >0){
selName = "current selection";
var sel= activeDocument.selection;
var selectedTextFrames = new Array(0);
for (var all in sel){
if(sel[all].typename == "TextFrame"){
selectedTextFrames.push(sel[all]);
}
}
sel = selectedTextFrames;
} else{
var sel= activeDocument.textFrames;
}
var dupeTextFrames= new Array(0);
var tolerance = 1;
var slen = sel.length;
for(var all=0; all checkDupe(sel,all);
}
//
alert(dupeTextFrames.length + " 个重叠的相同文本对象被找到("+selName+"");
if(dupeTextFrames.length>0){
activeDocument.selection = [];
for (all in dupeTextFrames){
dupeTextFrames[all].selected = true;
}
}
//---------------------------------------
function checkDupe(ob,n){
//t == objects so far
for(var t=0; t <n></n> if(ob[t].typename == "TextFrame"){
if (isWithin(ob[n].left,ob[t].left,tolerance) &&
isWithin(ob[n].top,ob[t].top,tolerance) &&
ob[n].contents == ob[t].contents){
dupeTextFrames.push(ob[n]);
break;

}
}
}
}
function isWithin(YposA,YposB,tol){
if(YposA==YposB){return true};
if(findDiff(YposA,YposB) return true;
}
return false;
}
function findDiff(a,b){
if( a>0 && b>0 && b>a ||
a<0 && b>0 ||
a<0 && b<0 && a>b ){
return Math.abs(b-a);
}
return Math.abs(a-b);
}

更多精彩内容其他人还在看

Illustrator CS3把作品转化和编辑为灰度模式

为了出版广告、变换LOGO样式,甚至就是为了尝试与从不同,我们有时候需要把AI文件转化为灰度模式。在AI CS3中有不少简便的方法把作品转化和编辑为灰度。
收藏 0 赞 0 分享

Illustrator 制作web 2.0风格标签

我不知道 web 2.0 风格将会风行多久。一方面,它代表着当前的流行趋势;另一方面,它又体现着对新技术新风格的探索。无论如何,大众对 web 2.0 风格依旧需求强烈,因而写篇制作一流 web 2.0 风格标签的教程很有必要。
收藏 0 赞 0 分享

Illustrator基础教程之简单制作金属纹理

Vectips 纹理教学周的第二篇教程是金属纹理。如同前篇水质感纹理教程一样,制作金属纹理的技巧也是利用了AI的效果菜单中的效果。
收藏 0 赞 0 分享

Illustrator CS4 绘制覆盖着雨滴窗口

使用简单的工具,加上网格渐变,学习在adobe illustrator中绘制“覆盖着雨滴窗口”的壁纸。
收藏 0 赞 0 分享

Illustrator 绘制透明质感绿色金属标志

本教程主要用Illustrator制作透明质感立体标志,这个例子我们将一个商品的标志放大,制作出它的透明质感立体效果,通过对这个实例的学习,将对你制作按钮、标志以及类似的操作用很大的帮助。
收藏 0 赞 0 分享

Illustrator 绘制透明气泡组成的心形

本例介绍运用AI简单四步做一个漂亮的透明气泡,在本AI实例教程中我们将学习如何运用内发光、蒙板、羽化、渐变填充等方法简单制作出漂亮的透明泡泡效果,希望能给朋友们带来帮助~~
收藏 0 赞 0 分享

Illustrator 绘制漂亮的透明气泡

本例介绍运用AI简单四步做一个漂亮的透明气泡,在本AI实例教程中我们将学习通过绘制一个圆形,然后再运用内发光、羽化、外发光等方法简单制作出漂亮的透明泡泡效果,希望能给朋友们带来帮助
收藏 0 赞 0 分享

Illustrator 绘制可爱卡通宝宝

从本次开始我将向您详细介绍用Illustrator软件绘制人物的方法,我们将从婴儿开始,之后是儿童,其次是青年,再有就是成年、中年以及老年人。
收藏 0 赞 0 分享

Illustrator 绘制绿叶环保的精致货牌

本教程主要用Illustrator制作漂亮的新货牌.
收藏 0 赞 0 分享

Illustrator 绘制金属质感的小闹钟

本例介绍运用AI的渐变工具来绘制金属质感的小闹钟,在教程中我们将学习到通过几种渐变填充的灵活运用来实现金属质感的表现,另外还将学习到复制、旋转及阴影的制作方法,希望能给朋友们带来帮助~~
收藏 0 赞 0 分享
查看更多