From df9d79cb81cd600f9b155d542c605abda4827310 Mon Sep 17 00:00:00 2001 From: fiddlosopher <fiddlosopher@788f1e2b-df1e-0410-8736-df70ead52e1b> Date: Thu, 11 Mar 2010 03:01:09 +0000 Subject: [PATCH] RTF writer: fixed headerless tables. git-svn-id: https://pandoc.googlecode.com/svn/trunk@1877 788f1e2b-df1e-0410-8736-df70ead52e1b --- src/Text/Pandoc/Writers/RTF.hs | 4 +- tests/tables.rtf | 79 ++++++++++++++++++++++++++++++++++ 2 files changed, 82 insertions(+), 1 deletion(-) diff --git a/src/Text/Pandoc/Writers/RTF.hs b/src/Text/Pandoc/Writers/RTF.hs index 9f3b9de2a..b9ef2a29a 100644 --- a/src/Text/Pandoc/Writers/RTF.hs +++ b/src/Text/Pandoc/Writers/RTF.hs @@ -173,7 +173,9 @@ blockToRTF indent _ HorizontalRule = blockToRTF indent alignment (Header level lst) = rtfPar indent 0 alignment $ "\\b \\fs" ++ (show (40 - (level * 4))) ++ " " ++ inlineListToRTF lst blockToRTF indent alignment (Table caption aligns sizes headers rows) = - tableRowToRTF True indent aligns sizes headers ++ + (if all null headers + then "" + else tableRowToRTF True indent aligns sizes headers) ++ concatMap (tableRowToRTF False indent aligns sizes) rows ++ rtfPar indent 0 alignment (inlineListToRTF caption) diff --git a/tests/tables.rtf b/tests/tables.rtf index bd0a88467..e7c1e9f60 100644 --- a/tests/tables.rtf +++ b/tests/tables.rtf @@ -278,4 +278,83 @@ } \intbl\row} {\pard \ql \f0 \sa180 \li0 \fi0 \par} +{\pard \ql \f0 \sa180 \li0 \fi0 Table without column headers:\par} +{ +\trowd \trgaph120 +\cellx2160\cellx4320\cellx6480\cellx8640 +\trkeep\intbl +{ +{\intbl {\pard \qr \f0 \sa0 \li0 \fi0 12\par} +\cell} +{\intbl {\pard \ql \f0 \sa0 \li0 \fi0 12\par} +\cell} +{\intbl {\pard \qc \f0 \sa0 \li0 \fi0 12\par} +\cell} +{\intbl {\pard \qr \f0 \sa0 \li0 \fi0 12\par} +\cell} +} +\intbl\row} +{ +\trowd \trgaph120 +\cellx2160\cellx4320\cellx6480\cellx8640 +\trkeep\intbl +{ +{\intbl {\pard \qr \f0 \sa0 \li0 \fi0 123\par} +\cell} +{\intbl {\pard \ql \f0 \sa0 \li0 \fi0 123\par} +\cell} +{\intbl {\pard \qc \f0 \sa0 \li0 \fi0 123\par} +\cell} +{\intbl {\pard \qr \f0 \sa0 \li0 \fi0 123\par} +\cell} +} +\intbl\row} +{ +\trowd \trgaph120 +\cellx2160\cellx4320\cellx6480\cellx8640 +\trkeep\intbl +{ +{\intbl {\pard \qr \f0 \sa0 \li0 \fi0 1\par} +\cell} +{\intbl {\pard \ql \f0 \sa0 \li0 \fi0 1\par} +\cell} +{\intbl {\pard \qc \f0 \sa0 \li0 \fi0 1\par} +\cell} +{\intbl {\pard \qr \f0 \sa0 \li0 \fi0 1\par} +\cell} +} +\intbl\row} +{\pard \ql \f0 \sa180 \li0 \fi0 \par} +{\pard \ql \f0 \sa180 \li0 \fi0 Multiline table without column headers:\par} +{ +\trowd \trgaph120 +\cellx1296\cellx2484\cellx3888\cellx6804 +\trkeep\intbl +{ +{\intbl {\pard \qc \f0 \sa0 \li0 \fi0 First\par} +\cell} +{\intbl {\pard \ql \f0 \sa0 \li0 \fi0 row\par} +\cell} +{\intbl {\pard \qr \f0 \sa0 \li0 \fi0 12.0\par} +\cell} +{\intbl {\pard \ql \f0 \sa0 \li0 \fi0 Example of a row that spans multiple lines.\par} +\cell} +} +\intbl\row} +{ +\trowd \trgaph120 +\cellx1296\cellx2484\cellx3888\cellx6804 +\trkeep\intbl +{ +{\intbl {\pard \qc \f0 \sa0 \li0 \fi0 Second\par} +\cell} +{\intbl {\pard \ql \f0 \sa0 \li0 \fi0 row\par} +\cell} +{\intbl {\pard \qr \f0 \sa0 \li0 \fi0 5.0\par} +\cell} +{\intbl {\pard \ql \f0 \sa0 \li0 \fi0 Here's another one. Note the blank line between rows.\par} +\cell} +} +\intbl\row} +{\pard \ql \f0 \sa180 \li0 \fi0 \par}