cs3の表組について
[4862]cs3の表組について |
投稿者:momo |
投稿日:2010/07/02(Fri) 13:28:34
作成する表は、1ページに2段組のアミが交互に入っていて、ヘッダーが2段とも同じです。
2段目は、1段目の続きが入るレイアウトです。
1段目を改行して2段目に送るとヘッダーを除いて1行目から交互にアミが入ってしまいます。
何か良い方法がありましたら、教えて下さい。
» 1
2段目は、1段目の続きが入るレイアウトです。
1段目を改行して2段目に送るとヘッダーを除いて1行目から交互にアミが入ってしまいます。
何か良い方法がありましたら、教えて下さい。
[4864]Re: cs3の表組について |
投稿者:こうちゃん犬猫まみれ |
投稿日:2010/07/02(Fri) 20:42:39
すみません、私の読解力不足のためか、意味がいまいち理解できません...。
「1段目の表を任意の行で改行して、2段目の1行目のアミを続きで入れたい」ということですか?
例)
1段目 2段目
青 緑
緑 青
青 緑
緑 青
青 緑
緑 青
ってことですか?
違ってたらすみませんが、もう一度やりたいことを明確にして投稿していただけますか?
» 2
「1段目の表を任意の行で改行して、2段目の1行目のアミを続きで入れたい」ということですか?
例)
1段目 2段目
青 緑
緑 青
青 緑
緑 青
青 緑
緑 青
ってことですか?
違ってたらすみませんが、もう一度やりたいことを明確にして投稿していただけますか?
[4866]Re: cs3の表組について |
投稿者:momo |
投稿日:2010/07/05(Mon) 08:31:15
説明不足で、すいません。
緑がアミ
1段目 2段目
青 緑
緑 青
青 緑
緑 青
青 緑
を
1段目 2段目
青 青
緑 緑
青 青
緑 緑
青 青
にしたいのですが。
» 3
緑がアミ
1段目 2段目
青 緑
緑 青
青 緑
緑 青
青 緑
を
1段目 2段目
青 青
緑 緑
青 青
緑 緑
青 青
にしたいのですが。
[4870]Re: cs3の表組について |
投稿者:いき |
投稿日:2010/07/05(Mon) 10:25:35
あまり良い回避策はないのですが......。
レイヤーを重ねて、下位レイヤーは塗り(または塗りと線)、上位レイヤーはテキスト(またはテキストと線)という分け方をしておく、とか。
しかしこの方法、修正時に行の高さが変わったら、両方編集しなければならないので手間ですね。
他の方法としては、一段目の行数分スキップさせておき、一段目のみ手作業でアミを設定していく(添付画像参照)
» 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
ですので、
・一段目を選択してスクリプト起動。
・二段目を選択してスクリプト起動
ってな感じです。
急場しのぎにはなるかと...。
ただし、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");
}
}
}
[4872]Re: cs3の表組について |
投稿者:momo |
投稿日:2010/07/05(Mon) 17:39:53
せうぞーさんのホームページに行って見ましたが、
そららしきものが見つかりませんでした。
ちなみに今使っている環境は、MACのCS3です。
» 6
そららしきものが見つかりませんでした。
ちなみに今使っている環境は、MACのCS3です。
[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
どちらの段になるかは、各セルの最初の挿入点の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");
}
}
}
[4874]Re: cs3の表組について |
投稿者:momo |
投稿日:2010/07/06(Tue) 12:30:10
» 8
[4875]Re: cs3の表組について |
投稿者:いき |
投稿日:2010/07/06(Tue) 12:36:16
こちら参照。
http://d.hatena.ne.jp/seuzo/20081119/1227094226
ちなみに、ここでレスされている方がお示しくださっているコードは、すべてJavascriptです。
http://d.hatena.ne.jp/seuzo/20081119/1227094226
ちなみに、ここでレスされている方がお示しくださっているコードは、すべてJavascriptです。
この記事の書き込み元へのリンク (コメントや質問などはこちらへどうぞ)