IDML Filter: improve the styles handling of consiquential story child elements

Issue #1183 new
Denis Konovalyenko created an issue

Firstly, there is a case when a styled text element is followed by a hyperlink text source one and the styles of the former are replaced by the styles of the latter. For example, the Text content

Within the original story structure:

    <ParagraphStyleRange AppliedParagraphStyle="ParagraphStyle/$ID/NormalParagraphStyle">
      <CharacterStyleRange AppliedCharacterStyle="CharacterStyle/$ID/[No character style]"
                           Capitalization="AllCaps" Position="Superscript">
        <Content>Text</Content>
      </CharacterStyleRange>
      <HyperlinkTextSource Self="u105" Name="Hyperlink 7" Hidden="false"
                           AppliedCharacterStyle="CharacterStyle/Hyperlink">
        <CharacterStyleRange AppliedCharacterStyle="CharacterStyle/$ID/[No character style]">
          <Content>[No character style]</Content>
          <Br/>
        </CharacterStyleRange>

and its original UI:

is represented in the following way in a related story structure:

    <ParagraphStyleRange AppliedParagraphStyle="ParagraphStyle/$ID/NormalParagraphStyle">
      <CharacterStyleRange AppliedCharacterStyle="CharacterStyle/$ID/[No character style]"
                           Capitalization="AllCaps" Position="Superscript">
        <Content xml:space="preserve">Text </Content>
        <HyperlinkTextSource Self="u105" Name="Hyperlink 7" Hidden="false"
                             AppliedCharacterStyle="CharacterStyle/Hyperlink">
          <CharacterStyleRange AppliedCharacterStyle="CharacterStyle/$ID/[No character style]">
            <Content xml:space="preserve">[No character style]</Content>
            <Br/>
          </CharacterStyleRange>

and its UI:

Secondly, there is a case when consequential hyperlink text source elements of the same styles should look different.

For instance, the [Hyperlink style] and the http://hyperlink-1-2.net[n character style on HyperlinkTextSource] content from the story structure below:

      <CharacterStyleRange AppliedCharacterStyle="CharacterStyle/Hyperlink" Underline="false">
        <HyperlinkTextSource Self="u108" Name="http://hyperlink-1.net 1" Hidden="false"
                             AppliedCharacterStyle="n">
          <CharacterStyleRange AppliedCharacterStyle="CharacterStyle/Character Style 1"
                               Underline="false">
            <Content xml:space="preserve">http://hyperlink-1-2.net[n character style on HyperlinkTextSource]</Content>
          </CharacterStyleRange>
          <CharacterStyleRange AppliedCharacterStyle="CharacterStyle/Hyperlink">
            <Content xml:space="preserve">[Hyperlink style]</Content>
            <Br/>
          </CharacterStyleRange>
        </HyperlinkTextSource>
        <HyperlinkTextSource Self="u109" Name="http://hyperlink-1.net 1" Hidden="false"
                             AppliedCharacterStyle="n">
          <Content xml:space="preserve">http://hyperlink-1-2.net[n character style on HyperlinkTextSource]</Content>
          <Br/>
        </HyperlinkTextSource>
      </CharacterStyleRange>

and its UI:

This does not happen if the hyperlink text source elements are wrapped into separate style ranges though:

       <CharacterStyleRange AppliedCharacterStyle="CharacterStyle/Hyperlink" Underline="false">
        <HyperlinkTextSource Self="u108" Name="http://hyperlink-1.net 1" Hidden="false"
                             AppliedCharacterStyle="n">
          <Content>http://hyperlink-1-2.net[n character style on HyperlinkTextSource]</Content>
          <CharacterStyleRange AppliedCharacterStyle="CharacterStyle/Hyperlink">
            <Content>[Hyperlink style]</Content>
            <Br/>
          </CharacterStyleRange>
        </HyperlinkTextSource>
      </CharacterStyleRange>
      <CharacterStyleRange AppliedCharacterStyle="CharacterStyle/Hyperlink" Underline="false">
        <HyperlinkTextSource Self="u109" Name="http://hyperlink-1.net 1" Hidden="false"
                             AppliedCharacterStyle="n">
          <Content>http://hyperlink-1-2.net[n character style on HyperlinkTextSource]</Content>
          <Br/>
        </HyperlinkTextSource>
      </CharacterStyleRange>

Related documents are attached.

Comments (2)

  1. Log in to comment