GSoC 2009 ODT Import Plugin by atmb4u: Difference between revisions

From Scribus Wiki
Jump to navigation Jump to search
(New page: '''Proposal''' Abstract Developed as a part of OpenOffice.org 2 and now a part of an ISO standard supported by Google Docs, the Open Document Text (ODT) format based on the former OpenO...)
 
No edit summary
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''Proposal'''
='''Proposal'''=




Abstract
 
== Abstract ==


Developed as a part of OpenOffice.org 2 and now a part of an ISO standard supported by Google Docs, the Open Document Text (ODT) format based on the former OpenOffice.org format SXW is the most widely used open word-processing file format. This project aims to implement full import of ODT/SXW files into Scribus. This goal will be achieved through implementation of an ODT/SXW file import plug-in. ODT/SXW file text export from Scribus will be taken into consideration during the import plug-in design phase.
Developed as a part of OpenOffice.org 2 and now a part of an ISO standard supported by Google Docs, the Open Document Text (ODT) format based on the former OpenOffice.org format SXW is the most widely used open word-processing file format. This project aims to implement full import of ODT/SXW files into Scribus. This goal will be achieved through implementation of an ODT/SXW file import plug-in. ODT/SXW file text export from Scribus will be taken into consideration during the import plug-in design phase.


Motivation
 
== Motivation ==
 


The need for the rich word processing format import capabilities in desktop publishing software is undisputed. When it comes to the most widely used format, the problem becomes crucial. ODT and SXW are very popular universal open word processing formats thus it is essential that they can be imported natively into Scribus. Scribus makes desktop publishing with free and open software possible and import of ODT/SXW files directly into the scribus workspace will only make it work better. As with all DTP software, Scribus is rarely used to write text. Instead, it is used for layout purposes while the text is prepared in a word processor. Therefore, as I found during the time I spent using Scribus, it is necessary to import documents from a word processor. This project will produce wide-reaching usability improvements for most Scribus users. I choose SXW along with ODT, since these file formats are very similar. Moreover, I'd appreciate working with an open source project like Scribus and the open source community.
The need for the rich word processing format import capabilities in desktop publishing software is undisputed. When it comes to the most widely used format, the problem becomes crucial. ODT and SXW are very popular universal open word processing formats thus it is essential that they can be imported natively into Scribus. Scribus makes desktop publishing with free and open software possible and import of ODT/SXW files directly into the scribus workspace will only make it work better. As with all DTP software, Scribus is rarely used to write text. Instead, it is used for layout purposes while the text is prepared in a word processor. Therefore, as I found during the time I spent using Scribus, it is necessary to import documents from a word processor. This project will produce wide-reaching usability improvements for most Scribus users. I choose SXW along with ODT, since these file formats are very similar. Moreover, I'd appreciate working with an open source project like Scribus and the open source community.


Objectives
 
== Objectives ==
 


The project's objectives are to produce:
The project's objectives are to produce:
ODT/SXW import plug-in module and, if time permits, ODT export for Scribus via plug-in.
 
In the import, focus on text, images, formatting and margins.*
- ODT/SXW import plug-in module and, if time permits, ODT export for Scribus via plug-in.
Document the plug-in.
 
- In the import, focus on text, images, formatting and margins.*
 
- Document the plug-in.
 
 
 
== Challenges ==




Challenges
The major challenges that will be faced during the implementation of this project are
The major challenges that will be faced during the implementation of this project are
 Reading ODT/SXW files.
 Importing basic and common items like text, graphics, page setup, margins, page numbering, static headers and footers, paragraph and character styles and document meta-data as supported by Scribus.
 Opening an ODT/SXW in the workspace by converting it to a Scribus document.


The Plan
- Reading ODT/SXW files.
 Decode (read the XML) the ODT/SXW files from the compressed form and save them in a temporary storage space.
 Read bitmap, vector and text contents from ODT/SXW.
 Styles, page layout and margins will be read from the source file and imported into the Scribus document.
 Convert the entire ODT/SXW file into a Scribus document.
 Positioning the objects has to be correctly determined, but this will have lower priority as there is no anchor support in Scribus yet.


- Importing basic and common items like text, graphics, page setup, margins, page numbering, static headers and footers, paragraph and character styles and document meta-data as supported by Scribus.


Project duration consists of
- Opening an ODT/SXW in the workspace by converting it to a Scribus document.




Timeline


== The Plan ==


- Decode (read the XML) the ODT/SXW files from the compressed form and save them in a temporary storage space.
- Read bitmap, vector and text contents from ODT/SXW.
- Styles, page layout and margins will be read from the source file and imported into the Scribus document.
- Convert the entire ODT/SXW file into a Scribus document.
- Positioning the objects has to be correctly determined, but this will have lower priority as there is no anchor support in Scribus yet.
'''Each Project time line division consists of first few days of research, discussion in the Scribus community followed by implementation.'''
== Timeline ==
From June 10 to October 31
'''June 10 –June 15''': Understand the XML formatting of ODT and SXW files. Read the documentation of Scribus, especially learn as much as possible about working with Scribus codebase. Communicate with mentors and clear basic doubts about the project. Design the structure of the plug-in, the scope of import and discuss its structure on IRC and mailing lists.
'''June 15-June 25''': Convert existing ODT text import as a part of proposed plug-in.
'''June 25-July 5 ''': Study about the scope of import of image files in ODT files
'''July 5 -July 30''': -UNAVIALABLE-
'''July 31-August 31''': Import image files from ODT/SXW files into the Scribus document.
'''September 1- September 5''' :Study about Text Styles and text formating(bold,italics,size) in ODT as well as Scribus.
'''September 6- September 25''':Code for text formating in ODT files import to Scribus.
'''September 25-September 30''':Study about Margins, Paragraphs and other page formating in ODT.
'''October 1-October 20''' :Code for Importing page formating to Scribus.
'''October 20-October 25''':Complete the coding and sync. the entire project.
'''October 26-October 31''':Complete the documentation for future developments in the plug-in.


April 28-May 08: Understand the XML formatting of ODT and SXW files. Read the documentation of Scribus completely, especially learn as much as possible about working with Scribus codebase. Communicate with mentors and clear basic doubts about the project.
June 1 – June 10: Design the structure of the plug-in, the scope of import and minimum support required other than proposed and discuss its structure on IRC and mailing lists.
July 5- July 30- //-UNAVIALABLE-
May 18- May 20: Open the ODT/SXW files using a newly created plug-in from Scribus. Extract the content to a temporary folder for further operations.
May 21- May 22: Testing and debugging phase I.
May 23- June 28: Import Different components like images, text etc ... from the ODT/SXW file.
June 29-July 10: Import different styles like font styles and paragraph styles from ODT/SXW file.
July 11-July 24: Convert the entire file into a Scribus document.
July 25 -July 30: Testing and debugging phase II.
July 31 - August 11: Complete the coding and sync the entire project.
August 12-August 17: Complete the documentation


Note: Timeline doesn't include the expected everyday interaction with my mentor.
Note: Timeline doesn't include the expected everyday interaction with my mentor.


Project Outcomes
 
== Project Outcomes ==
 
The expected outcomes of this project:
The expected outcomes of this project:
 ODT/SXW files can be imported with basic contents and the breadth of the import support will be expanded as time allows with a minimum guarantee for basic and common items like text, graphics, page setup, margins, page numbering, paragraph and character styles in ODT/SXW files to be imported into Scribus. This will not be a complete ODT/SXW importer, which would be too large to be fit in the limited time frame of GSoC 2009.
 Proper documentation acceptable to the Scribus maintainers accompanies the code.


About Me
- ODT/SXW files can be imported with basic contents and the breadth of the import support will be expanded as time allows with a minimum guarantee for basic and common items like text, graphics, page setup, margins, page numbering, paragraph and character styles in ODT/SXW files to be imported into Scribus. This will not be a complete ODT/SXW importer, which would be too large to be fit in the limited time frame.
Name: Anoop Thomas Mathew
 
University: Cochin University of Science and Technology(CUSAT),Kerala,INDIA
- Proper documentation acceptable to the Scribus maintainers accompanies the code.
IRC Nick: atmb4u
Email ID: atmb4u@gmail.com
Location: Kerala, India
Timezone : GMT + 5:30


I am Anoop Thomas Mathew, and am currently studying for B. Tech degree in Computer Science and Engineering, at College of Engineering, Chengannur, Kerala, INDIA.
I have been using GNU/Linux for the past 5 years, starting off with RHEL 4.
I have good knowledge in C, C++, Java and Python, and I've been into coding in them for the past 5 years. I started learning programming when I was on 3rd grade with LOGO, then BASIC (5th), C (6th), C++ (9th) and python (11th).
I am a member of the FSF since 3 years and have fixed a few bugs in the VIM text editor. I am in the VIM development mailing list for more than one year.


Notes
Notes
*Currently, focus 4 major imports as the short term project and elaborate the plug-in later on for complete import.
*Currently, focus 4 major imports as the short term project and elaborate the plug-in later on for complete import.

Latest revision as of 18:08, 27 May 2009

Proposal

Abstract

Developed as a part of OpenOffice.org 2 and now a part of an ISO standard supported by Google Docs, the Open Document Text (ODT) format based on the former OpenOffice.org format SXW is the most widely used open word-processing file format. This project aims to implement full import of ODT/SXW files into Scribus. This goal will be achieved through implementation of an ODT/SXW file import plug-in. ODT/SXW file text export from Scribus will be taken into consideration during the import plug-in design phase.


Motivation

The need for the rich word processing format import capabilities in desktop publishing software is undisputed. When it comes to the most widely used format, the problem becomes crucial. ODT and SXW are very popular universal open word processing formats thus it is essential that they can be imported natively into Scribus. Scribus makes desktop publishing with free and open software possible and import of ODT/SXW files directly into the scribus workspace will only make it work better. As with all DTP software, Scribus is rarely used to write text. Instead, it is used for layout purposes while the text is prepared in a word processor. Therefore, as I found during the time I spent using Scribus, it is necessary to import documents from a word processor. This project will produce wide-reaching usability improvements for most Scribus users. I choose SXW along with ODT, since these file formats are very similar. Moreover, I'd appreciate working with an open source project like Scribus and the open source community.


Objectives

The project's objectives are to produce:

- ODT/SXW import plug-in module and, if time permits, ODT export for Scribus via plug-in.

- In the import, focus on text, images, formatting and margins.*

- Document the plug-in.


Challenges

The major challenges that will be faced during the implementation of this project are

- Reading ODT/SXW files.

- Importing basic and common items like text, graphics, page setup, margins, page numbering, static headers and footers, paragraph and character styles and document meta-data as supported by Scribus.

- Opening an ODT/SXW in the workspace by converting it to a Scribus document.


The Plan

- Decode (read the XML) the ODT/SXW files from the compressed form and save them in a temporary storage space.

- Read bitmap, vector and text contents from ODT/SXW.

- Styles, page layout and margins will be read from the source file and imported into the Scribus document.

- Convert the entire ODT/SXW file into a Scribus document.

- Positioning the objects has to be correctly determined, but this will have lower priority as there is no anchor support in Scribus yet.

Each Project time line division consists of first few days of research, discussion in the Scribus community followed by implementation.


Timeline

From June 10 to October 31


June 10 –June 15: Understand the XML formatting of ODT and SXW files. Read the documentation of Scribus, especially learn as much as possible about working with Scribus codebase. Communicate with mentors and clear basic doubts about the project. Design the structure of the plug-in, the scope of import and discuss its structure on IRC and mailing lists.

June 15-June 25: Convert existing ODT text import as a part of proposed plug-in.

June 25-July 5 : Study about the scope of import of image files in ODT files

July 5 -July 30: -UNAVIALABLE-

July 31-August 31: Import image files from ODT/SXW files into the Scribus document.

September 1- September 5 :Study about Text Styles and text formating(bold,italics,size) in ODT as well as Scribus.

September 6- September 25:Code for text formating in ODT files import to Scribus.

September 25-September 30:Study about Margins, Paragraphs and other page formating in ODT.

October 1-October 20 :Code for Importing page formating to Scribus.

October 20-October 25:Complete the coding and sync. the entire project.

October 26-October 31:Complete the documentation for future developments in the plug-in.


Note: Timeline doesn't include the expected everyday interaction with my mentor.


Project Outcomes

The expected outcomes of this project:

- ODT/SXW files can be imported with basic contents and the breadth of the import support will be expanded as time allows with a minimum guarantee for basic and common items like text, graphics, page setup, margins, page numbering, paragraph and character styles in ODT/SXW files to be imported into Scribus. This will not be a complete ODT/SXW importer, which would be too large to be fit in the limited time frame.

- Proper documentation acceptable to the Scribus maintainers accompanies the code.


Notes

  • Currently, focus 4 major imports as the short term project and elaborate the plug-in later on for complete import.