GSoC 2009 Better Masterpages by dhan0: Difference between revisions

From Scribus Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
(22 intermediate revisions by 3 users not shown)
Line 1: Line 1:
                      '''BETTER MASTERPAGES FOR SCRIBUS'''
[[Category:GSOC]] [[Category:GSOC 2009]] {{Archive}}
'''ABSTRACT'''
'''ABSTRACT'''
::Scribus is the only professional-grade Open Source Desktop Publishing Software which supports many professional publishing features. Masterpages form an important integrated part of Scribus. Presently editing of masterpages is not very flexible and its not possible to edit the masterpage features on a normal page as and when required, which is a major drawback. This project aims to incorporate options in Scribus for having better masterpages.
::Scribus is the only professional-grade Open Source Desktop Publishing Software that supports many professional publishing features. Master pages are an important part of DTP. Presently, editing of master pages is not very flexible. It's also not possible to edit the master page features on a normal page, which is a major drawback for many users. This project aims to incorporate new functionality into Scribus that will to enhance the editing of master pages.


'''MOTIVATION'''
'''MOTIVATION'''
::Scribus makes desktop publishing possible with free and open software and masterpages form an important part of any Scribus document. Users may want to change only some features of the masterpage in the current page without changing the actual masterpage or creating a new one, which is not only an unattractive prospect but also time consuming. Completion of this project enable users to handle masterpages and the related efficiently with ease and flexibility which will be widely accepted in the desktop publishing world.
::Scribus makes desktop publishing with free and open software possible. Master pages are an important professional requirement. Users may want to change some features of the master page in the current normal page without changing the actual master page or creating a new one as is currently required. The current way to edit master pages is cumbersome and time consuming. The completion of this project will enable users to handle master pages and related operations with ease and flexibility, which will be widely appreciated in the desktop publishing world.


'''PROJECT'''  
'''PROJECT'''  
::The project aims at incorporating the following features in Scribus  
::The project aims at incorporating the following features into Scribus  


1. Options for Editing Masterpages efficiently


:For this purpose, there is a listing of the masterpage(s) used in the current page (or the set of pages in the present work), as the case maybe. It also includes an option to edit the objects in the masterpage applied on the current page as and when required and also an option to revert back to the original masterpage whenever needed. To achieve this there should be a dialogue box, which would appear on clicking on the current-applied masterpage one wishes to edit, which will be containing the objects on the masterpage with options to edit/remove them temporarily and apply it to the current page without modifying the actual masterpage.  
1. Options for editing master page object occurrences on a regular page
*This task provides options for the user to
:- move or resize occurrences
:- change the style of occurrences
:- remove occurrences from a regular page
without modifying the master page itself. Also, it allows a user to revert occurrences to how they look on the master page with options to retain content, style, size and position if necessary.
An alternative approach might be to allow direct access to master page items via modifier keys.


2. Masterpage Listing
2. Quick Access to Master pages


:Listing the available masterpages under the Page option in the menu bar so that user can easily select the masterpage of his/her choice easily
*A quick access option ''''Master Page'''' to be provided in the status bar which would provide access to the master page of the currently selected page. All the master page related operations may be made available here.


3. Preview of Masterpage


:Incorporating a 'preview' option in the "'''Apply Master Page'''" dialogue box which appears on doing '''Page -> Apply Master Page''' which would give the preview of the current page on applying a selected masterpage or of the masterpage that one tries to apply on it.  
3. Master page Listing
 
*Listing the available master pages under the Page list in the status bar, so that users could easily select the master page of their choice, edit it if needed and apply it to the current page.
 
4. Preview of a Master page
 
*Adding a "preview" option to the "'''Apply Master Page'''" dialog box, which appears on bringing up '''Page -> Apply Master Page''', which would provide a thumbnail preview of the selected master page or of the master page that one tries to apply to the current page.  


4. Quick Access to Master pages


:A quick access option ''''Master Page'''' to be provided in the status bar and all the masterpage related operations to be listed under the same.


'''DELIVERABLES'''  
'''DELIVERABLES'''  


:1. Options for efficient masterpage editing of the current page.
# Options for efficient editing of items on a master page of the current page.
:2. Masterpage Listing and Preview for better masterpage selection.
# Master page Listing and Preview for better master page selection.
:3. Quick access option ''''Master Page'''' to list all masterpage related operations under the same.
# Quick access option ''''Master Page'''' to list all master page related operations under the Page list in the status bar.
# Documentation


'''TIMELINE'''  
'''TIMELINE'''  


:Upto May 23 ,2009      -  Familiarize completely with Scribus source code and get clarifications if any and refining the ideas proposed.  
:Up to May 23, 2009      -  Getting familiar with Scribus source code and getting clarifications and refinements for the proposed ideas.  
:May 23  - June 20,2009 -  Implementing first part of the project.  
:May 23  - June 10, 2009 -  Implementing the first part of the project.  
:June 20 - June 23,2009 -  Discussing with mentor about the same and fix bugs, if any.
:June 10 - June 13, 2009 -  Discussions with mentor about the first part and fixing bugs.
:June 23 - July 13,2009 -  Implementing second and third part of project.  
:June 13 - July 1, 2009 -  Implementing second and third parts of project.  
:July 13 - July 15,2009 -  Discussing with mentor about the same and fix bugs, if any.  
:July 1 - July 3, 2009 -  Discussions with mentor about the latter two parts and fixing bugs.  
:July 15 - Aug 1,2009  -  Last part of project.  
:July 3 - Aug 1, 2009  -  Implementing the last part of the project.  
:Aug  1  - Aug 3,2009  -  Discussing with mentor and fix bugs, if any.
:Aug  1  - Aug 3, 2009  -  Discussions with mentor and fixing bugs.
:Aug  4  - Aug 14,2009  -  Final review of code and documentation.
:Aug  4  - Aug 14, 2009  -  Final review of code and documentation.


'''ABOUT ME'''
'''ABOUT ME'''


:Name  : Dhanashree N P <dhan0110@gmail.com>
:First Name  : Dhanashree
:IRC nick : dhan0
:Name        : Nellayi Prasad Dhanashree
:Location : Kerala, India  
:Email Id    : dhan0110@gmail.com
:Timezone : GMT+5.30
:IRC nick   : dhan0
:blog : csianthoughts.wordpress.com
:Location   : Kerala, India  
:Timezone   : GMT + 5:30
:blog URL    : csianthoughts.wordpress.com


::I am Dhanashree N P , a second year (fourth semester) student of B.Tech Computer Science and Engineeering at the Government Engineering College,Thrissur. I have been coding in C++ for the last 4 years and C for the 2 years. I know basics of Python and SQL.And I have started learning Qt. I have also started reading the source code of Scribus.
::I am Dhanashree N P , a second year (fourth semester) student of B.Tech Computer Science and Engineering at the Government Engineering College, Thrissur. I have been coding in C++ for the last 4 years and C for the 2 years. I know basics of Python and SQL, and I have started learning Qt. I have also started reading the source code of Scribus.
::I have done coding in C++ as a part of academics for project in the school. I am a member of Free Software Users Group, Thrissur and had used Scribus for designing a 3-fold brochure for a seminar conducted by the group.I haven't yet involved in open source development projects so far and I am looking forward to do that with the Scribus as a student of GSoC 2009.
::I have done coding in C++ as a part of academic projects for my school. I am a member of Free Software Users Group, Thrissur, and have already used Scribus for designing a 3-fold brochure for a seminar conducted by the group.I haven't been involved in any Open Source development projects so far, but I am looking forward to do that as a student of GSoC 2009 with Scribus.

Latest revision as of 18:08, 5 January 2011

Archive icon.png
This article is ARCHIVED. It is a part of the Scribus Community's history and is kept here for reference and as a representation of the contributed efforts. It is protected from editing, but its source can be copied.

ABSTRACT

Scribus is the only professional-grade Open Source Desktop Publishing Software that supports many professional publishing features. Master pages are an important part of DTP. Presently, editing of master pages is not very flexible. It's also not possible to edit the master page features on a normal page, which is a major drawback for many users. This project aims to incorporate new functionality into Scribus that will to enhance the editing of master pages.

MOTIVATION

Scribus makes desktop publishing with free and open software possible. Master pages are an important professional requirement. Users may want to change some features of the master page in the current normal page without changing the actual master page or creating a new one as is currently required. The current way to edit master pages is cumbersome and time consuming. The completion of this project will enable users to handle master pages and related operations with ease and flexibility, which will be widely appreciated in the desktop publishing world.

PROJECT

The project aims at incorporating the following features into Scribus


1. Options for editing master page object occurrences on a regular page

  • This task provides options for the user to
- move or resize occurrences
- change the style of occurrences
- remove occurrences from a regular page

without modifying the master page itself. Also, it allows a user to revert occurrences to how they look on the master page with options to retain content, style, size and position if necessary. An alternative approach might be to allow direct access to master page items via modifier keys.


2. Quick Access to Master pages

  • A quick access option 'Master Page' to be provided in the status bar which would provide access to the master page of the currently selected page. All the master page related operations may be made available here.


3. Master page Listing

  • Listing the available master pages under the Page list in the status bar, so that users could easily select the master page of their choice, edit it if needed and apply it to the current page.

4. Preview of a Master page

  • Adding a "preview" option to the "Apply Master Page" dialog box, which appears on bringing up Page -> Apply Master Page, which would provide a thumbnail preview of the selected master page or of the master page that one tries to apply to the current page.


DELIVERABLES

  1. Options for efficient editing of items on a master page of the current page.
  2. Master page Listing and Preview for better master page selection.
  3. Quick access option 'Master Page' to list all master page related operations under the Page list in the status bar.
  4. Documentation

TIMELINE

Up to May 23, 2009 - Getting familiar with Scribus source code and getting clarifications and refinements for the proposed ideas.
May 23 - June 10, 2009 - Implementing the first part of the project.
June 10 - June 13, 2009 - Discussions with mentor about the first part and fixing bugs.
June 13 - July 1, 2009 - Implementing second and third parts of project.
July 1 - July 3, 2009 - Discussions with mentor about the latter two parts and fixing bugs.
July 3 - Aug 1, 2009 - Implementing the last part of the project.
Aug 1 - Aug 3, 2009 - Discussions with mentor and fixing bugs.
Aug 4 - Aug 14, 2009 - Final review of code and documentation.

ABOUT ME

First Name  : Dhanashree
Name  : Nellayi Prasad Dhanashree
Email Id  : dhan0110@gmail.com
IRC nick  : dhan0
Location  : Kerala, India
Timezone  : GMT + 5:30
blog URL  : csianthoughts.wordpress.com
I am Dhanashree N P , a second year (fourth semester) student of B.Tech Computer Science and Engineering at the Government Engineering College, Thrissur. I have been coding in C++ for the last 4 years and C for the 2 years. I know basics of Python and SQL, and I have started learning Qt. I have also started reading the source code of Scribus.
I have done coding in C++ as a part of academic projects for my school. I am a member of Free Software Users Group, Thrissur, and have already used Scribus for designing a 3-fold brochure for a seminar conducted by the group.I haven't been involved in any Open Source development projects so far, but I am looking forward to do that as a student of GSoC 2009 with Scribus.