In HTML, I thought Table defaults to a block element, effectively ending
the paragraph.

If that's true, then:
<p> some text <table>(table content)</table> more text </p>

Should be re-factored as:
<p> some text </p><table>(table content)</table><p> more text </p>

And then table would have its own TextBlock?

-Alex

On 6/11/14 8:25 AM, "Harbs" <harbs.li...@gmail.com> wrote:

>FYI:
>
>I’ve been having a really difficult time resolving content with
>TextBlocks. I can’t seem to work within TextBlocks and keep the tables
>outside a composed TextLine. Making the width really wide just messes
>things up.
>
>I tried keeping the table outside the TextBlock, but that causes all
>kinds of issues related to selections and the like.
>
>After struggling with this all day, I’m rethinking the TextBlock <->
>Paragraph one-to-one ratio. Yes. TextBlocks generally correspond to a
>single paragraph, but when a table would break a paragraph into two, the
>text above the table, and the text below the table are in effect two
>separate TextBlocks. So, I’m thinking of changing
>ParagraphElement.getTextBlock() to return a Vector.<TextBlock> instead of
>TextBlock. It would track a separate TextBlock for each section of text
>within the paragraph.
>
>It’s a bit messy, but I’m not sure what else to do at this point...
>
>On Jun 10, 2014, at 11:46 PM, Harbs <harbs.li...@gmail.com> wrote:
>
>> 
>> On Jun 10, 2014, at 11:10 PM, Alex Harui <aha...@adobe.com> wrote:
>> 
>>> 
>>>>> Just wondering, did you consider a plan where you tell TLF that the
>>>>>table
>>>>> is another container?  Or  maybe each cell is another container in
>>>>> row-major order?  Would that eliminate some or all of these issues?
>>>> 
>>>> Not sure I understand what you¹re asking. The way I¹m currently
>>>>handling
>>>> cells, is by creating containers for each one. Tables are composed
>>>>using
>>>> TextFlowTableBlocks for each visual section of the table.
>>> Right now it seems like you have to create a tree of TextFlows.  IIUC,
>>>one
>>> TextFlow cannot represent a document with tables and cells in it.  This
>>> also seems to create challenges around selection and also the wrapping
>>>of
>>> tables in paragraphs.
>> 
>> The table is composed as part of the text flow similar to composition
>>of ParagraphElements or SpanElements. Composing the table causes
>>sub-composition of the nested content. But each section is composed
>>similar to how lines are composed. The composition supports tables
>>spanning multiple containers in the main textflow.
>> 
>>> IIRC, TLF already supports composing a single TextFlow into multiple
>>> containers, but I believe it only knows how to fill up a container
>>>before
>>> moving to the next container.  I was wondering if a table/cell element
>>> could have just caused a jump to the next container.
>> 
>> Yes. Composition walks through the containers and only looks at the
>>next container once the current container is filled. We do not want to
>>jump to the next container for tables, because the container bounds is
>>really outside the scope of composition. We want the table to be
>>composed within the bounds of current container if it will fit. That’s
>>why I am composing table content into TextFlowTableBlocks which subclass
>>TextFlowLine. This allows the table content to be composed as regular
>>lines would. it should even allow for vertical text justification and
>>the like. The section of table would all be treated as a single line.
>>Any cell content in the table that does NOT fit, is pushed to the next
>>container of the parent textflow and composed in a new
>>TextFlowTableBlock.
>> 
>> 
>

Reply via email to