
こんばんわ。
初めて質問致します。
自分は、趣味でイラレをたしなむ程度なのですが
今回、知り合いから「ライブのチケット100枚作ってほしい」
と言われました。
デザインは何とか完成し、印刷しようと思ったのですが
「チケットだからナンバリングもつけて欲しい」と要望があり
途方に暮れています。
自力でネット検索し、何とかナンバリングをしてくれる「javasprict」
を発見致しました。
早速試したところ、チケット1枚につきナンバリング1か所であれば
成功したのですが、チケットなので控えと半券両方にナンバリングが欲しいとの事。
つまり、簡単に言うと1枚に2か所のナンバリングが必要なのです。
自分で改造しようと、色々試しましたが完全にお手上げ状態です。
何とかお力添えを頂ければ幸いです。
ソースは下記の通りです。
// JavaScript Document
docObj = activeDocument;
var minNum=prompt("チケットナンバーの開始値");
var maxNum = prompt("チケットナンバーの終了値");
var ticketsPerPage = 5; //一ページ当たりのチケット枚数
var printPageNum = Math.ceil( (maxNum - (minNum-1))/5 ); // 何ページ印刷するか
var maxDegit = 4; //最大桁数。これに基づいて、テキスト整形
var prefix = "抽選番号 No. "; //連番のプリフィックス
var suffix = " "; //連番のサフィックス
for(var i = 0 ; i < printPageNum ; i++){ //必要なページ数ループ
for(var h = 0 ; h < ticketsPerPage ; h++){ //各ページにはticketPerPageだけナンバーを設定
var obj_name = "No."+(h+1); //テキストオブジェクトの名前(事前にaiファイルで編集・設定)
var numberItem = docObj.pageItems.getByName(obj_name);//テキストオブジェクトの取得
numberItem.contents= getNumberText(i*ticketsPerPage + Number(minNum)+ Number(h)); //ナンバーを設定
}
//プリント
docObj.print();
}
//数値を受け取って、ナンバリング用文字列を返す
function getNumberText(num){
var len = num.length;
var numText = prefix;
for( var i = 0 ; i < maxDegit - len ; i++){
numText += " ";
}
numText += num;
return numText + suffix.toString();
}
上記の物を、同じテキストボックス名を2か所設置して動かしても片方にしか
ナンバリングが反映されませんでした。
まったくの初心者ですので、御面倒おかけしますが何卒お力添えをお願い致します!
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
イラレのスクリプトはわからないので、考え方のみになってしまいますが…
>上記の物を、同じテキストボックス名を2か所設置して動かしても片方にしか
>ナンバリングが反映されませんでした
同じ名前でなく、名前を変えてあげれば良さそうに思われます。
例えば片方が「No.{番号}」のようになっていれば、もう一方は「sNo.{番号}」のように設定しておけばよろしいかと。
記入するスクリプトは
//記入する文字列
var record = getNumberText(i*ticketsPerPage + Number(minNum)+ Number(h));
//テキストオブジェクト1の取得
var numberItem1 = docObj.pageItems.getByName( "No."+(h+1));
var numberItem2 = docObj.pageItems.getByName( "sNo."+(h+1));
//ナンバーを設定
numberItem1.contents= record;
numberItem2.contents= record;
のように2箇所に同じ文字を記入してあげれるようにすればよいのではないでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Outlookのアカウントがあるとメ...
-
jsonテキストデータの並び替え...
-
jsで、配列内の文章を改行する...
-
タグを教えてください。
-
ラジオボタンを複数選択したと...
-
jsで質問です。 formをsubmitし...
-
2025年相性がいい人のサイトの...
-
CookieをWebStoeageに変える
-
Adobe acrobat proでフォームを...
-
jqueryのselect2で検索欄の文字...
-
<tr>指定した表の行要素をボ...
-
食材の期限を管理するためにGAS...
-
ビデオのJSについて
-
鍵盤アプリで、スマホの画面に...
-
<div>のタッチ状態を維持したま...
-
jQueryでシンセサイザーを作っ...
-
プログラミング 学習
-
HTMLでサブフレームから親のス...
-
ジャバスクリプトについて。
-
プログラムについて。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C#OpenCv V4にのエラーに関する...
-
C#で、ContextMenuStripに動的...
-
食材の期限を管理するためにGAS...
-
javaScriptのコードの修正をお...
-
メールフォームの日付入力フォ...
-
GASでundefinedエラーが出ます
-
var exports = exports || {}; ...
-
google apps scriptの終了のさせ方
-
JavaScriptでテーブル内?に矢...
-
ジェネレーターの作り方
-
HTMLで作った時報アプリが動き...
-
gas スプレッドシートがアクテ...
-
ASP.NET MVCでObjectをjsに渡す
-
setTimeoutによる繰り返しが途...
-
イラレでナンバリングする方法
-
定積分の近似値を計算する関数c...
-
pdfに丸秘などのスタンプを...
-
【JavaScript】数当てゲームを...
-
シンプルなweb版スタンプラリー...
-
翌月を取得するGASが分かりません
おすすめ情報