I have been experimenting with bulleted lists, in particular to placing the bullets. This is what I have discovered so far:
With "outside" lists, using paragraphEndIndent in ListMarkerFormat, the right most I can put the bullet is with the right edge of the bullet line up with the left edge of the listAutoPadding line. For example:
<list listStylePosition='outside' listStyleType='disc' listAutoPadding="40"><listMarkerFormat><ListMarkerFormat paragraphEndIndent="0"/></listMarkerFormat>...
With "inside" lists, with empty beforeContent, the left most I can put the bullet is with the left edge of the bullet line up with the right side of the listAutoPadding line. For example:
<list listStylePosition='inside' listStyleType='disc' listAutoPadding="40"><listMarkerFormat><ListMarkerFormat beforeContent=""/></listMarkerFormat>...
However, there is a "gap" between these two, and that is the bullet sitting right on the listAutoPadding line itself. For example, half of the bullet on one side of the listAutoPadding line and half on the other. Is there a way to put the bullet on this line? Is there a better way to place bullets? (In general, I'm not finding a lot of good documentation on how to use lists. And I'm having to write a lot of code to switch between rather different approaches of setting up lists due to "inside" vs "outside.") Or am I doing this completely wrong? I wouldn't mind getting more info on how to set up lists using various values of left indent, first indent, etc, such as used in InDesign.
Thanks for the info.
TLF actually created two FTE's TextLine objects for one listItem object. One is the bullet line and the other is the listItem's content line. The position of the two line objects are controlled by different list and listItem attributes. There actually no 'listAutoPadding line'. It is something controlled by the attributes...
I am not quite sure what your issue is. But in theory, you can put your bullet and content to any position you wanted by config the right attribute. Can you give an illlustration so that we can better understand your needs and find out the solution for you?
Thank you for your reply. I will try to explain in more details what I was talking about.
As part of setting up bullets in InDesign, I use "left indent" to set where the left side of the text is. In TLF, I am using listAutoPadding to do the same. If this is not correct, please let me know what attribute I should use. This left indent/listAutoPadding/left side of the paragraphs line up in a vertical "line," and that's what I meant by listAutoPadding line. It's not an actual line, it's just where the left side of the paragraphs line up against. In the image enclosed, I'm drawing this line in red, to illustrate and use as reference.
For list style position as outside example I gave, let me try to "draw" it using text, and use arrows to show the directions the bullet can move.
<- * -> Text start...
In this outside example, I can move the bullet left and right by changing the value of paragraphEndIndent. However, I noticed that the smallest value I can set is 0. Negative values are treated the same as 0. This means the right most I can place the bullet is just to the left of left indent/listAutoPadding. In the enclosed image, please refer to "outside" item.
For list style position as inside example, I'd have something like:
<- * -> Text start....
In this inside example, I use contentBefore in combination of setting tabStops to place the bullet. However, the left most position I can place the bullet in this case is using empty content before, and that puts the bullet against the left indent/listAutoPadding on the right. In the enclosed image, please see "inside" item.
This leaves a gap between the two ranges, and that gap is with the bullet right on the left indent/autoListPadding. In the enclosed image, please see "middle" item. If I want to place the bullet on this left indent/listAutoPadding line, I can't seem to use either outside or inside settings. Please advise on how I can achieve this effect. Thank you.
The best docs we have on lists is here: http://blogs.adobe.com/tlf/2010/07/tlf-20-lists-markup.html.
"listAutoPadding" is the padding applied to the list if the padding value of the list element is set to "auto". So if you set the padding to 0, no padding will be applied, leaving the list paragraphs at the same indent level as the outer paragraphs. You can move it in from there to anywhere you want, using postive numbers, or out using negative numbers. But you'd have to calculate the exact setting required for having the bullet in the midpoint, depending on font and font size; that's not a calculation TLF will do for you.
Hope this helps,
Thank you for the clarification.
Regarding the horizontal position of the bullet, after reading the documents and doing experiments, as far as I can tell, the bullet can either be completely to the left or completely to the right of the padding "line," but not on the line itself. I am not able to come up with any combination of attribute values to place the bullet such that it partially crosses the line. In my previous enclosed image, the case labeled "middle" is what I am trying to achieve but unable to. Is there a way to setup the attribute values to achieve this effect?
There is nothing that will allow you to center the marker on the line, sorry. I believe that it should be possible to change the position of the marker relative to the text by adjusting its padding in the ListMarkerFormat, but I don't think that works, currently. That's something that should be considered for adding to a future version.