-
Notifications
You must be signed in to change notification settings - Fork 16
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Does half-leading apply to a line-area? #858
Comments
I believe that each line area has a half-leading that is independent of the half-leading of each inline area child. I will document the rationale for my position in a subsequent comment. |
Per [XSL-FO] §4.5 [1], the expanded-nominal-requested-line-rectangle associated with a line area includes half-leading (emphasis added):
In contrast, the distinct expanded-rectangle associated with a inline area child of a line area also includes half-leading (emphasis added):
Although the specification text cited here does not make it clear that the first use of half-leading is distinct from the second use of half-leading, that must logically follow from the definition of half-leading, which is defined, in [XSL-FO] §6.5.2 [2] as
Now, if one looks at this text alone, one might come to the (IMO wrong) conclusion that all half-leading values are tied to block areas, e.g., a line area or its parent block area; however, there is something essential missing here, which is that the As a consequence, the computation half-leading := line-height - (text-altitude + text-depth) must, by necessity, vary between a line area and inline area children of the line area. In particular, the half-leading of a line area and its children inline areas will be the same only if they share the same line-height, text-altitude, and text-depth values. While this latter condition will indeed apply in many cases, it will not apply as soon as the line-height, text-altitude, or text-depth of an inline object differs from its parent block object. Note well the text in XSL-FO §4.6 [3]:
This interpretation is also reflected in the language in CSS2.2 §10.8.1 [4], though that language has some vagaries as well. Now, combine this with the explicit intention stated by XSL-FO §7.16.6 [5] that
So, regarding whether the language of XSL-FO or CSS applies to the In regards to some of the vagaries found in XSL-FO, I recently posted a message to the (now mostly inactive) XSL-FO Mail List [6], which is worth reviewing in the present context. [1] https://www.w3.org/TR/2006/REC-xsl11-20061205/#area-line |
@skynavga Thanks for detailed reasoning. This needs some proper review from my side. I will also try to test this with XSL-FO rendering application. In any case if we come to a conclusion there needs to be a transparent and understandable explanation how spacing based on line height is applied. In TTML the minimun, maximum and optimum components are never mentioned and it is not clear how this affects TTML. |
@TairT XSL-FO uses a more general treatment of length or distance dimension values, each of which has 5 components:
whereas, for TTML, length/distance dimension values have a single component. Conversion between the two is as follows:
See XSL-FO §4.3 [1] for more info. |
@TairT could you propose a spec change or close this issue please |
@skynavga Thanks for the details. I close this issue. See #859 (comment) for explanation. |
Section 11.3.2.2 - Line Stacking Strategy
I doubt that there is half leading applied to the line area at all. Regarding line area construction it is only applied to inline areas.
This needs to be clarified. If the assumption is correct this needs to be amended in the Spec.
The text was updated successfully, but these errors were encountered: