終了

クロスワードパズル作成方法

ゲスト
Apr 10, 2019 Apr 10, 2019

InDesignで図のようなクロスワードパズルを作成する時、

どんな方法が考えられますでしょうか?(無論実際はもっとマス目は多いです)

なるべく手数を少なくしようと思い、

以下の方法を考えました。

----------------------------------------------------------------------------------

テキストを表に変換(テキストは事前に用意してもらいます)

数字とそれ以外(この場合、ひらがなと漢字)の段落スタイルをそれぞれ作る

検索置換でそれぞれ段落スタイルを適用。

と。ここまではいいんですが、

セルを一気に塗りつぶす方法がわかりません。

セルスタイルを利用しそうな感じはするのですが。。。

そもそもこの行程が効率的かも怪しいので

もし何かいい方法があればご教授願います。

スクリーンショット 2019-04-11 9.03.53.png

----------------------------------------------------------------------------------

制作環境

MAC/OS10.10/CC2017

4.5K
翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines

correct answers 1 件の正解

積極的な参加者 , Apr 11, 2019 Apr 11, 2019

いろいろなやり方があって面白ですね。

セルスタイルを使う方がいないのでやってみました。スクリプトを使います。

テキストの塗りつぶしの箇所に検索用に適当な記号などを入れておきます(例:<beta>)

数字の小さい文字と、通常の漢字やひらがなを段落スタイルで設定します。(後でセルスタイル設定に使う)

セルスタイルを3つ作成。

・1つめは「一般」の段落スタイルに漢字やひらがなの段落スタイルを指定

・2つめは同様に小さい数字の段落スタイルを設定

・3つめは「罫線と塗り」→「セルの塗り」を[黒]100%に指定

最初に全部のセルを選択して漢字やひらがなのセルスタイルをかけておきます。

あとはせうぞーさん作のスクリプトで一気に終わります。古いスクリプトですがCC2015で動作確認しました。

http://d.hatena.ne.jp/seuzo/20090814/1250176724

セルを全選択したままスクリプトを実行(1回目)

正規表現 [0-9]+

セルスタイル:小さい数字

セルを全選択したままスクリプトを実行(2回目)

正規表現 <beta>

セルスタイル:セルの塗り

セルの大きさを変えても問題ないし、後で文字の大きさなどの

...
翻訳
積極的な参加者 ,
Apr 10, 2019 Apr 10, 2019

mochihiroさん、こんにちは。

段落スタイル1つ、文字スタイル1つ、セルスタイル2つ(表スタイルは任意で1つあっても可)、で検索置換1回、スクリプト1回でいいところまでいけました。

前準備

用意したスタイルはこんな感じです。

段落スタイルには正規表現スタイルを1つ仕込んでいます。

^\d+~y$

数字と右インデントタブの組み合わせのときに、小さな文字サイズになる文字スタイルを充てます。

スクリーンショット 2019-04-11 9.46.40.png

スクリプトはこちらを拝借しました。

正規表現にマッチしたら、指定のセルスタイルを適用する「regex_cellstyle 0.2」 - 名もないテクノ手

手順

CC2017なのでグラフィックセルが利用できます。

なので、適当なサイズの黒い四角形を、インライン(アンカー付オブジェクト)でタブの間に挟んでおきます。

そうしたら、選択して表メニューから「テキストを表に変換...」をします。

スクリーンショット 2019-04-11 9.51.44.png

表スタイルがあればこのとき充てて下さい。なくてもいけます。

この時点で黒塗りの部分は解決です。次にセルのサイズを調整します。

スクリーンショット 2019-04-11 9.54.02.png

そうしたら、正規表現スタイルで仕込んでいた検索条件にマッチするように、数字の部分に右インデントタブを検索置換で入れます。

スクリーンショット 2019-04-11 9.55.36.png

そうするとこんな感じになりました。

スクリーンショット 2019-04-11 9.55.56.png

次にセルスタイルをセットしていきますので、ここでスクリプトを使います。セルを全部選択してから、ダイアログに適当に検索条件を入れます。マッチすればなんでもいいので、今回は右インデントタブ(~y)としてみました。

