summaryrefslogtreecommitdiff
path: root/writerfilter
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@suse.cz>2013-05-16 17:27:49 +0200
committerMiklos Vajna <vmiklos@suse.cz>2013-05-16 17:38:07 +0200
commitd0edc4e4c3709a3d0300e0b2b035e10493f583f9 (patch)
tree441fe75398c14bfd8aad99208225ba45b0607389 /writerfilter
parente601660b89768dc01d0ef73ec3e6579d26b30f96 (diff)
bnc#779630 DOCX import: improve w:sdt size guessing
The problem was that when border was enabled (and the importer leaves it unchanged, and it's on by default), there was not enough space for the text. Change-Id: I3ce770eb523389bcf7c5e83d4e76155e2c45de6d
Diffstat (limited to 'writerfilter')
-rw-r--r--writerfilter/source/dmapper/SdtHelper.cxx7
1 files changed, 6 insertions, 1 deletions
diff --git a/writerfilter/source/dmapper/SdtHelper.cxx b/writerfilter/source/dmapper/SdtHelper.cxx
index a1b215b3efaa..35f4d934a885 100644
--- a/writerfilter/source/dmapper/SdtHelper.cxx
+++ b/writerfilter/source/dmapper/SdtHelper.cxx
@@ -53,8 +53,13 @@ awt::Size lcl_getOptimalWidth(StyleSheetTablePtr pStyleSheet, OUString& rDefault
sal_Int32 nWidth = pOut->GetTextWidth(aLongest);
pOut->Pop();
+
+ // Border: see PDFWriterImpl::drawFieldBorder(), border size is font height / 4,
+ // so additional width / height needed is height / 2.
+ sal_Int32 nBorder = nHeight / 2;
+
// Width: space for the text + the square having the dropdown arrow.
- return awt::Size(nWidth + nHeight, nHeight);
+ return awt::Size(nWidth + nBorder + nHeight, nHeight + nBorder);
}
SdtHelper::SdtHelper(DomainMapper_Impl& rDM_Impl):