Slide 1

Slide 1 text

Inconsistencies Fixed in Writer Miklos Vajna 2014­09­03

Slide 2

Slide 2 text

2 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna About Miklos ● From Hungary ● More blurb: http://vmiklos.hu/ ● Google Summer of Code 2010/2011 ● Rewrite of the Writer RTF import/export ● Writer developer since Feb 2012 ● Contractor at Collabora since Sep 2013

Slide 3

Slide 3 text

Inconsistencies Fixed in 4.2

Slide 4

Slide 4 text

4 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna Select all vs. Tables ● Normal vs. table cursor ● Select all ● Fix by selecting the text of the table

Slide 5

Slide 5 text

5 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna Spellcheck vs Redlining ● If have both: what popup to show? ● The spellcheck one was selected ● Now: both

Slide 6

Slide 6 text

6 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna RTF import: group shapes ● Before:

Slide 7

Slide 7 text

7 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna RTF import: group shapes ● After:

Slide 8

Slide 8 text

8 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna DOT export ● DOT: [MS-WORD] template ● Could only read, not write

Slide 9

Slide 9 text

9 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna Favorite: character borders ● Thanks to Tamás Zolnai

Slide 10

Slide 10 text

Inconsistencies Fixed in 4.3

Slide 11

Slide 11 text

11 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna Writer drawingML import/export ● Getting rid of the VML fallback:

Slide 12

Slide 12 text

12 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna Nested comments ● Including all major (DOCX/DOC/RTF) filters:

Slide 13

Slide 13 text

13 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna Relative TextFrame sizes: multiple relations ● Width is 11% – of what? ● Paragraph area: without page margins ● Entire page

Slide 14

Slide 14 text

14 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna Progress bar for all major import filters ● DOCX one was missing, now implemented:

Slide 15

Slide 15 text

15 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna Strict OOXML ● Markus Mohrhard implemented XLSX / PPTX ● The DOCX part is my fault ● During import, now we support: ● ECMA ● OOXML Transitional ● OOXML Strict ● No strict export yet – still needs implementing

Slide 16

Slide 16 text

16 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna OOXML pattern fill: dkVert ● There is no 1:1 OOXML ↔ ODF mapping for pattern fills ● When area is not a solid color or gradient, etc. ● Import map not consistent with export one ● Now fixed: dkVert is not lost on roundtrip

Slide 17

Slide 17 text

17 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna Favorite: long paragraphs ● Thanks to Caolán McNamara for leading this effort ● tools String → gone now, 16bit length limit ● OUString everywhere ● Sounds interesting? ● Editeng limit is still there

Slide 18

Slide 18 text

Inconsistencies Fixed in 4.4

Slide 19

Slide 19 text

19 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna TextBox ● Writer shapes can now have a TextBox: ● Full drawinglayer geometry ● Full Writer complex content

Slide 20

Slide 20 text

20 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna Favorite: .src → .ui ● Another effort lead by Caolán ● Sounds interesting? There are still unconverted docking windows!

Slide 21

Slide 21 text

Recent filter features

Slide 22

Slide 22 text

22 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna DOCX export: wrap polygon ● For Writer pictures ● Import was there for many releases ● Now export as well ● Depends on the drawingML improvements

Slide 23

Slide 23 text

23 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna RTF export: anchored pictures ● RTF picture → implicitly inline ● RTF shapes → can be anchored as well ● Hack: represent wrapped pictures as a “shape with a picture background” ● Implemented in 4.4

Slide 24

Slide 24 text

24 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna DOCX export: wrap polygon ● For Writer pictures ● Import was there for many releases ● Now export as well ● Depends on the drawingML improvements

Slide 25

Slide 25 text

25 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna PPTX import: metadata ● Author / modifier name ● Creation / modification date ● One liner patch…

Slide 26

Slide 26 text

26 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna Writer HTML export: embedded objects ● Use case: HTML export for searchable content ● Can skip images entirely ● Use the HTML export filter for the embedded object as well

Slide 27

Slide 27 text

27 / 27 LibreOffice Conference 2014, Bern | Miklos Vajna Summary ● During the past year, lots of inconsistencies got fixed in Writer ● TextBox ● Selection improvements ● OOXML strict / drawingML ● Nested comments ● Lots of small filter improvements ● Thanks for listening! :-) ● Slides: http://vmiklos.hu/odp