in msword the hard-break between image and caption has a width
while for us it doesn't, make it invisible to give it zero width in both implementations to head off interoperability misery Change-Id: I0944006817944b20ef35502c8588357e7ee54810
This commit is contained in:
@@ -19,6 +19,7 @@
|
|||||||
|
|
||||||
#include <svx/svdobj.hxx>
|
#include <svx/svdobj.hxx>
|
||||||
#include <comphelper/lok.hxx>
|
#include <comphelper/lok.hxx>
|
||||||
|
#include <editeng/charhiddenitem.hxx>
|
||||||
#include <init.hxx>
|
#include <init.hxx>
|
||||||
#include <fesh.hxx>
|
#include <fesh.hxx>
|
||||||
#include <pagefrm.hxx>
|
#include <pagefrm.hxx>
|
||||||
@@ -502,8 +503,15 @@ void SwFEShell::InsertLabel( const SwLabelType eType, const OUString &rText, con
|
|||||||
}
|
}
|
||||||
//put a hard-break after the graphic to keep it separated
|
//put a hard-break after the graphic to keep it separated
|
||||||
//from the caption text if the outer frame is resized
|
//from the caption text if the outer frame is resized
|
||||||
SwIndex aIdx(pTextNode, bBefore ? nInsertPos : 1);
|
const sal_Int32 nIndex = bBefore ? nInsertPos : 1;
|
||||||
|
SwIndex aIdx(pTextNode, nIndex);
|
||||||
pTextNode->InsertText("\n", aIdx);
|
pTextNode->InsertText("\n", aIdx);
|
||||||
|
//set the hard-break to be hidden, otherwise it has
|
||||||
|
//non-zero width in word and so hard-break flows on
|
||||||
|
//the next line, pushing the caption text out of
|
||||||
|
//the frame making the caption apparently disappear
|
||||||
|
SvxCharHiddenItem aHidden(true, RES_CHRATR_HIDDEN);
|
||||||
|
pTextNode->InsertItem(aHidden, nIndex, nIndex + 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user