![](/img/trans.png)
[英]How do you implement inheritance with tables that have multi-column/composite primary keys (JPA 1.0 @IdClass)?
[英]How to calculate the widths of multi-column (colspan) HTML-tables?
我正在嘗試在編寫的Java程序longtabu
HTML表解析為LaTeX代碼(使用longtabu
因為它支持自定義列寬設置)。 我的代碼運行得非常穩定,直到現在為止,輸出似乎還可以。 我必須支持表的colspan
-feature(我現在暫時跳過rowspan),這就是問題所在。 導致問題的表如下所示:
<table>
<tr>
<td width="385" colspan="3">
Content
</td>
<td width="359" colspan="3">
Content
</td>
<td width="151">
Content
</td>
</tr>
<tr>
<td width="24">
Content
</td>
<td width="361" colspan="2">
Content
</td>
<td width="359" colspan="3">
Content
</td>
<td width="151">
Content
</td>
</tr>
<tr>
<td width="24">
Content
</td>
<td width="276">
Content
</td>
<td width="85">
Content
</td>
<td width="198" colspan="2">
Content
</td>
<td width="161">
Content
</td>
<td width="151">
Content
</td>
</tr>
我發現了一個事實,就是沒有一個表行定義所有列寬。
以我的理解,我需要一個線性方程組來解決單列寬度的計算...我是對的還是我錯過了什么?
用Java解決這種方程組的最佳方法是什么?
假設源表沒有過度約束,約束不足或不一致約束,我建議:
這是一個n平方(或更差的算法),但是只要表沒有一萬行或一列就可以了。 如果表格正確約束,則將到達定義所有列寬的位置。 諸如此類的蠻力算法的優點是,它相對容易調試並且應該穩定。
如果表約束不足,則到達傳遞點的位置,並且仍存在未計算的列寬。 如果要處理此問題,請添加另一遍,這一次要采用涉及未計算表列的任意約束,該約束還必須包含一個或多個其他未計算表列,並在其中的所有未計算列中平均分配剩余空間約束。 由於這是一個任意約束,因此您可能會在不同的運行中得到不同的答案...但是表受到限制...這有關系嗎?
完成后,您將擁有一個具有所有列寬的完整事實表,然后可以使用指定的所有表列生成LaTeX代碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.