GSoC 2008 Picture Browser: Difference between revisions

From Scribus Wiki
Jump to navigation Jump to search
 
(35 intermediate revisions by 2 users not shown)
Line 1: Line 1:
=Rationale=
=Rationale=
Embedding images is one of scribus core features and is already implemented satisfactorily.
Importing images is one of Scribus's core features and it's already well implemented. However, it lacks a proper and easy to use picture browser to make the selection of pictures from large collections easier.
However, it lacks a proper and easy to use picture browser to make the selection of pictures more comfortable.


=Motivation=
=Motivation=
My motivation for this project is that i think this feature will greatly improve scribus ergonomics and so i will deliver a vital
My motivation for this project is that i think this feature will greatly improve image handling in Scribus and I plan to deliver a vital
contribution for all scribus users (including myself). Furthermore, i like playing around with graphics and windowdesign so adding
contribution for all Scribus users (including myself). Furthermore, I like playing around with graphics and UI design, so that adding
this feature corresponds with my personal interests.
this feature corresponds with my personal interests.


=Overview=
=Overview=
The basic goal is to create a picture browser which allows the users to select images from a neatly arranged preview with just a few clicks.
The basic goal is to create a picture browser similar to OpenOffice.org's "Gallery" [1], which allows users to select images from a neatly arranged preview with just a few clicks or drag and drop.
Adding eyecandy like pictureflow will enhance the browsers usability. Further features could include the displaying of metainfo and the support of digital cameras.
Optional features like PictureFlow[2] and the display of additional information (metadata, color spaces, resolution) will further enhance the browsers usability.
In addition, users will be able to access pictures from various external sources like network repositories and digital cameras.




=Details=
=Details=


==Picture Flow==
==Implementation==
The picture browser will provide access to large collections of images. It will be possible to drag and drop an image from the browser to a page. Alternatively, an image frame can be selected/created, and its content can be inserted from the browser. It will also be possible to add new and remove collections of images permanently as in the OpenOffice.org gallery. The picture browser will use the exisiting and possibly the new image file format plugins to make sure it can display all image types supported by scribus. If possible, Scribus will also be enabled to add online collections like Open Clip Art [3].


===Previous experience===
==Existing work==
I have no previous experience with PictureFlow, but i think getting familiar won't be a problem.  
The picture browser will be able to reuse much of Scribus's image-related code, eg. for previews, image data etc. Digital camera import could be based on existing digiKam[4] code. A prototype of a PictureFlow plug-in has been developed by a Scribus contributor who gave permission to extend his code.


===Implementation===
==User interface==
Accessing the picture browser will be possible from the context menu of the desired pictureframe as well as from the regular File/Open dialogue option, which
I think the best solution is to keep this as simple as possible, but also to follow proven solutions. The OpenOffice.org Gallery is a well tested feature, which is used by millions of users all over the world, so that the picture browser in Scribus should work similarly. It will, however, need to be extended to meet the requirements of professional users. Scribus's "Manage Images" feature provides a solid basis to start from. It will be extended by a directory browser using a tree-hierarchy for easy navigation. The preview function will be altered to show all supported images in the selected folder and to provide basic filtering/sorting options (name, size etc). Optionally, the user can switch from the common preview list to PictureFlow. Moreover, the browser will allow users to create/remove collections of images.
will enable you to create a new pictureframe containing your image. The picture browser will use the exisiting and possibly the new image fileformat plugins to make sure it can display all imagetypes supported by scribus.


=Deliverables=
* An advanced picture browser for Scribus
* Documentation


===Existing work===
=Biographical Sketch=
For the basic structure, i will orientate myself by OpenOffice's gallery as well as other well-established picture browsers.
My name is Markus Durst, and I'm a student of physics at the university of Regensburg in Germany (http://www.uni-r.de) in the fourth term. My first computer was a 286, with which I started coding in QBasic. Later I switched to C/C++, and I have several years of experience with both languages. In addition, I have some knowledge in ASM and PHP. I am also very interested in computer security related issues and have already visited a couple of CCCs (Chaos Communication Congresses) in Germany.
Picture flow capability can be taken from the homonymous program which can be implemented quite easily.


===User interface===
=Timeline=
I think the best solution is to keep this as simple as possible, just a section on the left where you can browse through your folders, and a preview section right next to
 
it showing the images of the selected folder (if desired using PictureFlow).
* April 14: Accepted student proposals announced on the Google Summer of Code home page. Community Bonding Period: Students get to know mentors, read documentation, get up to speed to begin working on their projects.
 
''I start learning the Scribus internals and Qt coding as I am not sufficiently familiar with the Scribus development process yet. I will also ask layout professionals on #scribus for their requirements.''
 
* May 26: Students begin coding for their GSoC projects;
 
''By then, I should already be familiar with the Scribus development process and ready to start with the actual work.''
 
* July 7: Mentors and students can begin submitting mid-term evaluations.
 
''Most of the basic features like browsing folders/collections and a simple preview list should work right now.''
 
