2010-05-06 162 views
3

我需要以編程方式生成一個具有垂直合併列的表格的RTF文檔。在RTF中垂直合併單元格

______________________________ 
| merged | foo | hello | 
| cell |  |   | 
| right |--------|----------| 
| here | bar | world | 
|_________|________|__________| 

我在網上看了看,發現該代碼\ clvmgf和\ clvmrg 但我不能找到一個體面的例子。

我用MS字創建了一個文本rtf,但其中有太多的垃圾rtf代碼讓我想出了將\ clvmgf和\ clvmrg放到哪裏的工作。

有人能給我一個rtf上面的示例表沒有多餘的rtf代碼,所以我可以找出\ clvmgf和\ clvmrg是如何工作的?

任何額外的解釋也將不勝感激。

謝謝!

回答

0

您可以在word中創建表格,將其複製並粘貼到WRITE.EXE &保存中。 我懷疑它使用最少量的代碼,但它比東西詞吐在它更好。

+0

剛剛在Windows 7中嘗試過,因爲我有一個類似的想法。雖然Windows 7寫字板似乎不能正確支持合併的單元格。 – OregonGhost 2010-05-06 15:34:42

+0

是的,我已經試過了,而且寫字板只是把這些單元取消了。 – 2010-05-06 15:37:17

+0

適用於我(xp)FWIW這裏是與您的示例相同佈局的RTF http://pastebin.com/2cAF3KvD – 2010-05-06 15:49:52

3

這裏是爲你介紹的表簡單RTF:

{\rtf1\ansi\ansicpg1252\deff0\deflang2057{\fonttbl{\f0\froman\fprq2\fcharset0 Times New Roman;}} 
\fs20\viewkind4\uc1 

\trowd \clvmgf \cellx2972 \cellx6053 \cellx9134\pard\intbl merged cell right here\cell foo\cell hello\cell\row 
\trowd \clvmrg \cellx2972 \cellx6053 \cellx9134\pard\intbl\cell bar\cell world\cell\row 
\pard\par 
} 

我從亞歷克斯-K的例子,並簡化它,使其更易於閱讀。