GSoC/2018/StatusReports/DileepSankhla: Difference between revisions

From KDE Community Wiki
< GSoC‎ | 2018‎ | StatusReports
m (Fixed coding period phase one date)
(Added details for the coding period - phase one)
Line 17: Line 17:
During Community Bonding period, I've been in communication with my mentor, discussing various implementation ideas and learning more about the PDF format and the codebase of Okular and Poppler. In the meantime, I have got a KDE developer account, set up a scratch repository to discuss the ideas and share experimental code and explored pertinent bug reports on Bugzilla by taking part in the conversation. As I didn't mention any particular approach for click-to-type typewriter WYSIWYG editing in my GSoC proposal, we had to discuss, experiment and present a couple of ideas to the okular-devel list and will agree upon the community selected one. Further, I set up the working environment and built the project and I'm reading the Qt TextEdit and Poppler Qt5 frontend documentation while consulting with my mentor for the optimal approach to implement the proposed features.
During Community Bonding period, I've been in communication with my mentor, discussing various implementation ideas and learning more about the PDF format and the codebase of Okular and Poppler. In the meantime, I have got a KDE developer account, set up a scratch repository to discuss the ideas and share experimental code and explored pertinent bug reports on Bugzilla by taking part in the conversation. As I didn't mention any particular approach for click-to-type typewriter WYSIWYG editing in my GSoC proposal, we had to discuss, experiment and present a couple of ideas to the okular-devel list and will agree upon the community selected one. Further, I set up the working environment and built the project and I'm reading the Qt TextEdit and Poppler Qt5 frontend documentation while consulting with my mentor for the optimal approach to implement the proposed features.


===Coding Period - Phase one (May 14th to June 2nd)===
===Coding Period - Phase one (May 14th to June 12th)===


To be done.
====Initial Implementation of Typewriter Annotation Tool in Okular====
This phase was devoted to implementing the fully functional typewriter tool that creates the annotation with the transparent background in all the supported document formats and the text input UI in the current implementation is the popup QInputDialog window which is in accordance with the inline note. This is how it works:
 
[[File:Typewriter.gif]]
 
A number of integration tests have also been written and the tasks for this phase are completed as planned. For the next phase, I'm aiming at fixing the minor bugs and implementing font color in Poppler where it should also respect the font family.


== Branch where I'm working ==
== Branch where I'm working ==
Line 35: Line 40:
* [https://dileepsankhla.com/blog/beginning-gsoc-2018 The beginning of GSoC 2018 with KDE]
* [https://dileepsankhla.com/blog/beginning-gsoc-2018 The beginning of GSoC 2018 with KDE]
* [https://dileepsankhla.com/blog/freetext-typewriter-annotation-wysiwyg-implementation-ideas FreeText typewriter annotation WYSIWYG implementation ideas]
* [https://dileepsankhla.com/blog/freetext-typewriter-annotation-wysiwyg-implementation-ideas FreeText typewriter annotation WYSIWYG implementation ideas]
* [https://dileepsankhla.com/blog/gsoc-coding-period-phase-one-may-14th-to-june-12th-initial-implementation-of-typewriter-annotation-tool-in-okular GSoC Coding Period - Phase One (May 14th to June 12th): Initial implementation of typewriter annotation tool in Okular]


== Contact ==
== Contact ==

Revision as of 18:28, 12 June 2018

Implementing the FreeText annotation with FreeTextTypewriter behavior

Okular is a KDE universal document viewer. It allows reviewing and annotating the PDF documents and supports various text and graphic annotations. FreeText is one of them but the FreeTextTypewriter behavior (WYSIWYG live editing) is still missing to write directly on PDF page. This project focus on implementing this missing FreeText annotation feature and adding a new ‘Typewriter’ entry in the annotation toolbar.

Mentor: Tobias Deiminger

Project Goals

  • Add a new typewriter icon and settings dialogue to the annotation toolbar.
  • Setting annotation background to transparent, and /IT set to FreeTextTypewriter.
  • Re-design text input UI and implement a community selected WYSIWYG approach to write directly on PDF page.

Work Report

Community Bonding Period

During Community Bonding period, I've been in communication with my mentor, discussing various implementation ideas and learning more about the PDF format and the codebase of Okular and Poppler. In the meantime, I have got a KDE developer account, set up a scratch repository to discuss the ideas and share experimental code and explored pertinent bug reports on Bugzilla by taking part in the conversation. As I didn't mention any particular approach for click-to-type typewriter WYSIWYG editing in my GSoC proposal, we had to discuss, experiment and present a couple of ideas to the okular-devel list and will agree upon the community selected one. Further, I set up the working environment and built the project and I'm reading the Qt TextEdit and Poppler Qt5 frontend documentation while consulting with my mentor for the optimal approach to implement the proposed features.

Coding Period - Phase one (May 14th to June 12th)

Initial Implementation of Typewriter Annotation Tool in Okular

This phase was devoted to implementing the fully functional typewriter tool that creates the annotation with the transparent background in all the supported document formats and the text input UI in the current implementation is the popup QInputDialog window which is in accordance with the inline note. This is how it works:

A number of integration tests have also been written and the tasks for this phase are completed as planned. For the next phase, I'm aiming at fixing the minor bugs and implementing font color in Poppler where it should also respect the font family.

Branch where I'm working

Important Links

Proposal Link

Blog Posts

Contact

Email: [email protected]

IRC: robstat7

Github: robstat7