8 返信 最新の回答 日時: Feb 20, 2017 11:05 AM ユーザー:Hi-sato

    字取りに関する挙動

    Hi-sato Level 1

      初めまして。

      字取りに関して不具合なのか仕様なのか判断に迷っている事例が起きてます。

      字取りに関する挙動なのですが、

      1)文字スタイルで字取りを設定する

      2)データ結合の際に、字取りを設定したフィールド

      どちらも、実行した後、オーバーテキスト検索している旨のメッセージのまま帰ってきません。

      字取りの設定がない場合は、さほど時間もかからずに終了しますが、字取りの設定をしただけで、帰ってくる気配がなくなります。

      ご存じの方がいらっしゃったら、教えていただけますと、とてもうれしいです。

      もちろん、回避方法がわかる分にはありがたいです。

      何卒よろしくお願いいたします。

       

      自宅でwin10(64bit)-indCC2017

      仕事場でwin7(32bit) -indCC2017

        • 1. Re: 字取りに関する挙動
          yukiyoshi887 Level 1

          データ結合の処理量が分からないので断定はできませんが、字取りしたあとのフレーム幅が充分でないので、字取りテキストが入ったすべてのフレームでオーバーセットが発生し、その検出に時間が掛 かっているのではないでしょうか。原因は推理しかできませんが、字取りの字数かフレーム幅を調整すれば回避できそうです。

           

          なんらかの事情でそれらの調整ができない場合は、文字スタイルの字取りを設定せずデータ結合して、結合後に文字スタイルを編集して字取りを設定すれば、オーバーセット自体は発生する可能性が大 ですが、フリーズ状態を引き起こす検出の過程はスキップできると思います。

          この方法を採る場合、結合ドキュメントが大量に生成される作りの場合は、複数ドキュメントの文字スタイルの設定をし直すスクリプトがないと辛いかもしれませんね。

          文字スタイルに+が付いてもいいなら、すべてのドキュメントを対象に文字スタイルを検索して字取りを設定すれば、スクリプトなしでも似たようなことは可能ですが。

          • 2. Re: 字取りに関する挙動
            Hi-sato Level 1

            yukiyoshi887 さん、返信いただきましてありがとうございます。

            時間がなかなかとれず、確認するのが遅くなりました。

            データ結合の量は1レコードあたり180あります。

            流し込むフィールドはオーバーテキストは発生しない設定に調整(カーニング等)してあります。

            ※字取りを設定する前のものはテストを繰り返しオーバーテキストエラーは発生していません。

            字取りを設定してあるフィールドはあふれることがほぼ無い大きさになっています。

            まだ、試作段階で5レコード分しかテストをしていませんが、字取りを設定する前は、ものの数秒でデータ結合が完了しますが、字取りを設定しただけで、6時間経過しても終わる気配がありません。

            win10のタスクマネージャー上では「応答なし」と表示されていますし、キャンセルをクリックしても反応が得られないので、フリーズしているのではないかと疑念を持っている次第です。

            文字スタイルを変更した場合も同様の反応となっています。

            • 3. Re: 字取りに関する挙動
              yukiyoshi887 Level 1

              返信ありがとうございます。

              データ結合後であっても字取りの設定を加えるとその状態になるのですね。ドキュメント内に問題があるのでしょうか…

              それでは字取りを使わない作りにしてはいかがですか? 右左のインデント幅を調整し、両端揃えにすれば、字取りした状態と同じ見た目にすることはできますが。

              • 4. Re: 字取りに関する挙動
                Hi-sato Level 1

                返信、ありがとうございます。

                ドキュメントそのものの抱えている問題…とありましたので、取り込み用のCSVを転用して字取りしたい部分のみで新たにドキュメントを作って試してみました。

                ①プレビュー表示では、1ページ目は表示されるが、2ページ目以降はフリーズ状態になる。

                ②データ結合を実行すると結合実行中関連のメッセージすら出なくてフリーズ状態になる。

                という結果です。

                データ結合で字取りを使ってはいけないのか、バグが潜んでいるのかのどちらかのような気がしました。

                 

                字取りを使わない方法ということですが、実際に実現したいことというのは電話番号、携帯電話番号、ファックス番号の桁揃えなのです。

                ただし、条件があって、データに該当項目がなければスキップ(出力しない)するという仕様なのです。

                タブ、表組みも考えたのですが、どちらも仮に、すべての番号を出力しない…となったときに支障が出そうなのと、逆にすべてを出力するとなったときには電話番号と、携帯番号を1行にするレギュレ ーションとなっているために、使えないかなと考えたからです。

                OpenType機能「等幅」系機能の利用も検討したのですが、使用しているフォントが対応していないみたいで、字形が変わってしまったり、機能しなかったり(多分、ここが一番痛い)という具 合です。

                この機能の実現にも条件があるのかもしれませんね…欧文コンポーザしていないとだめとか…。

                字取りは日本語系のコンポーザに設定していないと機能しないようですし。

                 

                現状は電話番号ほかの桁揃えの要望は検討中として棚上げしています。

                • 5. Re: 字取りに関する挙動
                  yukiyoshi887 Level 1

                  いままで得た情報で推察する限り、Hi-satoさんのやりたいことは「正規表現による検索」と「正規表現スタイル」を使えば叶えられそうな気がします。

                   ① 番号情報がない項目は項目名ごと消し去る。空行ができないよう改行も消す。

                   ② 全項目を流した場合は電話と携帯を1行につなげる

                   ③ 数字や記号を均等の字送りにする

                   ④ 桁数によって字送り量を調整したい(10桁の場合はゆったり、11桁の場合はきつく、等)

                   

                  ①②は正規表現検索、③④は正規表現スタイルで実現可能です。

                  ①②はスクリプトを書けば一瞬ですし、手作業でも数分。

                  ③④は段落スタイルに組み込んでおけばほっといても実行されます。

                  ただし、10桁用と11桁用の文字スタイルを登録するのがいささか手間ではありますが。

                   

                  もうひとつ確認したいのですが、たとえば10桁の番号と11桁の番号が並んだ場合、10桁の字送りをゆったりさせて11桁の幅と揃える、という認識で良いですか?

                  • 6. Re: 字取りに関する挙動
                    Hi-sato Level 1

                    ご返信、ありがとうございます。

                    正規表現スタイルは頭をちらっとよぎったのですが、知識が未熟のため、どう使えばいいのかわからずにスルーしてました。

                    逆に、①②は、流し込み用のデータを作る過程でエクセル上で改行位置に”★”を入れて、データ統合を行った後で、“★”をソフト改行に置き換えています。

                    お手間じゃなかったら、後学のために教えていただけますととてもうれしいです。

                     

                    桁数のことですが、現状の出てきている要望が「プロポーショナルだと、1が見づらいしかっこ悪いので揃えて」というものなので、番号系を頭とお尻を揃えるというよりも、等幅で表現した状態とい うのが希望なんだと解釈しています。

                    等幅表現ができるフォントなら多分、簡単だったんだと思うのですが…採用されているフォントが対応していないことがすべての面倒の始まりという感じです。

                    与太話が過ぎました。すみません。

                    ですので、11桁に揃えるというのというよりは、等幅表現にするという感じです。

                    お忙しい中、お手間を取らせてすみません。

                    よろしかったら、アドバイスくださるとありがたいです。

                    よろしくお願いします。

                    • 7. Re: 字取りに関する挙動
                      yukiyoshi887 Level 1

                      ★を置換、というフローはそのままで良いと思います。検索式をクエリに登録すれば尚良しですね。

                      数字の処理について、3パターン想定しました。行いたい処理に近いものを参考にしてください。

                       

                      ①単に数字だけ数字専用の文字スタイルを掛けられればいい場合(合成フォントのような使い方)

                      ②10桁の時と11桁の時で掛ける文字スタイルを変えたい場合(10桁用、11桁用のように)

                      ③数字ごとに専用の文字スタイルを変えたい場合(1用、2用、3用…のように)

                       任意の数字(たとえば1だけ)を変えたい場合も③の方法でOKです

                       

                       

                      ①の設定法

                       1. 数字専用の文字スタイルを作成する

                       2. 対象文字列にかけた段落スタイルの編集ダイアログを表示

                       3. 「正規表現スタイル」内の「新規正規表現スタイル」をクリック

                       4. 「テキスト」に \d と打ち、「スタイルを適用」に1.の文字スタイルを選ぶ

                       

                       

                      ②の設定法

                       1. 10桁用の文字スタイルと、11桁用の文字スタイルを作成する

                       2. 対象文字列にかけた段落スタイルの編集ダイアログを表示

                       3. 「正規表現スタイル」内の「新規正規表現スタイル」をクリック

                       4. 「テキスト」に \d{10} と打ち、「スタイルを適用」に10桁用の文字スタイル

                       5. 「テキスト」に \d{11} と打ち、「スタイルを適用」に11桁用の文字スタイル

                       6.  ただし区切り文字(仮に半角ハイフン)が入る場合は、4.5.は無視して「テキスト」に以下のように記述(並び順も下記のとおりに)

                         (10桁用)\d{2}\-\d{4}\-\d{4}

                         (10桁用)\d{3}\-\d{3}\-\d{4}

                         (10桁用)\d{4}\-\d{2}\-\d{4}

                         (11桁用)\d{3}\-\d{4}\-\d{4}

                       

                      ③の設定方法

                       1. 数字ごとに文字スタイルを作成する(1は広く、2は狭く、のように)

                       2. 対象文字列にかけた段落スタイルの編集ダイアログを表示

                       3.  「正規表現スタイル」内の「新規正規表現スタイル」をクリック

                       4. 「テキスト」に対象の数字、「スタイルを適用」に対象の文字スタイル

                       

                      といった感じでどうでしょうか。ちなみに\はWindows版では¥を入力してください。

                      1 人が役に立つと言っています
                      • 8. Re: 字取りに関する挙動
                        Hi-sato Level 1

                        時間がなかなかとれず、返信に間が開いてしましました。

                         

                        まだ、思うように時間がとれないので、少し試してみただけですが、「1」を前後八分空きに設定した正規表現スタイルを作ることで要望にかないそうだと考えています。

                        ほかの部分でも、応用が利きそうな感想を持っています。

                         

                        データ統合時にも、さほどストレスにならないようですし、とても素敵な方法を伝授いただいたと思っております。

                        本当に感謝いたします。

                        ありがとうございます。

                         

                        まだ、本番で試していないのでまだ解決と言い切れる状態ではないですが、かなり楽観視することができています。

                        本当に、ありがとうございました。