cs3の表組について

[4862]cs3の表組について | 投稿者:momo | 投稿日:2010/07/02(Fri) 13:28:34
作成する表は、1ページに2段組のアミが交互に入っていて、ヘッダーが2段とも同じです。
2段目は、1段目の続きが入るレイアウトです。
1段目を改行して2段目に送るとヘッダーを除いて1行目から交互にアミが入ってしまいます。
何か良い方法がありましたら、教えて下さい。
» 1
[4864]Re: cs3の表組について | 投稿者:こうちゃん犬猫まみれ | 投稿日:2010/07/02(Fri) 20:42:39
すみません、私の読解力不足のためか、意味がいまいち理解できません...。
「1段目の表を任意の行で改行して、2段目の1行目のアミを続きで入れたい」ということですか?

例)

1段目  2段目
青    緑
緑    青
青    緑
緑    青
青    緑
緑    青

ってことですか?
違ってたらすみませんが、もう一度やりたいことを明確にして投稿していただけますか?
» 2
[4866]Re: cs3の表組について | 投稿者:momo | 投稿日:2010/07/05(Mon) 08:31:15
説明不足で、すいません。
緑がアミ

1段目 2段目
青   緑
緑   青
青   緑
緑   青
青   緑


1段目 2段目
青   青
緑   緑
青   青
緑   緑
青   青
にしたいのですが。
» 3
[4870]Re: cs3の表組について | 投稿者:いき | 投稿日:2010/07/05(Mon) 10:25:35
あまり良い回避策はないのですが......。

レイヤーを重ねて、下位レイヤーは塗り(または塗りと線)、上位レイヤーはテキスト(またはテキストと線)という分け方をしておく、とか。
しかしこの方法、修正時に行の高さが変わったら、両方編集しなければならないので手間ですね。

他の方法としては、一段目の行数分スキップさせておき、一段目のみ手作業でアミを設定していく(添付画像参照)
attached image
» 4
[4871]Re: cs3の表組について | 投稿者:amiza_ret | 投稿日:2010/07/05(Mon) 13:32:44
一段目の最終行とか、二段目の最初の行の取得方法を調べていないので、(たしか、せうぞーさんのwebに記述してあったような...)二度手間ですが、行を選択したら一行置きにセルに色付けします。
ですので、
・一段目を選択してスクリプト起動。
・二段目を選択してスクリプト起動
ってな感じです。
急場しのぎにはなるかと...。

ただし、InDesignCS3では試していません。また、セルの結合があればおかしくなります。エラー処理等も行っていません。

※スクリプトは自信がないので、あくまでも参考って事でお願いします...。

//一行置きにセルに色付け。
//スウォッチはあらかじめ用意。
//処理したいセルを選択。
//Windows XP InDesign CS4にて

tableObj1 = app.activeDocument.selection[0];
pageObj = app.activeDocument;

for (i =0; i < tableObj1.rows.length ; i++){
   //偶数の場合
   if ( i % 2 ==0){        
       var CelLen = tableObj1.rows[i].cells.length;
       for (a =0; a < CelLen; a++){
           //シアン
           tableObj1.rows[i].cells[a].fillColor = pageObj.swatches.item("C=100 M=0 Y=0 K=0");
       }
   }
   //奇数の場合
   else {
           for (a =0; a < CelLen; a++){
           //緑
           tableObj1.rows[i].cells[a].fillColor = pageObj.swatches.item("C=75 M=5 Y=100 K=0");
       }
   }
}
» 5
[4872]Re: cs3の表組について | 投稿者:momo | 投稿日:2010/07/05(Mon) 17:39:53
せうぞーさんのホームページに行って見ましたが、
そららしきものが見つかりませんでした。

ちなみに今使っている環境は、MACのCS3です。
» 6
[4873]Re: cs3の表組について | 投稿者:miyaji | 投稿日:2010/07/06(Tue) 09:33:30
勉強がてら作ってみました。
どちらの段になるかは、各セルの最初の挿入点のX座標で判断しています。
※エラー処理は書いてないので、注意して下さい。

//処理の対象は、本文行のみ
//奇数行は緑、偶数行は塗無し
//処理するテーブルのセルを選択もしくはカーソルを挿入

var xoffset = 0;
var counter = 1;
docObj = app.activeDocument;
tableObj = docObj.selection[0];
//オブジェクトがTableになるまでループ
while(tableObj.constructor.name!="Table"){
   tableObj = tableObj.parent;
}

rowObj = tableObj.rows;
for(var i=0 ; i<rowObj.length ; i++){
   //本文行のみ対象
   if(rowObj[i].rowType==RowTypes.bodyRow){
       ipObj = rowObj[i].cells[0].insertionPoints[0];
       if(ipObj.horizontalOffset != xoffset){
           xoffset = ipObj.horizontalOffset;
           counter = 1;
       }else{
           counter++;
       }
       if(counter%2==1){//奇数の場合は緑
           rowObj[i].fillColor = docObj.swatches.item("C=75 M=5 Y=100 K=0");
       }else{//偶数の場合は塗無し
           rowObj[i].fillColor = docObj.swatches.item("None");
       }
   }
}
» 7
[4874]Re: cs3の表組について | 投稿者:momo | 投稿日:2010/07/06(Tue) 12:30:10
基本的なことなのですが、AppleScriptの操作が素人に近いので
そのままコピーして使用しようとするとエラーになります。
操作の仕方が違うと思われるので、すいませんが教えて頂けますか。
» 8
[4875]Re: cs3の表組について | 投稿者:いき | 投稿日:2010/07/06(Tue) 12:36:16
こちら参照。
*http://d.hatena.ne.jp/seuzo/20081119/1227094226

ちなみに、ここでレスされている方がお示しくださっているコードは、すべてJavascriptです。
この記事の書き込み元へのリンク (コメントや質問などはこちらへどうぞ)