スクリーンショット 2019-04-11 9.57.34.png

できあがりです。

スクリーンショット 2019-04-11 9.57.52.png

Yusuke S.
翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
Community Expert ,
Apr 10, 2019 Apr 10, 2019

表作成後に表内文字を縦組みにしてしまうと、検索置換で数字の後ろに挟み込まなくても正規表現スタイルだけで逃げられますね(^-^

スクリーンショット 2019-04-11 10.36.14.png

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
積極的な参加者 ,
Apr 10, 2019 Apr 10, 2019

なるほど!それもいいですね!

ただ縦中横で絶対値指定なので、もしセルサイズ変更になったら段落スタイルの調整が必要ですね。

とはいえそれでも段落スタイルの設定ひとつで済むのでとても良さそう。

Yusuke S.
翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
Community Expert ,
Apr 10, 2019 Apr 10, 2019

そこはルーチンワークだろうから、セルサイズ毎に文字スタイル用意して切り替えて使うとかの運用で逃げられるかなと(^-^;

それより、アンカーからのグラフィクススタイルへの移行が便利ですね。

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
積極的な参加者 ,
Apr 10, 2019 Apr 10, 2019

そうそう、手前味噌ですが、セル幅をまとめて設定するスクリプトはブログにあります。

表組の列幅をまとめて変更したい - DTPab

ただこの作業がたくさんあるなら、僕なら入稿テキストの整形(アンカー挿入とか)含めて全部自動化しちゃいそう…。

Yusuke S.
翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
Community Expert ,
Apr 10, 2019 Apr 10, 2019

私もGAS通すなり、XLSXパースするなりして自動整形するエクステンション作るかなぁ…

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
参加者 ,
Apr 10, 2019 Apr 10, 2019

私は段落スタイルでやってみました。

表組みに罫線があると面倒なので、罫線は段落囲み罫で表現しました。

以下、流れです。

テキストでは空欄部分に「/」を入力しておく。

スクリーンショット 2019-04-11 15.05.23.png

InDesignの表はフレームなし。セルの高さは固定。

段落スタイルに段落囲み罫と段落の背景色を設定。

幅は「列」、上端・下端は「仮想ボディ」と設定。

上下のオフセットは「(セルの高さ−文字サイズ)÷2」とする。

数字用段落スタイルはベースラインシフトと行揃え「左揃え」を設定。

空欄用段落スタイルは文字色と背景色を同一色に設定。

(文字が残らないほうが良ければ改行などに置換)

正規表現検索/置換で段落スタイルを適用。

スクリーンショット 2019-04-11 15.34.10.png

以上です。

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
積極的な参加者 ,
Apr 11, 2019 Apr 11, 2019

いろいろなやり方があって面白ですね。

セルスタイルを使う方がいないのでやってみました。スクリプトを使います。

テキストの塗りつぶしの箇所に検索用に適当な記号などを入れておきます(例:<beta>)

数字の小さい文字と、通常の漢字やひらがなを段落スタイルで設定します。(後でセルスタイル設定に使う)

セルスタイルを3つ作成。

・1つめは「一般」の段落スタイルに漢字やひらがなの段落スタイルを指定

・2つめは同様に小さい数字の段落スタイルを設定

・3つめは「罫線と塗り」→「セルの塗り」を[黒]100%に指定

最初に全部のセルを選択して漢字やひらがなのセルスタイルをかけておきます。

あとはせうぞーさん作のスクリプトで一気に終わります。古いスクリプトですがCC2015で動作確認しました。

http://d.hatena.ne.jp/seuzo/20090814/1250176724

セルを全選択したままスクリプトを実行(1回目)

正規表現 [0-9]+

セルスタイル:小さい数字

セルを全選択したままスクリプトを実行(2回目)

正規表現 <beta>

セルスタイル:セルの塗り

セルの大きさを変えても問題ないし、後で文字の大きさなどの設定を段落スタイルで変えられます。

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
ゲスト
Apr 11, 2019 Apr 11, 2019

返信いただいた皆様

様々なご提案ありがとうございます。

本当に勉強になります。

まだ一番最初に返信頂いたyusuke.s様の方法しか実践はしていませんが(無事処理できました)、

週末他の方の方法も試しながら、

自分の環境に合ったカスタマイズも試みたいと思います。

(グラフィックのセルの発想はありませんでした。目から鱗です。)

取り急ぎお礼申し上げます。

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
Community Expert ,
Apr 11, 2019 Apr 11, 2019

遅ればせですが、優勝を狙いに来ました。

ベタの入る空欄に、原稿中で絶対に使われないユニークな文字を入れておきます。

作例ではとりあえずで半角ゼロを入れました。

1.png

段落は左揃え、セルの属性はテキスト上揃え、

「内容をセルに入る部分のみ表示」にチェック

2.png

各セルの段落スタイルにあてる正規表現スタイル。

ゼロにした部分はゼロ以外にする場合、適宜書き換えてください。

3.png

最後にベタ部分にあたる文字スタイル。

圏点設定を使用します。

4.png

肩つき数字の処理は段落の左揃えで適えているため、

セルのリサイズにフレキシブルに対応する感じではなくなりましたが、

基本は「流すだけ」で完成となります。

どうもお目汚しでした。

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
参加者 ,
Apr 11, 2019 Apr 11, 2019

表を使わない方法を試してみました。

テキストはタブを改行に置換しておきます。

テキストフレームとグラフィックフレーム(同じサイズ)を用意。

グラフィックフレームには「線を中央に揃える」で罫線を設定します。

段落スタイルは3種類を用意。「段落の背景色」は念のためテキストフレームを少しはみ出すように設定しました。

スクリーンショット 2019-04-12 15.14.38.png

空のテキストフレームをコピーし、グラフィックフレーム内にペースト(選択範囲内にペースト)。

グラフィックフレームの「フレーム調整オプション」を以下のように設定します。

003.png

これを「繰り返し複製」で9個用意した後、9個のテキストフレームを連結。

その後、グラフィックフレームをグループ化します。

スクリーンショット 2019-04-12 15.14.42.png

テキストを読み込み、検索/置換で各段落スタイルを適用。

コントロールパネルの「W」「H」でサイズを変更すると文字の大きさも変わります。

(「%」によるサイズ変更は不可。ドラッグも不可)

スクリーンショット 2019-04-12 15.14.47.png

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
ゲスト
Apr 12, 2019 Apr 12, 2019
最新

皆様ご提案ありがとうございました。

いろいろな方法が知れて勉強になりました。

正直どれも正解なので、どうしようかと思いましたが、

Subi Omu様のご提案が、自分の環境には合っていそうなので、

こちらを正解にします。

最後に私のクロスワード作成方法です。

Subi Omu様とほぼほぼ同じなんですが、、、、

一応載せときます。

事前準備:

●セルを塗りつぶす部分に適当な文字をあしらったテキスト(今回は★)

スクリーンショット 2019-04-13 13.44.16.png

●“左/上揃え”に設定した数字用の段落スタイル1個

(他の設定は後で調整できるので適当、もちろんここである程度決めてしまってもOK)

(仮に名前をnumberとします)

段落スタイル2.png

●セルスタイルを3つ用意

1.お好きな線幅設定、テキストの配置を“中央”にしたもの

2.セルの塗りを黒に設定したもの

3.作成しておいた数字用の段落スタイルを割り当て、配置を“上”にしたもの

セル3.png

●表スタイル1つ用意

セルスタイル「1」を割り当てたもの

表スタイル.png

手順

テキスト流し込む

1.png

作成した表スタイルで表変換

2.png

ここで画面見ながら、セルサイズ調整、ひらがなと漢字の情報を決める(数字もそのまま変わっていい)、

揃えをセンターに(はい、すいません手作業です)

3.png

せうぞ―様のスクリプト

正規表現にマッチしたら、指定のセルスタイルを適用する「regex_cellstyle 0.2」

を使用して、

「★」に対してセルスタイル2を。

スクリプトで1.png

そのまま(選択された状態のまま)同じスクリプトで

「数字」に対してセルスタイル3を。

スクリプトで2.png

必要なら段落スタイルを修正して数字の大きさやフォントを変えて出来上がり。

5.png

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines