d656191ec3
DOCX body text can overlap with header/footer, if top/bottom page margin is negative. To support this, convert header/footer text content to textbox anchored to header/footer, if needed. Note: possible improvements: 1) Skip this hack, if the header is small enough to not overlap with the body, calculate only the height of the header at the import time. 2) This hack does not fix the case when the top of the header is under the top of the body. (A problem in DOC import, too.) This could be achieved by repositioning the dummy header to the top, and lower the textbox by the same amount. (This would still not resolve the extreme situation, when the body start from 0 mm (in LibreOffice, header must be at least 1 mm). 3) Import of VertOrientation::BOTTOM property seems to be bad, or at least the footer loses this property after a DOCX round-trip, resulting bad footer position. 4) after a round-trip, the 1 mm height of the dummy header increases to 1 line height. Also the "Autofit height" and "Use dynamic spacing" settings are changed, likely related to their missing DOCX export. Co-authored-by: Tibor Nagy (NISZ) Change-Id: I8319c93c6c5a980878ee9956c8ab2953da60409e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117842 Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org> |
||
---|---|---|
.. | ||
api | ||
complex/indeterminateState | ||
core | ||
extras | ||
inc | ||
python | ||
uibase | ||
uitest | ||
unit | ||
unoapi | ||
README |
You can find different types of Writer tests here, the following directories are available: - core: - filters-test: loads different file types (see SwFiltersTest::testCVEs() for the list of supported filter types), and only makes sure Writer does not crash. To add new tests, you just need to drop in the test files to the relevant directory, no code change is necessary. - uwriter: this test has access to private Writer symbols, add new tests here if you need that. - extras: - see its own README -- executes import and export filters and asserts the UNO model to verify the resulting document is the expected one. - also, any new C++ test that links to libsw (but does not need access to private Writer symbols) should go in this directory, whether using the UNO API or the internal one. - complex: JUnit-based tests using the UNO API - unoapi: JUnit-based test trying to get/set every UNO property, etc.