sw: text formatting: add test for per-line paragraph properties like Word
Test for commit 0849ddd0b1
Change-Id: Ia26286593b3e7f21799a86b1762ab30421941fad
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/192957
Reviewed-by: Michael Stahl <michael.stahl@collabora.com>
Tested-by: Jenkins
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
{\rtf1\adeflang1025\ansi\ansicpg1252\uc1\adeff0\deff0\stshfdbch0\stshfloch31506\stshfhich31506\stshfbi31506\deflang2057\deflangfe1028\themelang3079\themelangfe0\themelangcs0{\fonttbl{\f0\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman{\*\falt Arial};}
|
||||
{\f1\fbidi \fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial{\*\falt Arial};}
|
||||
{\fdbminor\f31505\fbidi \fnil\fcharset136\fprq2{\*\panose 02010601000101010101}PMingLiU{\*\falt Arial Unicode MS};}
|
||||
{\fhiminor\f31506\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}
|
||||
}
|
||||
{\*\defchp \f31506\fs22\lang3079\langfe1033\langnp3079\langfenp1033 }{\*\defpap \ql \li0\ri0\sa200\sl276\slmult1
|
||||
\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 }\noqfpromote {\stylesheet{\ql \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0
|
||||
\f1\fs23\lang3079\langfe1033\cgrid\langnp3079\langfenp1033 \snext0 \sqformat \spriority0 Normal;}{\*\cs10 \additive \sunhideused \spriority1 Default Paragraph Font;}{
|
||||
\s15\ql \li0\ri0\widctlpar\tqc\tx4536\tqr\tx9072\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \f1\fs23\lang3079\langfe1033\cgrid\langnp3079\langfenp1033
|
||||
\sbasedon0 \snext15 \slink17 \sunhideused header;}{\*\cs17 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \sbasedon10 \slink15 \slocked Header Char;}}
|
||||
\paperw11906\paperh16838\margl1417\margr1417\margt1417\margb1134\gutter0\ltrsect
|
||||
\deftab708\widowctrl\ftnbj\aenddoc\hyphhotz425\trackmoves0\trackformatting1\donotembedsysfont1\relyonvml0\donotembedlingdata0\grfdocevents0\validatexml1\showplaceholdtext0\ignoremixedcontent0\saveinvalidxml0
|
||||
\showxmlerrors1\noxlattoyen\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\formshade\horzdoc\dgmargin\dghspace180\dgvspace180\dghorigin1417\dgvorigin1417\dghshow1\dgvshow1
|
||||
\jexpand\viewkind1\viewscale100\pgbrdrhead\pgbrdrfoot\splytwnine\ftnlytwnine\htmautsp\nolnhtadjtbl\useltbaln\alntblind\lytcalctblwd\lyttblrtgr\lnbrkrule\nobrkwrptbl\snaptogridincell\allowfieldendsel\wrppunct
|
||||
\asianbrkrule\rsidroot6514785\newtblstyruls\nogrowautofit\usenormstyforlist\noindnmbrts\felnbrelev\nocxsptable\indrlsweleven\noafcnsttbl\afelev\utinl\hwelev\spltpgpar\notcvasp\notbrkcnstfrctbl\notvatxbx\krnprsnet\cachedcolbal \nouicompat \fet0
|
||||
{\*\wgrffmtfilter 2450}\nofeaturethrottle1\ilfomacatclnup0
|
||||
\ltrpar \sectd \ltrsect\pgnrestart\linex0\headery708\footery708\colsx708\endnhere\sectlinegrid360\sectdefaultcl\sftnbj {\headerl \ltrpar \pard\plain \ltrpar\s15\ql \li0\ri0\widctlpar
|
||||
\tqc\tx4536\tqr\tx9072\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \f1\fs23\lang3079\langfe1033\cgrid\langnp3079\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0
|
||||
\par }}{\headerr \ltrpar \pard\plain \ltrpar\s15\qc \li0\ri0\widctlpar\tqc\tx4536\tqr\tx9072\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0
|
||||
\f1\fs23\lang3079\langfe1033\cgrid\langnp3079\langfenp1033 {\rtlch\fcs1 \af0\afs16 \ltrch\fcs0 \v\fs16 \line \line \line
|
||||
\par \line \line \line \line \line \line \line
|
||||
\par }\pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \f1\fs23\lang3079\langfe1033\cgrid\langnp3079\langfenp1033 {\rtlch\fcs1 \af0\afs16 \ltrch\fcs0
|
||||
\v\fs16 \line \line \line \line \line }{\rtlch\fcs1 \ab\af0\afs12 \ltrch\fcs0 \v\fs16 \line }{\rtlch\fcs1 \af0\afs16 \ltrch\fcs0 \v\fs16 \line
|
||||
\par \line
|
||||
\par }{\rtlch\fcs1 \af1 \ltrch\fcs0 \v\f1\fs16
|
||||
\par }\pard \ltrpar\qr \li1418\ri0\sa1600\sl480\slmult1\widctlpar\wrapdefault\faauto\adjustright\rin0\lin1418\itap0 {\rtlch\fcs1 \af1 \ltrch\fcs0 \f1\fs16\lang2057\langfe1033\langnp2057 a\line n\line v\tab \line d
|
||||
}{\rtlch\fcs1 \af1 \ltrch\fcs0 \v\f1\fs16\lang2057\langfe1033\langnp2057
|
||||
\par }\pard \ltrpar\ql \li0\ri0\sa200\sl276\slmult1\keepn\widctlpar\tx2835\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\rtlch\fcs1 \af1 \ltrch\fcs0 \f1\fs16\lang2057\langfe1033\langnp2057 a
|
||||
\tab c\line x\tab y
|
||||
\par }\pard \ltrpar\ql \li0\ri0\sa200\sl276\slmult1\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\rtlch\fcs1 \af1 \ltrch\fcs0 \f1\fs16\lang2057\langfe1033\langnp2057
|
||||
\par }\pard \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\adjustright\rin0\lin0\itap0 {\rtlch\fcs1 \af1 \ltrch\fcs0 \v\f1\fs16\lang2057\langfe1033\langnp2057
|
||||
\par }\pard \ltrpar\ql \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\rtlch\fcs1 \ab\af0\afs12 \ltrch\fcs0 \v\fs16\lang2057\langfe1033\langnp2057
|
||||
\par }\pard\plain \ltrpar\s15\qc \li0\ri0\widctlpar\tqc\tx4536\tqr\tx9072\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \f1\fs23\lang3079\langfe1033\cgrid\langnp3079\langfenp1033 {
|
||||
\rtlch\fcs1 \af0\afs16 \ltrch\fcs0 \v\fs16\lang2057\langfe1033\langnp2057
|
||||
\par }\pard\plain \ltrpar\qc \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \f1\fs23\lang3079\langfe1033\cgrid\langnp3079\langfenp1033 {\rtlch\fcs1 \af0
|
||||
\ltrch\fcs0 [text] }{\rtlch\fcs1 \af0 \ltrch\fcs0 \lang2057\langfe1033\langnp2057
|
||||
\par }}
|
||||
\pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\adjustright\rin0\lin0\itap0
|
||||
\rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \f1\fs23\lang3079\langfe1033\cgrid\langnp3079\langfenp1033 {\rtlch\fcs1 \af0\afs28 \ltrch\fcs0 \b\fs28\lang1031\langfe1033\loch\af0\hich\af0\dbch\af31505\langnp1031
|
||||
\hich\af0\dbch\af31505\loch\f0 Xxxxxxxxxxxxxxxx xxx xxxx}{\rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang2057\langfe1028\loch\af0\hich\af0\dbch\af31505\langnp2057\langfenp1028
|
||||
\par }
|
||||
}
|
||||
@@ -496,6 +496,50 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, testTdf162725)
|
||||
assertXPath(pXmlDoc, "/root/page/body/txt[1]/SwParaPortion/SwLineLayout[1]/SwGluePortion");
|
||||
}
|
||||
|
||||
CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, testHiddenParagraphMarkPerLineProperties)
|
||||
{
|
||||
createSwDoc("min-wtf.rtf");
|
||||
|
||||
// ensure paragraphs are merged by hidden formatting
|
||||
SwWrtShell* pWrtShell = getSwDocShell()->GetWrtShell();
|
||||
SwViewOption aViewOptions(*pWrtShell->GetViewOptions());
|
||||
aViewOptions.SetViewMetaChars(false);
|
||||
pWrtShell->ApplyViewOptions(aViewOptions);
|
||||
|
||||
xmlDocUniquePtr pXmlDoc = parseLayoutDump();
|
||||
|
||||
assertXPath(pXmlDoc, "/root/page[1]/header/txt", 3);
|
||||
assertXPath(pXmlDoc, "/root/page[1]/header/txt[1]/SwParaPortion/SwLineLayout[1]", "height",
|
||||
u"184");
|
||||
assertXPath(pXmlDoc, "/root/page[1]/header/txt[1]/SwParaPortion/SwLineLayout[2]", "height",
|
||||
u"184");
|
||||
assertXPath(pXmlDoc, "/root/page[1]/header/txt[1]/SwParaPortion/SwLineLayout[3]", "height",
|
||||
u"184");
|
||||
assertXPath(pXmlDoc, "/root/page[1]/header/txt[1]/SwParaPortion/SwLineLayout[4]", "height",
|
||||
u"184");
|
||||
assertXPath(pXmlDoc, "/root/page[1]/header/txt[1]/SwParaPortion/SwLineLayout[5]", "height",
|
||||
u"184");
|
||||
assertXPath(pXmlDoc, "/root/page[1]/header/txt[1]/SwParaPortion/SwLineLayout", 5);
|
||||
// the problem was that this was 1656 due to using wrong line spacing for last line
|
||||
assertXPath(pXmlDoc, "/root/page[1]/header/txt[1]/infos/bounds", "height", u"1499");
|
||||
assertXPath(pXmlDoc, "/root/page[1]/header/txt[1]/SwParaPortion/SwLineLayout[4]/SwFixPortion",
|
||||
"type", u"PortionType::TabLeft");
|
||||
assertXPath(pXmlDoc, "/root/page[1]/header/txt[1]/SwParaPortion/SwLineLayout[4]/SwFixPortion",
|
||||
"width", u"532");
|
||||
assertXPath(pXmlDoc, "/root/page[1]/header/txt[1]/SwParaPortion/SwLineLayout[5]/SwFixPortion",
|
||||
"type", u"PortionType::TabLeft");
|
||||
// the problem was that this was 626 (same tab position as previous line)
|
||||
assertXPath(pXmlDoc, "/root/page[1]/header/txt[1]/SwParaPortion/SwLineLayout[5]/SwFixPortion",
|
||||
"width", u"2755");
|
||||
assertXPath(pXmlDoc, "/root/page[1]/header/txt[2]/SwParaPortion/SwLineLayout", 0);
|
||||
// this one was also wrong (1968) due to wrong spacing-below
|
||||
assertXPath(pXmlDoc, "/root/page[1]/header/txt[2]/infos/bounds", "height", u"411");
|
||||
assertXPath(pXmlDoc, "/root/page[1]/header/txt[3]/SwParaPortion/SwLineLayout[1]", "height",
|
||||
u"265");
|
||||
assertXPath(pXmlDoc, "/root/page[1]/header/txt[3]/SwParaPortion/SwLineLayout", 1);
|
||||
assertXPath(pXmlDoc, "/root/page[1]/header/txt[3]/infos/bounds", "height", u"492");
|
||||
}
|
||||
|
||||
CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, testTdf161810)
|
||||
{
|
||||
createSwDoc("tdf161810.fodt");
|
||||
|
||||
Reference in New Issue
Block a user