もっと見る

同じく右に伸ばす
app.doScript(function(){
app.scriptPreferences.measurementUnit=2054188905;
f=app.selection[0],s=f.parentStory,p=s.storyPreferences,A=0.70866141732283,B="lineAki";
if(p.frameType==1179087984 && p.storyOrientation==1986359924)
v=f.visibleBounds,b=f.textFramePreferences.insetSpacing,g=s.gridData,g[B]+=A/((100/f.absoluteHorizontalScale*(v[3]-v[1])-f.strokeWeight*2-b[1]-b[3]+g[B])/(g.pointSize*g.horizontalScale/100+g[B])-1),f.move("",[A,0]);
},1246973031,[],1699963733);//

スレッドを表示

選択アイテムが縦組みフレームグリッドのとき、行間を調整してフレームの横幅を0.25mmほど左に伸ばす
app.scriptPreferences.measurementUnit=2054188905;
f=app.selection[0],s=f.parentStory,p=s.storyPreferences,A=0.70866141732283,B="lineAki";
if(p.frameType==1179087984 && p.storyOrientation==1986359924)
v=f.visibleBounds,b=f.textFramePreferences.insetSpacing,g=s.gridData,g[B]+=A/((100/f.absoluteHorizontalScale*(v[3]-v[1])-f.strokeWeight*2-b[1]-b[3]+g[B])/(g.pointSize*g.horizontalScale/100+g[B])-1);//

前か後ろにハイフンがくっついてる数字は対象外になるようにした。電話番号とかね

スレッドを表示

(function f(s){
var c=s.reflect. name,i=0;
if(c=="Array"||(c=="GroupItem"&&s=s.pageItems))for(;i<s.length;i++)f(s[i]);
else if(c=="TextRange"||(c=="TextFrame"&&s=s.textRange)){
var m=s.contents,n=s.characterOffset-1,e=/\d{4,}(?!-)/g,a=[],r;
while(r=e.exec(m))a.push(r);
while(r=a.pop()){
var p=r[0],l=p.length,b=l%3,q=p.slice(0,b),i,j=r.index;
if(m[j-1]=="-")continue;
s.length=l,s.characterOffset=n+j;
for(i=b;i<l;i+=3)q+=","+p.slice(i,i+3);
s.contents=q;
}}})(app.selection);//

スレッドを表示

事前に選択しておくのはポイントテキストでも、エリアテキストでも、ポイントテキストを含むグループでも、テキストの範囲でもいいように作ってます

スレッドを表示

数字の区切りのカンマを消す(イラレ)
(function f(s){
var c=s.reflect. name,i=0;
if(c=="Array"||(c=="GroupItem"&&s=s.pageItems))for(;i<s.length;i++)f(s[i]);
else if(c=="TextRange"||(c=="TextFrame"&&s=s.textRange))g(s);
})(app.selection);
function g(t){
var m=t.contents,n=t.characterOffset-1,e=/\d\,\d/g,a=[],r,p;
while(r=e.exec(m))a.push(r);
while(r=a.pop())t.length=1,t.characterOffset=n+r.index+1,t.remove();
}

数字の3桁ごとにカンマ入れる(イラレ)
(function f(s){
var c=s.reflect. name,i=0;
if(c=="Array"||(c=="GroupItem"&&s=s.pageItems))for(;i<s.length;i++)f(s[i]);
else if(c=="TextRange"||(c=="TextFrame"&&s=s.textRange))g(s);
})(app.selection);
function g(t){
var m=t.contents,n=t.characterOffset-1,e=/\d{4,}/g,a=[],r;
while(r=e.exec(m))a.push(r);
while(r=a.pop()){
var p=r[0],l=p.length,b=l%3,q=p.slice(0,b),i;
t.length=l,t.characterOffset=n+r.index
for(i=b;i<l;i+=3)q+=","+p.slice(i,i+3);
t.contents=q;
}
}

パスを閉じる(イラレ)
!function f(s){
var r=s.reflect. name,i=0;
if(r=="Array"||(r=="GroupItem"&&s=s.pageItems)||(r=="CompoundPathItem"&&s=s.pathItems))for(;i<s.length;i++)f(s[i]);
else if(r=="PathItem")s.closed=true}(app.selection);

DTP-Mstdn.jp

DTP-Mstdn.jpは、DTP・デザイン・印刷に関わる人々のためのMastodonインスタンスです。特定分野の専門インスタンスですので、日々のつぶやき、耳寄りな情報の共有、ディスカッション、質問とその回答、役立つスクリプトなど、他では投稿しづらい内容も、思う存分トゥートしましょう!