* July 20: End of semester
 
''Now the basic features should be fully working, and I will start implementing extras like PictureFlow and network / digital camera access. Some exams at university will keep me from finishing my tasks at this time, but I cant specify any dates yet''
 
* August 11: Suggested 'pencils down' date. Take a week to scrub code, write tests, improve documentation, etc.
 
''I will recheck my code and get some final feedback for minor changes, if necessary. Also, I will finish the documentation.''
 
* August 18: Firm 'pencils down' date. Mentors, students and organization administrators can being submitting final evaluations to Google.
 
''Hopefully everything is completed to the team's and my satisfaction.''
 
[1] http://wiki.services.openoffice.org/wiki/Documentation/OOoAuthors_User_Manual/Getting_Started/Working_with_the_Gallery
 
[2] http://code.google.com/p/pictureflow
 
[3] http://openclipart.org
 
[4] http://www.digikam.org

Latest revision as of 14:54, 5 April 2008

Rationale

Importing images is one of Scribus's core features and it's already well implemented. However, it lacks a proper and easy to use picture browser to make the selection of pictures from large collections easier.

Motivation

My motivation for this project is that i think this feature will greatly improve image handling in Scribus and I plan to deliver a vital contribution for all Scribus users (including myself). Furthermore, I like playing around with graphics and UI design, so that adding this feature corresponds with my personal interests.

Overview

The basic goal is to create a picture browser similar to OpenOffice.org's "Gallery" [1], which allows users to select images from a neatly arranged preview with just a few clicks or drag and drop. Optional features like PictureFlow[2] and the display of additional information (metadata, color spaces, resolution) will further enhance the browsers usability. In addition, users will be able to access pictures from various external sources like network repositories and digital cameras.


Details

Implementation

The picture browser will provide access to large collections of images. It will be possible to drag and drop an image from the browser to a page. Alternatively, an image frame can be selected/created, and its content can be inserted from the browser. It will also be possible to add new and remove collections of images permanently as in the OpenOffice.org gallery. The picture browser will use the exisiting and possibly the new image file format plugins to make sure it can display all image types supported by scribus. If possible, Scribus will also be enabled to add online collections like Open Clip Art [3].

Existing work

The picture browser will be able to reuse much of Scribus's image-related code, eg. for previews, image data etc. Digital camera import could be based on existing digiKam[4] code. A prototype of a PictureFlow plug-in has been developed by a Scribus contributor who gave permission to extend his code.

User interface

I think the best solution is to keep this as simple as possible, but also to follow proven solutions. The OpenOffice.org Gallery is a well tested feature, which is used by millions of users all over the world, so that the picture browser in Scribus should work similarly. It will, however, need to be extended to meet the requirements of professional users. Scribus's "Manage Images" feature provides a solid basis to start from. It will be extended by a directory browser using a tree-hierarchy for easy navigation. The preview function will be altered to show all supported images in the selected folder and to provide basic filtering/sorting options (name, size etc). Optionally, the user can switch from the common preview list to PictureFlow. Moreover, the browser will allow users to create/remove collections of images.

Deliverables

  • An advanced picture browser for Scribus
  • Documentation

Biographical Sketch

My name is Markus Durst, and I'm a student of physics at the university of Regensburg in Germany (http://www.uni-r.de) in the fourth term. My first computer was a 286, with which I started coding in QBasic. Later I switched to C/C++, and I have several years of experience with both languages. In addition, I have some knowledge in ASM and PHP. I am also very interested in computer security related issues and have already visited a couple of CCCs (Chaos Communication Congresses) in Germany.

Timeline

  • April 14: Accepted student proposals announced on the Google Summer of Code home page. Community Bonding Period: Students get to know mentors, read documentation, get up to speed to begin working on their projects.

I start learning the Scribus internals and Qt coding as I am not sufficiently familiar with the Scribus development process yet. I will also ask layout professionals on #scribus for their requirements.

  • May 26: Students begin coding for their GSoC projects;

By then, I should already be familiar with the Scribus development process and ready to start with the actual work.

  • July 7: Mentors and students can begin submitting mid-term evaluations.

Most of the basic features like browsing folders/collections and a simple preview list should work right now.

  • July 20: End of semester

Now the basic features should be fully working, and I will start implementing extras like PictureFlow and network / digital camera access. Some exams at university will keep me from finishing my tasks at this time, but I cant specify any dates yet

  • August 11: Suggested 'pencils down' date. Take a week to scrub code, write tests, improve documentation, etc.

I will recheck my code and get some final feedback for minor changes, if necessary. Also, I will finish the documentation.

  • August 18: Firm 'pencils down' date. Mentors, students and organization administrators can being submitting final evaluations to Google.

Hopefully everything is completed to the team's and my satisfaction.

[1] http://wiki.services.openoffice.org/wiki/Documentation/OOoAuthors_User_Manual/Getting_Started/Working_with_the_Gallery

[2] http://code.google.com/p/pictureflow

[3] http://openclipart.org

[4] http://www.digikam.org