GSoC’18: SmartArt Week 4
I’ve learnt a lot this month and have solved issues regarding smartart import.
I started by adding the number of Microsoft Powerpoint 2007 test documents which were unable to load correctly in LibreOffice and pushing them.
Later on, I worked on Snake algorithm and first, I corrected Snake algorithm as it was not able to render the diagrams properly and then implementing the support to the same Direction and Reverse Direction. The algorithm works quite well. Now it displays correct position of child layout nodes along a linear path in two dimensions, with the correct number of rows and columns and aspect ratio, this algorithm is for smartarts like Basic Block List — grouped blocks of information. It also specifies the behaviour of the direction that additional nodes are added to new rows or columns in the snake algorithm.
I then changed my concentration to Line algorithm as it was also incorrectly rendered, I fixed the aspect ratio related problem, earlier it displayed odd height of the children nodes as compared to their width.
I have added the unit test for Line algorithm in that, TestMaxDepth test checks the linear (lin) algorithm such that it arranges child layout nodes along a linear path.
Present Week Work
I’ve added support to autoTxRot parameter in Text algorithm it specifies how text is oriented relative to the shape, according to values: none, upright(default) and gravity.
I’ve changed just a bit in upright value as it rotates the text negative to the rotation of the shape.
For autoTxRot: I’ll be creating a document that shows the various possibilities of the rotation, and a unit test that asserts that they are fine after the patch (and fail without it) — in a follow-up commit.
For Line Algorithm: will be creating a unit test that asserts that the shapes are at the same positions as in PowerPoint.
Test Documents: Adding more test documents to test the features of the shapes.
For Snake Algorithm: Adding unit tests for these changes & also for the revDir and sameDir.
There is a lot of work in improvement like rendering of pyramid shapes. I’ll be fixing more issues in the next month.
P.S. Please read my previous blog for project description and week-wise report.