/irc-logs / w3c / #css / 2011-10-28 / end

Options:

  1. # Session Start: Fri Oct 28 00:00:00 2011
  2. # Session Ident: #css
  3. # [00:01] * Quits: TabAtkins_ (tabatkins@72.14.229.17) (Ping timeout)
  4. # [00:02] * Quits: arno (arno@192.150.10.200) (Quit: Leaving.)
  5. # [00:04] * Joins: arno (arno@192.150.10.200)
  6. # [00:05] * Quits: arno (arno@192.150.10.200) (Quit: Leaving.)
  7. # [00:06] * Joins: arno (arno@192.150.10.200)
  8. # [00:35] * Quits: arno (arno@192.150.10.200) (Quit: Leaving.)
  9. # [00:39] * Joins: arno (arno@192.150.10.200)
  10. # [00:48] * Quits: arno (arno@192.150.10.200) (Quit: Leaving.)
  11. # [00:49] <fantasai> hyatt: am now
  12. # [00:50] <fantasai> hyatt: sorry, was making lunch
  13. # [00:50] <fantasai> hyatt: The thing I haven't figured out wrt line grid is exactly how to determine the snap point
  14. # [00:50] <fantasai> hyatt: That's what I'm most stuck on right now
  15. # [00:51] <fantasai> hyatt: If you slide down to the next line on the grid when you're over, then it won't work for straightening the wavering baselines you get with random mixed fonts
  16. # [00:51] <fantasai> hyatt: you'll randomly jump
  17. # [00:59] * Joins: ChrisL2 (ChrisL@205.248.100.252)
  18. # [00:59] * Quits: ChrisL (ChrisL@128.30.52.169) (Quit: Fire on main board error, client combusted)
  19. # [00:59] * Quits: ChrisL2 (ChrisL@205.248.100.252) (Client exited)
  20. # [00:59] * Joins: ChrisL (ChrisL@128.30.52.169)
  21. # [01:00] * Joins: TabAtkins_ (tabatkins@64.236.139.254)
  22. # [01:01] * Joins: arno (arno@192.150.10.200)
  23. # [01:11] * Quits: arno (arno@192.150.10.200) (Ping timeout)
  24. # [01:28] * Joins: myakura (myakura@203.136.164.250)
  25. # [01:34] * Quits: myakura (myakura@203.136.164.250) (Client exited)
  26. # [01:44] * Joins: jarek (jarek@79.186.18.228)
  27. # [01:45] * Joins: dbaron (dbaron@63.245.220.240)
  28. # [02:31] * Quits: TabAtkins_ (tabatkins@64.236.139.254) (Ping timeout)
  29. # [03:11] * Quits: dbaron (dbaron@63.245.220.240) (Quit: 8403864 bytes have been tenured, next gc will be global.)
  30. # [03:16] * Quits: arronei (arronei@131.107.0.113) (Ping timeout)
  31. # [03:20] * Joins: arronei (arronei@131.107.0.116)
  32. # [03:21] * Quits: jarek (jarek@79.186.18.228) (Ping timeout)
  33. # [03:23] * Joins: jarek (jarek@83.27.239.2)
  34. # [03:40] * Quits: ChrisL (ChrisL@128.30.52.169) (Ping timeout)
  35. # [03:52] * Joins: dbaron (dbaron@173.228.28.129)
  36. # [03:53] * Joins: jarek_ (jarek@83.27.235.236)
  37. # [03:54] * Quits: jarek (jarek@83.27.239.2) (Ping timeout)
  38. # [04:33] * Joins: jarek (jarek@79.186.18.229)
  39. # [04:34] * Quits: jarek_ (jarek@83.27.235.236) (Ping timeout)
  40. # [05:02] * Joins: stearns (anonymous@209.119.68.98)
  41. # [05:04] * Joins: jarek_ (jarek@83.27.235.244)
  42. # [05:05] * Quits: jarek (jarek@79.186.18.229) (Ping timeout)
  43. # [05:29] * Joins: karl (karlcow@128.30.54.58)
  44. # [05:38] * Quits: jarek_ (jarek@83.27.235.244) (Quit: jarek_)
  45. # [06:13] * Joins: ChrisL (ChrisL@128.30.52.169)
  46. # [06:31] * Quits: ChrisL (ChrisL@128.30.52.169) (Quit: Fire on main board error, client combusted)
  47. # [07:26] * Quits: dbaron (dbaron@173.228.28.129) (Ping timeout)
  48. # [07:31] * Joins: dbaron (dbaron@173.228.28.129)
  49. # [07:32] * Quits: dbaron (dbaron@173.228.28.129) (Quit: 8403864 bytes have been tenured, next gc will be global.)
  50. # [07:46] * Joins: arno (arno@192.150.10.200)
  51. # [07:46] * Quits: arno (arno@192.150.10.200) (Client exited)
  52. # [07:54] * Quits: stearns (anonymous@209.119.68.98) (Quit: stearns)
  53. # [11:10] * Quits: shepazu (shepazu@128.30.52.169) (Quit: shepazu)
  54. # [11:59] * Joins: myakura (myakura@203.136.164.250)
  55. # [12:03] * Quits: myakura (myakura@203.136.164.250) (Client exited)
  56. # [12:57] * Joins: myakura (myakura@203.136.164.250)
  57. # [15:02] * Joins: miketaylr (miketaylr@206.217.92.186)
  58. # [16:06] * Quits: myakura (myakura@203.136.164.250) (Client exited)
  59. # [16:32] * Joins: stearns (anonymous@209.119.68.98)
  60. # [17:07] * Quits: florianr (florianr@213.236.208.22) (Ping timeout)
  61. # [17:10] * Joins: florianr (florianr@213.236.208.22)
  62. # [17:18] * Quits: stearns (anonymous@209.119.68.98) (Quit: stearns)
  63. # [17:18] * Quits: florianr (florianr@213.236.208.22) (Client exited)
  64. # [17:53] <hyatt> fantasai: why not just lay out the whole line and then only adjust the baseline of the root line box
  65. # [17:53] <hyatt> doesn't seem like you have to do per-box adjusting, just a single line adjustment
  66. # [18:17] * Joins: stearns (anonymous@216.239.45.22)
  67. # [18:25] <hyatt> fantasai: also, seems like line-box-contain could be used as the property to apply "tolerance" in mixed font scenarios
  68. # [18:26] <hyatt> heck, line-box-contain by itself practically gives you the grid as long as you don't' use much bigger fonts :)
  69. # [18:26] <hober> i'd almost want "line-grid:foo" to imply line-box-contain behavior
  70. # [18:27] <hober> hey, you wanted a grid, so you get a regular grid
  71. # [18:29] <hyatt> i really like the idea that line-grid just says creates a named grid and line-snap is what causes you to align to it
  72. # [18:30] <hyatt> i really have no problem with a slightly taller font pushing you to the next line of the grid
  73. # [18:30] <hyatt> since technically if it doesn't, you're saying you want that font to overlap the previous line
  74. # [18:30] <hyatt> oh i guess that's not necessarily true because of line-height
  75. # [18:31] <hyatt> but yeah pretty sure ibooks just defines line-box-contain now
  76. # [18:31] <hyatt> so basically it has a line-grid and just ignores the other fonts on a line in descendant boxes
  77. # [18:31] * Joins: jarek (jarek@83.27.233.214)
  78. # [18:32] <hyatt> although i guess margins etc. would throw off the grid
  79. # [18:32] <hyatt> but in japanese you wouldn't have the margins
  80. # [18:32] <hober> right right
  81. # [18:33] <hyatt> seems like you just want some kind of "tolerance"
  82. # [18:33] <hyatt> for mixed font scenarios
  83. # [18:34] <hyatt> where the font may only be e.g., 1px bigger than the grid's font
  84. # [18:34] <hyatt> you need it to work without line-box-contain so that the case where you use an obviously bigger font doesn't look bad
  85. # [18:35] <hyatt> in places where you want a grid and do have lots of irregularity in font choices
  86. # [18:35] <hyatt> that seems tricky
  87. # [18:36] <hyatt> one idea that might work is being willing to shed the line-height off larger fonts
  88. # [18:36] <hyatt> the leading
  89. # [18:36] <hyatt> to stay aligned to the grid
  90. # [18:36] <hyatt> and only move if all the leading is eaten up and you still don't fit
  91. # [18:36] * Joins: ChrisL (ChrisL@128.30.52.169)
  92. # [18:40] <hyatt> hober: guess i'll just implement it with zero tolerance for now
  93. # [18:44] <fantasai> hyatt: It's not about the font being bigger
  94. # [18:44] <fantasai> hyatt: It's about the same-size fonts aligning differently once you align their baselines
  95. # [18:44] <fantasai> hyatt: such that the content box is bigger than 1em
  96. # [18:44] <fantasai> hyatt: margins don't count in line box calculations anyway
  97. # [18:44] * Joins: plinss (plinss@216.239.45.23)
  98. # [18:44] * fantasai waves to plinss
  99. # [18:45] <fantasai> plinss: join #test
  100. # [18:45] <hyatt> yeah i know margins aren't relevant
  101. # [18:45] * plinss waves back
  102. # [18:45] <hyatt> what alignment algorithm are you envisioning? I had assumed you'd just snap the root baseline, i.e., move the entire line
  103. # [18:45] <hyatt> rather than looking at any specific line boxes on the line
  104. # [18:45] <hyatt> so any delta between boxes on the same line would be preserved and unaffected by the snapping
  105. # [18:46] <fantasai> right
  106. # [18:47] <fantasai> but you only want to do that if the line box is going to fit between them
  107. # [18:47] <hyatt> fit between what?
  108. # [18:47] <fantasai> if you have a line that is line-height: 2; and the line grid is line-height: 1; then you want to snap every other line
  109. # [18:47] <fantasai> right?
  110. # [18:47] <fantasai> and if you have line-height: 1.5, then you'll also wind up snapping every other line
  111. # [18:47] <hyatt> yup
  112. # [18:48] <hyatt> isn't that what would happen?
  113. # [18:48] <fantasai> yes
  114. # [18:48] <fantasai> Now
  115. # [18:48] <fantasai> if you have line-height: 1, you want to snap to every line
  116. # [18:48] <fantasai> right?
  117. # [18:49] <hyatt> would like to, but maybe my font is way bigger
  118. # [18:49] <hyatt> i mean, i was assuming you do this
  119. # [18:49] <hyatt> assume the previous line has been snapped
  120. # [18:49] <fantasai> assume the same font size throughout
  121. # [18:49] <hyatt> and is placed properly
  122. # [18:49] <fantasai> yes
  123. # [18:49] <fantasai> now
  124. # [18:49] <hyatt> then the next line i would compute a hypothetical placement
  125. # [18:49] <hyatt> below the previous snapped line
  126. # [18:49] <fantasai> even though we have line-height: 1; and the font size has not changed
  127. # [18:49] <hyatt> without doing any snapping
  128. # [18:49] <hyatt> and then just move down to the next baseline once the whole line has been laid out
  129. # [18:49] <fantasai> if we have mixed fonts, it's possible for the distance between two baselines to be more than 1em.
  130. # [18:50] <fantasai> but in that case you still want to snap to every line
  131. # [18:50] <fantasai> not randomly jump whenever there's font fallback on the line
  132. # [18:50] <hyatt> yeah we're talking about the same situation
  133. # [18:50] <hyatt> we'rej ust phrasing it differently
  134. # [18:50] <fantasai> k :)
  135. # [18:51] <hyatt> line-box-contain is already turned on for all of ibooks heh
  136. # [18:51] <hyatt> so fallback fonts never even get looked at
  137. # [18:51] <fantasai> So we need to have a tolerance definition that works around that particular issue
  138. # [18:51] <hyatt> well, their glyphs do, but nothing else heh
  139. # [18:51] <hyatt> fantasai: i suggested an idea of being willing to consume leading
  140. # [18:51] <fantasai> right, but how much? and what if there isn't any?
  141. # [18:51] <hyatt> to eat into the fallback font's leading
  142. # [18:51] <hyatt> yeah
  143. # [18:52] <fantasai> anyway, I was thinking about this on the train today
  144. # [18:52] <hyatt> if there isn't any leading, though, you are asking for the glyphs of the font to potentially overlap
  145. # [18:52] <hyatt> which seems wrong to me
  146. # [18:52] <fantasai> I think we could define that tolerance
  147. # [18:52] <fantasai> as the distance between embox top of the highest-aligned font and the embox bottom of the lowest-aligned font
  148. # [18:52] <fantasai> er
  149. # [18:52] <fantasai> s/bottom/top/
  150. # [18:52] <fantasai> so basically the variance
  151. # [18:53] <hyatt> so you'd just look at all the used fonts on the line?
  152. # [18:53] <fantasai> (or range, I guess woudl be the statistical term)
  153. # [18:53] <fantasai> yes
  154. # [18:53] <fantasai> align them all against your baseline
  155. # [18:53] <hyatt> ah and look at unscaled embox
  156. # [18:53] <hyatt> or scaled to the font size of the grid or the font size of the root box
  157. # [18:53] <fantasai> and take the difference between the highest and the lowest as your slack
  158. # [18:53] <hyatt> one of those i guess
  159. # [18:54] * Joins: TabAtkins_ (tabatkins@216.239.45.4)
  160. # [18:54] <fantasai> well, I'd include anything on the line, like we do today
  161. # [18:54] <hyatt> right but an actual 2x size font should cause you to push etc
  162. # [18:54] <fantasai> if the author wants larger font sizes to leak, then they should specify line-height: 1em; instead of line-height: 1
  163. # [18:54] <hyatt> you're mostly concerned with a tolerance based deltas between fonts of the same size
  164. # [18:54] <fantasai> yeah
  165. # [18:55] <fantasai> that's the one that nobody'll understand or be able to fix
  166. # [18:55] <hyatt> so the slack should probably be computed s though all the used fonts have the same font size
  167. # [18:55] <hyatt> that way you don't do the wrong thing if the font really is much bigger
  168. # [18:56] <hyatt> but yeah it's that "oh this font had a 1px baseline shift relative to the root because it's fallback and now the entire line snapped to the next grid position instead"
  169. # [18:56] <fantasai> if it's bigger, then the line box will grow as necessary..
  170. # [18:56] <hyatt> that's the case to fix
  171. # [18:56] <fantasai> right
  172. # [18:56] <fantasai> in mixed-script books, you'll get a lot of that :)
  173. # [18:56] <hyatt> yeah
  174. # [18:56] <fantasai> also when you're mixing fonts intentionally, e.g. using monospace for code snippets
  175. # [18:56] <hyatt> as i sad though we set line-box-contain
  176. # [18:56] <hyatt> said
  177. # [18:56] <hyatt> so it's less of an issue for us
  178. # [18:56] * Joins: dbaron (dbaron@206.15.76.122)
  179. # [18:57] <hyatt> ibooks has line-box-contain set to "block glyphs replaced" for all books
  180. # [18:57] <hyatt> so it won't run into these issues really
  181. # [18:57] <hyatt> even if i defined a grid with zero tolerance
  182. # [18:57] * fantasai hasn't looked at line-box-contain enough to remember what all that means :)
  183. # [18:58] <hyatt> basically it means that fallback fonts or different fonts in inline descendants only use their glyph bounds as far as affecting the line
  184. # [18:59] <hyatt> so they are extremely unlikely to push the line down
  185. # [18:59] <hyatt> ever
  186. # [18:59] <fantasai> ...
  187. # [18:59] <fantasai> depends on the font there :)
  188. # [18:59] <hyatt> yeah can still happen
  189. # [18:59] <hyatt> just very very unlikely
  190. # [19:00] <hyatt> since the glyph will typically fit in the leading of the other font even if there's a 1-2px difference
  191. # [19:00] <fantasai> fair
  192. # [19:00] <fantasai> especially for books that would work better
  193. # [19:00] <fantasai> since they tend not to use flourishy fonts :)
  194. # [19:00] <hyatt> yeah this was the fix we made for the problem of larger fonts commonly being used on first lines of chapters
  195. # [19:00] <hyatt> causing the first line of a chapter to suddenly have a huge descent
  196. # [19:00] <fantasai> ouch
  197. # [19:00] <fantasai> yeah
  198. # [19:01] <hyatt> ok lunchtime
  199. # [19:01] <hyatt> bbl
  200. # [19:01] <fantasai> laters~
  201. # [19:32] * Quits: karl (karlcow@128.30.54.58) (Quit: Freedom - to walk free and own no superior.)
  202. # [19:42] * Quits: jarek (jarek@83.27.233.214) (Ping timeout)
  203. # [19:44] * Joins: jarek (jarek@79.186.16.175)
  204. # [20:33] * Quits: jarek (jarek@79.186.16.175) (Ping timeout)
  205. # [20:33] * Joins: jarek (jarek@79.186.16.139)
  206. # [20:33] * Quits: jarek (jarek@79.186.16.139) (Quit: jarek)
  207. # [20:37] * Quits: stearns (anonymous@216.239.45.22) (Quit: stearns)
  208. # [20:38] * Quits: plinss (plinss@216.239.45.23) (Quit: plinss)
  209. # [20:41] * Quits: TabAtkins_ (tabatkins@216.239.45.4) (Ping timeout)
  210. # [20:51] * Joins: bluebearing (4428bc9a@64.62.228.82)
  211. # [21:02] * Parts: bluebearing (4428bc9a@64.62.228.82)
  212. # [21:03] * Quits: anne (annevk@83.85.115.123) (Ping timeout)
  213. # [21:31] * Joins: shepazu (shepazu@128.30.52.169)
  214. # [21:41] * Joins: stearns (anonymous@216.239.45.18)
  215. # [21:43] * Joins: plinss (plinss@216.239.45.19)
  216. # [21:58] * Joins: TabAtkins_ (tabatkins@216.239.45.4)
  217. # [23:10] * Quits: miketaylr (miketaylr@206.217.92.186) (Quit: miketaylr)
  218. # [23:28] * Quits: TabAtkins_ (tabatkins@216.239.45.4) (Ping timeout)
  219. # [23:33] * Quits: plinss (plinss@216.239.45.19) (Quit: plinss)
  220. # [23:36] * Joins: plinss (plinss@216.239.45.19)
  221. # [23:42] * Joins: TabAtkins_ (tabatkins@216.239.45.4)
  222. # [23:50] * Joins: jarek (jarek@79.186.11.153)
  223. # Session Close: Sat Oct 29 00:00:01 2011

The end :)