假設我有自己的標記語言,它允許我使用TextElements和ImageElements的數組。其中的每一個都可以具有「float:left/right/none」和「clear:none/left/right/both」等屬性。此外,非浮動元素可以在浮動元素周圍流動。基本上,所有像CSS浮動佈局。像CSS這樣的頁面佈局的數據結構漂浮
例如:
Elem1 elem2時 Elem3 Elem4 Elem5 _ Elem6
什麼是用來存儲這些元素,而我解僱他們出最好的數據結構?我需要的東西可以很容易地回答這樣的問題:
- 是否有足夠的空間來適應元素2左側或右側的Element1?
- Element1的頁面座標,原點和大小是多少?
我會基本上存儲如下的結構:
{元素,原點(x,y)時,尺寸(W,H)}
對該每個已經紡出元件數據結構。
有一些像RTrees,QuadTrees等類似的東西,但我想要一些簡單的東西來抽象地表示矩形在頁面上的佈局以供我的佈局算法使用。
注意:我不是在HTML中執行此操作,而是在iOS應用程序中對元素進行佈局,並且由於需要支持早期的iOS版本,因此無法使用iOS 6約束。
謝謝!