Skip to main content
Participant
July 2, 2022
Question

ルビの表示 非表示 の切り替え

  • July 2, 2022
  • 4 replies
  • 1138 views

ドキュメント全体のルビを一括して、表示、非表示の切り替えをすることは出来なのでしょうか?

    This topic has been closed for replies.

    4 replies

    ajabon grinsmith
    Community Expert
    Community Expert
    July 7, 2022

    代案バーンズ

     

    app.activeDocument.stories.everyItem().rubyTint ^= -1;

     

    全ストーリーのルビの塗りカラーの濃淡を -1(自動) と 0 でトグルするやつ。

    もとのルビの塗りカラーの濃淡が(自動)であることが条件となります。通常そうそういじくる箇所ではないかと思います。

     

    どすかどすか。

     

    ただ、スレッドに app.activeDocument.stories.everyItem() があったのでうっかり便乗したものの、これ全然ダメで表組内のテキストが対象外となるため、さらなる作り込みは必要となります。

    大事な部分の提案まででお考えください。

    Inspiring
    July 7, 2022

    自信の質問では無いのですが

    例えるなら、算額絵馬の様で・・・

    大変、参考になりました。

     

     

    Inspiring
    July 7, 2022

    代替レイアウトで、ルビ有りと無しを作るのはどうでしょう?

     

    ストーリーをリンク

    テキストスタイルを新規スタイルグループにコピー

    で、ルビなしの方のスタイルでルビの文字色を紙色にするとか

    Inspiring
    July 3, 2022

    ExtendScriptを使うと出来る様な気もします。

    StoryにrubyFlagがあるので

    // 全てのストーリーのrubyFlagをfalseに
    app.activeDocument.stories.everyItem().rubyFlag = false;

     表示するにはrubyFlagをtrueにすれば良いかと

    monokano
    Community Expert
    Community Expert
    July 3, 2022

    rubyFlagがらみはバグがあると思うので危ないかも。

    InDesignのルビは見えなくても残っていたりする

    Inspiring
    July 4, 2022

    少し調べてみました。

     

    置換前のidms(一部)

     

    <CharacterStyleRange AppliedCharacterStyle="CharacterStyle/$ID/[No character style]" RubyFlag="1" RubyString="きしせんめい" RubyType="GroupRuby">
    	<Content>旗色鮮明</Content>
    </CharacterStyleRange>

     

     

    置換後のidms(一部)

     

    <CharacterStyleRange AppliedCharacterStyle="CharacterStyle/$ID/[No character style]" RubyType="GroupRuby">
    	<Content>旗</Content>
    </CharacterStyleRange>
    <CharacterStyleRange AppliedCharacterStyle="CharacterStyle/$ID/[No character style]" RubyType="GroupRuby">
    	<Content>幟</Content>
    </CharacterStyleRange>
    <CharacterStyleRange AppliedCharacterStyle="CharacterStyle/$ID/[No character style]" RubyType="GroupRuby">
    	<Content>鮮</Content>
    </CharacterStyleRange>
    <CharacterStyleRange AppliedCharacterStyle="CharacterStyle/$ID/[No character style]" RubyFlag="0" RubyString="きしせんめい" RubyType="GroupRuby">
    	<Content>明</Content>
    </CharacterStyleRange>

     

     

    置換後のidmsを配置したidms(一部)

     

    <CharacterStyleRange AppliedCharacterStyle="CharacterStyle/$ID/[No character style]" RubyType="GroupRuby">
    	<Content>旗幟鮮明</Content>
    </CharacterStyleRange>

     

     

    IDMLにするとおかしなのが治るかもですね

     

    モノルビを置換後のidms(一部)

     

    <CharacterStyleRange AppliedCharacterStyle="CharacterStyle/$ID/[No character style]" RubyFlag="1" RubyString="き">
    	<Content>旗</Content>
    </CharacterStyleRange>
    <CharacterStyleRange AppliedCharacterStyle="CharacterStyle/$ID/[No character style]">
    	<Content>幟</Content>
    </CharacterStyleRange>
    <CharacterStyleRange AppliedCharacterStyle="CharacterStyle/$ID/[No character style]" RubyFlag="1" RubyString="せん">
    	<Content>鮮</Content>
    </CharacterStyleRange>
    <CharacterStyleRange AppliedCharacterStyle="CharacterStyle/$ID/[No character style]" RubyFlag="1" RubyString="めい">
    	<Content>明</Content>
    </CharacterStyleRange>

     

    置換するとルビ情報は消えてしまうのですね

    昔からある仕様という名前の不具合でしょうか・・・?

     

    色々、参考になりました。

    monokanoさん、yusuke.sさん、有難うございました。

    katayanagi51
    Community Expert
    Community Expert
    July 2, 2022

    基本情報としてOSのバージョンとInDesignのバージョンは書いたほうがよいです。

     

    ルビのみ表示/非表示の切り替え機能はInDesignにはないと思います。

    段落スタイル等できちんと文字オブジェクトを管理できていれば手数はかかると思いますが、非表示にはできそうですが。。

     

    Goh12345Author
    Participant
    July 2, 2022

    有り難うございます。

    失礼しました。MacOS14.2 InDesign17.3です。

    段落スタイルを複製して、ルビの色を白(紙色)のものを作っておいて、スタイルを切り替えれば良いわけですね。

    有り難うございます。

    ajabon grinsmith
    Community Expert
    Community Expert
    July 2, 2022

    ああ、やりっぱなしでよければ、正規表現検索置換で対象をドキュメントにして検索文字列 .+  で、ルビカラーを変更しちゃえばいけそうですね。