diff options
-rw-r--r-- | sw/qa/extras/rtfexport/data/tdf129578_lostBI.rtf | 31 | ||||
-rw-r--r-- | sw/qa/extras/rtfexport/rtfexport4.cxx | 9 | ||||
-rw-r--r-- | writerfilter/source/rtftok/rtfdocumentimpl.cxx | 4 |
3 files changed, 42 insertions, 2 deletions
diff --git a/sw/qa/extras/rtfexport/data/tdf129578_lostBI.rtf b/sw/qa/extras/rtfexport/data/tdf129578_lostBI.rtf new file mode 100644 index 000000000000..8a0e96218bca --- /dev/null +++ b/sw/qa/extras/rtfexport/data/tdf129578_lostBI.rtf @@ -0,0 +1,31 @@ +{\rtf1\ansi\deff4\adeflang1025 +{\fonttbl{\f0\froman\fprq2\fcharset0 Times New Roman;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\fswiss\fprq2\fcharset0 Arial;}{\f3\froman\fprq2\fcharset0 Liberation Serif{\*\falt Times New Roman};}{\f4\froman\fprq0\fcharset128 Calibri;}{\f5\froman\fprq0\fcharset128 Times New Roman;}{\f6\froman\fprq0\fcharset128 Cambria;}{\f7\froman\fprq0\fcharset128 Tahoma;}{\f8\fnil\fprq2\fcharset0 MS Mincho;}{\f9\fnil\fprq2\fcharset128 \'91\'76\'91\'cc;}{\f10\fnil\fprq2\fcharset0 DejaVu Sans;}{\f11\froman\fprq0\fcharset128 Arial;}} +{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;\red82\green125\blue85;} +{\stylesheet{\s0\snext0\rtlch\af11\afs22\alang1037 \ltrch\lang1033\langfe2052\hich\af4\loch\sl276\slmult1\ql\widctlpar\hyphpar0\sb0\sa200\ltrpar\cf0\f4\fs22\lang1033\kerning0\dbch\af9\langfe2052 Normal;} +{\s1\sbasedon0\snext0\rtlch\af5\afs28\alang1037\ab \ltrch\lang1033\langfe2052\hich\af6\loch\sl276\slmult1\ql\keep\widctlpar\hyphpar0\sb480\sa0\keepn\ltrpar\cf17\f6\fs28\lang1033\b\kerning0\dbch\af9\langfe2052 Heading 1;} +{\*\cs15\snext15 Default Paragraph Font;} +{\*\cs16\sbasedon15\snext16 Header Char;} +{\*\cs17\sbasedon15\snext17 Footer Char;} +{\*\cs18\sbasedon15\snext18\rtlch\af5\afs28\ab \ltrch\hich\af6\loch\cf17\f6\fs28\b\dbch\af9 Heading 1 Char;} +{\*\cs19\sbasedon15\snext19\rtlch\af7\afs16 \ltrch\hich\af7\loch\f7\fs16 Balloon Text Char;} +{\s20\sbasedon0\snext21\rtlch\af5\afs28\alang1037 \ltrch\lang1033\langfe2052\hich\af5\loch\sl276\slmult1\ql\widctlpar\hyphpar0\sb240\sa120\keepn\ltrpar\cf0\f5\fs28\lang1033\kerning0\dbch\af10\langfe2052 Heading;} +{\s21\sbasedon0\snext21\rtlch\af11\afs22\alang1037 \ltrch\lang1033\langfe2052\hich\af4\loch\sl276\slmult1\ql\widctlpar\hyphpar0\sb0\sa140\ltrpar\cf0\f4\fs22\lang1033\kerning0\dbch\af9\langfe2052 Text Body;} +{\s22\sbasedon21\snext22\rtlch\af5\afs22\alang1037 \ltrch\lang1033\langfe2052\hich\af5\loch\sl276\slmult1\ql\widctlpar\hyphpar0\sb0\sa140\ltrpar\cf0\f5\fs22\lang1033\kerning0\dbch\af9\langfe2052 List;} +{\s23\sbasedon0\snext23\rtlch\af5\afs24\alang1037\ai \ltrch\lang1033\langfe2052\hich\af5\loch\sl276\slmult1\ql\widctlpar\hyphpar0\sb120\sa120\noline\ltrpar\cf0\f5\fs24\lang1033\i\kerning0\dbch\af9\langfe2052 Caption;} +{\s24\sbasedon0\snext24\rtlch\af5\afs22\alang1037 \ltrch\lang1033\langfe2052\hich\af5\loch\sl276\slmult1\ql\widctlpar\hyphpar0\sb0\sa200\noline\ltrpar\cf0\f5\fs22\lang1033\kerning0\dbch\af9\langfe2052 Index;} +{\s25\sbasedon0\snext25\rtlch\af11\afs22\alang1037 \ltrch\lang1033\langfe2052\hich\af4\loch\sl276\slmult1\ql\widctlpar\hyphpar0\sb0\sa200\ltrpar\cf0\f4\fs22\lang1033\kerning0\dbch\af9\langfe2052 Header and Footer;} +{\s26\sbasedon0\snext26\rtlch\af11\afs22\alang1037 \ltrch\lang1033\langfe2052\hich\af4\loch\sl240\slmult1\ql\widctlpar\tqc\tx4680\tqr\tx9360\hyphpar0\sb0\sa0\ltrpar\cf0\f4\fs22\lang1033\kerning0\dbch\af9\langfe2052 Header;} +{\s27\sbasedon0\snext27\rtlch\af11\afs22\alang1037 \ltrch\lang1033\langfe2052\hich\af4\loch\sl240\slmult1\ql\widctlpar\tqc\tx4680\tqr\tx9360\hyphpar0\sb0\sa0\ltrpar\cf0\f4\fs22\lang1033\kerning0\dbch\af9\langfe2052 Footer;} +{\s28\sbasedon1\snext0\rtlch\af5\afs28\alang1025\ab \ltrch\lang1033\langfe1041\hich\af6\loch\sl276\slmult1\ql\keep\widctlpar\hyphpar0\sb480\sa0\keepn\ltrpar\cf17\f6\fs28\lang1033\b\kerning0\dbch\af9\langfe1041 TOC Heading;} +{\s29\sbasedon0\snext29\rtlch\af7\afs16\alang1037 \ltrch\lang1033\langfe2052\hich\af7\loch\sl240\slmult1\ql\widctlpar\hyphpar0\sb0\sa0\ltrpar\cf0\f7\fs16\lang1033\kerning0\dbch\af9\langfe2052 Balloon Text;} +{\s30\snext30\rtlch\af11\afs22\alang1037 \ltrch\lang1033\langfe2052\hich\af4\loch\sl240\slmult1\ql\widctlpar\hyphpar0\sb0\sa0\ltrpar\cf0\f4\fs22\lang1033\kerning0\dbch\af9\langfe2052 Revision;} +}{\*\generator LibreOffice/7.1.7.2$Linux_X86_64 LibreOffice_project/10$Build-2}{\info{\*\company Amazon.com}{\author EC2}{\creatim\yr2013\mo1\dy21\hr9\min3}{\revtim\yr2022\mo1\dy7\hr11\min5}{\printim\yr0\mo0\dy0\hr0\min0}}{\*\userprops{\propname AppVersion}\proptype30{\staticval 15.0000}}\deftab720\deftab720 +\hyphauto1\viewscale50 +{\*\pgdsctbl +{\pgdsc0\pgdscuse451\pgwsxn12240\pghsxn15840\marglsxn1440\margrsxn1440\margtsxn1440\margbsxn1440\pgdscnxt0 Default Page Style;}} +\formshade\paperh15840\paperw12240\margl1440\margr1440\margt1440\margb1440\sectd\sbknone\pgndec\sftnnar\saftnnrlc\sectunlocked1\pgwsxn12240\pghsxn15840\marglsxn1440\margrsxn1440\margtsxn1440\margbsxn1440\ftnbj\ftnstart1\ftnrstcont\ftnnar\aenddoc\aftnrstcont\aftnstart1\aftnnrlc\htmautsp +{\*\ftnsep\chftnsep}\pgndec\pard\plain \s0\rtlch\af11\afs22\alang1037 \ltrch\lang1033\langfe2052\hich\af4\loch\sl276\slmult1\ql\widctlpar\hyphpar0\sb0\sa200\ltrpar\cf0\f4\fs22\lang1033\kerning0\dbch\af9\langfe2052{\rtlch\afs48\ab \ltrch\langfe1041\dbch\afs48\langfe1041\ab\af8\dbch +\uc2 \u36020\'8b\'4d\u31038\'8e\'d0\u12414\'82\'dc\u12377\'82\'b7\u12414\'82\'dc\u12377\'82\'b7\u24481\'8c\'e4\u38534\'97\'b2\u26124\'8f\'b9\u12395\'82\'c9\u12390\'82\'c4\u12362\'82\'a8\u24950\'8c\'63\u12403\'82\'d1\u30003\'90\'5c\u12375\'82\'b5\u19978\'8f\'e3\u12370\'82\'b0\u12414\'82\'dc\u12377\'82\'b7\uc1 } +\par \pard\plain \s0\rtlch\af11\afs22\alang1037 \ltrch\lang1033\langfe2052\hich\af4\loch\sl276\slmult1\ql\widctlpar\hyphpar0\sb0\sa200\ltrpar\cf0\f4\fs22\lang1033\kerning0\dbch\af9\langfe2052\loch\sb0\sa200{\rtlch\afs48\ai\ab \ltrch\langfe1041\dbch\afs48\langfe1041\i\ab\af8\dbch +\uc2 \u24179\'95\'bd\u32032\'91\'66\u12399\'82\'cd\u26684\'8a\'69\u21029\'95\'ca\u12398\'82\'cc\u12372\'82\'b2\u39640\'8d\'82\u37197\'94\'7a\u12434\'82\'f0\u36060\'8e\'92\u12426\'82\'e8\u12289\'81\'41\u21402\'8c\'fa\u12367\'82\'ad\u24481\'8c\'e4\u31036\'97\'e7\u30003\'90\'5c\u12375\'82\'b5\u19978\'8f\'e3\u12370\'82\'b0\u12414\'82\'dc\u12377\'82\'b7\u12290\'81\'42\uc1 } +\par }
\ No newline at end of file diff --git a/sw/qa/extras/rtfexport/rtfexport4.cxx b/sw/qa/extras/rtfexport/rtfexport4.cxx index fdd8af3ec7d0..26426654d54a 100644 --- a/sw/qa/extras/rtfexport/rtfexport4.cxx +++ b/sw/qa/extras/rtfexport/rtfexport4.cxx @@ -9,6 +9,7 @@ #include <swmodeltestbase.hxx> +#include <com/sun/star/awt/FontSlant.hpp> #include <com/sun/star/table/ShadowFormat.hpp> #include <com/sun/star/text/WritingMode2.hpp> #include <com/sun/star/text/XDocumentIndex.hpp> @@ -272,6 +273,14 @@ DECLARE_RTFEXPORT_TEST(testBtlrFrame, "btlr-frame.odt") CPPUNIT_ASSERT_EQUAL(text::WritingMode2::BT_LR, nActual); } +DECLARE_RTFEXPORT_TEST(testTdf129578_lostBI, "tdf129578_lostBI.rtf") +{ + CPPUNIT_ASSERT_EQUAL(150.f, getProperty<float>(getRun(getParagraph(1), 1), "CharWeightAsian")); + CPPUNIT_ASSERT_EQUAL( + awt::FontSlant_ITALIC, + getProperty<awt::FontSlant>(getRun(getParagraph(2), 1), "CharPostureAsian")); +} + DECLARE_RTFEXPORT_TEST(testTdf129631_lostBorders, "tdf129631_lostBorders.rtf") { uno::Reference<container::XNameAccess> paragraphStyles = getStyles("ParagraphStyles"); diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx index 663ac935047d..fb331f4b265a 100644 --- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx +++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx @@ -1862,13 +1862,13 @@ RTFError RTFDocumentImpl::dispatchToggle(RTFKeyword nKeyword, bool bParam, int n case RTFParserState::RunType::HICH: case RTFParserState::RunType::RTLCH_LTRCH_1: case RTFParserState::RunType::LTRCH_RTLCH_2: - case RTFParserState::RunType::DBCH: nSprm = NS_ooxml::LN_EG_RPrBase_bCs; break; case RTFParserState::RunType::NONE: case RTFParserState::RunType::LOCH: case RTFParserState::RunType::LTRCH_RTLCH_1: case RTFParserState::RunType::RTLCH_LTRCH_2: + case RTFParserState::RunType::DBCH: default: nSprm = NS_ooxml::LN_EG_RPrBase_b; break; @@ -1881,13 +1881,13 @@ RTFError RTFDocumentImpl::dispatchToggle(RTFKeyword nKeyword, bool bParam, int n case RTFParserState::RunType::HICH: case RTFParserState::RunType::RTLCH_LTRCH_1: case RTFParserState::RunType::LTRCH_RTLCH_2: - case RTFParserState::RunType::DBCH: nSprm = NS_ooxml::LN_EG_RPrBase_iCs; break; case RTFParserState::RunType::NONE: case RTFParserState::RunType::LOCH: case RTFParserState::RunType::LTRCH_RTLCH_1: case RTFParserState::RunType::RTLCH_LTRCH_2: + case RTFParserState::RunType::DBCH: default: nSprm = NS_ooxml::LN_EG_RPrBase_i; break; |