毎日モザイク

White Room Layout Works

2015-07-01T13:27:52+09:00 [Wed]
--> [日常]

elle japon

の今でてる号の表紙のギターはヘッドが切れててわかりづらいですが、ブリッジの形状からたぶんtaylor。
型番まではわからん…。

2015-06-24T09:32:40+09:00 [Wed]

indesign 1桁&任意の桁数字のみ文字種変換

直した。

数字をどちらかに統一後に処理。

zh [0= 全角の海の中で任意の桁数の数字だけ半角(kumiに{1},{2,3}みたいに書く) 1= 半角の海の中で一桁のみ全角]

全角半角変更テーブルはいちいち作るようにしたので、zen_list,han_listに数を合わせて追加すれば、お好みの文字列も変更できる(死ぬまで使わない気がする)。

依然として全テキストフレーム対象。次はこれを直すつもり。

目標はインターフェイス的な何かを付けるところまで。あれが面倒くさい。

正規表現スタイルでかなりどうにでもなるので、意味がないと言えばないかも。

var zh       = 0;
var kumi     = '2';

var zen_list = '0123456789';
var han_list = '0123456789';
var hl       = han_list.length;
var zen_han  = {};
var uni_fie  = {};

if(zh === 0){
    var regexUni = /[0-9]/g;
    var regexRep = new RegExp("([^0-9])([0-9]{" + kumi + "})(?![0-9])","g");
    for(i = 0; i < hl; i++){
        zen_han[zen_list[i]] = han_list[i];
    }
    for(i = 0; i < hl; i++){
        uni_fie[han_list[i]] = zen_list[i];
    }
} else {
    var regexUni =/[0-9]/g;
    var regexRep =  /([^0-9])([0-9]{1})(?![0-9])/g;
    for(i = 0; i < hl; i++){
        zen_han[han_list[i]] = zen_list[i];
    }
    for(i = 0; i < hl; i++){
        uni_fie[zen_list[i]] = han_list[i];
    }
}

pageObj = app.activeDocument.pages;

for (j = 0; j < pageObj.length; j++)
{
    for (k = 0; k < pageObj[j].textFrames.length; k++)
    {
        var txt = pageObj[j].textFrames[k].contents;
        var unified  = txt.replace(regexUni, uniFunc);
        var result   = unified.replace(regexRep, repFunc);
        pageObj[j].textFrames[k].contents = result;
    }
}
function uniFunc(){
    return(uni_fie[arguments[0]]);
}
function repFunc() {
    var replist = arguments[2].split('');
    var rpl     = replist.length;
    var stx     = arguments[1];
    for(i = 0; i < rpl; i++){
        var key = replist[i];
        stx    += zen_han[key];
    }
    return(stx);
}


2015-06-24T06:24:17+09:00 [Wed]

ぜんぜんだめ

http://www.white-room.jp/blog/?p=1541は企画倒れだった…

めったに使わないので、indesignの文字種変換のしくみを忘れてました。

英数oTL

欧文と数字両方とも始末されるので、数字のみの統一も中でやらないと予定通りには動かない。

2015-06-23T16:24:25+09:00 [Tue]

indesign 1桁、2桁数字のみ文字種変換

description

作りかけ。

スタイルは破壊します。全テキストフレーム対象。

予定。

  • 選択ストーリーとか選べるようにする。
  • 桁数を指定できるようにする。
  • スタイル維持は遅いっぽいのでスタイル破壊はまま。最初にやって下さい形式。

perlのtrって便利だったんだな……。

つかいかた。

最初にindesignの文字種変換で全ての数字をどちらかに統一。

zh=0 半角数字の海から一桁数字のみ全角に変更(横書き時、一桁数字を全角幅にしたい)

zh=1 全角数字の海から二桁数字のみ半角に変更(縦書き時、二桁数字を組文字にしたい)

var zh = 0;//[0=一桁数字のみ全角、1=2桁数字のみ半角]
var zen_list = '0123456789';
var han_list = '0123456789';
var hl       = han_list.length;
var zen_han  = {};
var regex;

pageObj = app.activeDocument.pages;

if(zh === 0){
    regex =  /([^0-9])([0-9]{1})(?![0-9])/g;//JSには後読みがないのでグループ化
    for(i = 0; i &lt; hl; i++){
        zen_han[han_list[i]] = zen_list[i];//半角数字をキーにハッシュ的な何かにする
    }
} else {
    regex = /([^0-9])([0-9]{2})(?![0-9])/g;
    for(i = 0; i &lt; hl; i++){
        zen_han[zen_list[i]] = han_list[i];//全角数字をキーにハッシュ的な何かにする
    }
}

for (j = 0; j &lt; pageObj.length; j++){
    for (k = 0; k &lt; pageObj[j].textFrames.length; k++){
        txt = pageObj[j].textFrames[k].contents;
        result = txt.replace(regex, repFunc);
        pageObj[j].textFrames[k].contents = result;
    }
}

function repFunc(){
    var replist = arguments[2].split('');
    var rpl     = replist.length;
    var stx     = arguments[1];
    for(i = 0; i &lt; rpl; i++){
        key = (replist[i]);
        stx += (zen_han[key]);
    }
    return(stx);
}

2015-06-17T05:42:43+09:00 [Wed]
--> [日常]

かくし味太郎

広告漫画の覇王はなんといっても日ペンの美子ちゃんですが、もしかすると、これは美子ちゃんを超えるかも。

http://www.ajinomoto.co.jp/foodservice/useful/ajitaro/index_login.html

既に連載11話。いままで知らなかったのは大損してました。