Hi Tharaka, Really? I could have sworn there was a 16th April deadline! I haven't had an email with your request ( https://issues.apache.org/jira/secure/IssueNavigator!executeAdvanced.jspa), the dev-community gets spammed with everyone's projects proposals, and there have been a lot. I just found yours at (for anyone else looking for it): http://www.google-melange.com/gsoc/proposal/review/google/gsoc2012/tharaka/1
The ASF protocol is to create an issue on JIRA (link above) and then do one on google-melange, it allows a link for searching and keeping track of things. I think there are other reasons, but I forget them, anywho, my sincerest apologies, I'll review it in the morning. Mehdi On 17 April 2012 17:01, Tharaka Nayanajith Wijebandara <tharaka...@gmail.com > wrote: > Hi Mehdi, > > > I can't understand what actually happened. I submitted my proposal before > the deadline (April 6:19:00 UTC) and still it's available in google-melange > site. Also according to timeline mentors are supposed to review the > proposal before the 20th April. I may be wrong, but don't have any idea > about why you said that we have missed the deadline. Anyway I'm still ready > to continue with this project. > > On Tue, Apr 17, 2012 at 4:31 PM, Dexter Mishra <dexter.mis...@gmail.com > >wrote: > > > Well Still who ever wants want to work can work on that. It will be their > > credit. GSc is not the only way. > > > > On Tue, Apr 17, 2012 at 12:24 PM, mehdi houshmand <med1...@gmail.com> > > wrote: > > > > > Ok, well, disappointingly we've missed the deadline to submit a > proposal > > > and review said proposal. Thanks for all the support from everyone, > sorry > > > we couldn't arrange it this year. > > > > > > Mehdi > > > > > > On 10 April 2012 08:22, mehdi houshmand <med1...@gmail.com> wrote: > > > > > > > Hi Tharaka, > > > > > > > > Sorry for the slow response, my bad, I don't have any worthwhile > excuse > > > > other than it's holiday season over here. As for the proposal, thats > > > fine, > > > > I'd be happy with that proposal. If no one else has any comments on > > this, > > > > I'd suggest moving writing this up on google-melange and getting the > > ball > > > > rolling. > > > > > > > > Keep up the good work, > > > > > > > > Mehdi > > > > > > > > > > > > On 5 April 2012 08:45, Tharaka Nayanajith Wijebandara < > > > > tharaka...@gmail.com> wrote: > > > > > > > >> Hi, > > > >> > > > >> Thank you very much for your feedbacks and suggestions. > > > >> > > > >> After going through all of your feedbacks, I modified the proposal > > with > > > >> them and used some my own ideas also. Additionally, I included the > > > >> proposed > > > >> time line of the project and I would like to see your comments here. > > > >> > > > >> > > > >> *Project Title* > > > >> > > > >> Implement PDF object inspector and enhance features of PDFReader > GUI. > > > >> > > > >> > > > >> *Abstract* > > > >> > > > >> PDFReader is small GUI application which comes with Apache PDFBox > pure > > > >> java > > > >> PDF library. Currently it is only capable of rendering PDFs. This > > > project > > > >> is to redesign PDFReader GUI with a plugin framework and implement > > some > > > >> developer oriented features for it. Primary objectives of project > are > > as > > > >> follows. > > > >> > > > >> (1). Design a plugin framework for the PDFReader. > > > >> > > > >> (2). Implement PDF basic viewing features. (Zooming, rotating, page > > > >> thumbnail viewer) > > > >> > > > >> (3). Implement a PDF object inspector to display PDF object > > properties. > > > >> > > > >> (4). Implement Export command for converting PDFs into different > file > > > >> formats (JPEG, PNG, TXT). > > > >> > > > >> > > > >> > > > >> *Project Details* > > > >> > > > >> * > > > >> * > > > >> > > > >> PDFBox already has so many features required, but currently most of > > them > > > >> only available for developers and from command line. Aim of this > > project > > > >> is > > > >> extending PDFReader into well designed application which allows > access > > > to > > > >> some PDFBox features through GUI and integrating some developer > > oriented > > > >> features. However, project itself is not going to consider GUI > access > > to > > > >> all available PDFBox features. Instead of that it re-architects > > > PDFReader > > > >> into pluggable application which developer can easily integrate > other > > > >> features by developing plugins. > > > >> > > > >> > > > >> In that case, most important primary objective of the project is > > > designing > > > >> a simple plugin framework for the PDFReader. In the implementation, > we > > > can > > > >> use JAR Service Provider mechanism as the base of the plugin > > framework. > > > >> For > > > >> that first, it's required to identify what are pluggable classes > which > > > is > > > >> going to use in the application and define interfaces for those > > classes > > > >> with the basic methods. Then we can implement some mechanism for > > plugin > > > >> developer to define what are the classes to use, and where (which > > > >> JAR/directory) to load them from. When application loads, it will > > check > > > >> specific locations for plugins and create instance of those plugins > > > using > > > >> class loader. Here after application can use those plugin instances > as > > > >> components of application itself. > > > >> > > > >> > > > >> Rotating and zooming functions are basic features which is available > > in > > > >> every PDF viewer and it allow user to view PDF pages from different > > > >> perspectives. However current PDFReader is unable to provide those > > > >> features. This project will address to this problem as part of > second > > > >> primary objective by implementing some menu commands for those > > features. > > > >> In > > > >> the implementation, it will be matter of changing some codes in > > > PageDrawer > > > >> and other related class which are responsible to render PDF pages > > using > > > >> Java2D. > > > >> > > > >> > > > >> Other interesting feature which is going to archive as another part > of > > > >> second objective is developing page thumbnail viewer for the > > PDFReader. > > > >> This will be cool GUI component for user to navigate through the PDF > > > >> Document very easily. It will be image list which has small image of > > the > > > >> every PDF page of the current document with page numbers. User can > > > simply > > > >> click on the image to jump the particular page. This component will > be > > > >> developed as plugin for PDFReader and user will be able to show and > > hide > > > >> using the menu command. > > > >> > > > >> > > > >> Third objective is implementing an object inspector for PDFReader > and > > it > > > >> will be very much useful to developer who wants to debug PDF > > documents. > > > >> User can enable click one the any object on the PDF viewer and then > > in a > > > >> small window, it will show the information about particular object > > while > > > >> highlighting the object inside the viewer. As an example if user > click > > > on > > > >> image of the PDF it will show the information such as image size, > > color > > > >> space, resolution and bit depth. If object is text, it will show the > > > >> details about font, color space and color values. In implementation > > this > > > >> also will be developed as another plugin for the PDFReader. > > > >> > > > >> > > > >> Export feature is last primary objective which I'm going to > implement > > > >> within this project and it also will be developed as several > plugins. > > As > > > >> most of the available software, it's good idea to add 'Export' menu > > item > > > >> into file menu. This menu item will have submenu which contains > > > different > > > >> commands for different file formats (JPEG, PNG, TXT) and each of > those > > > >> commands will popup small dialog box which allows user to change > > export > > > >> settings such as page range, password, encoding type, file name and > > > >> location. After change those settings, user can simply click 'OK' > > button > > > >> of > > > >> the settings dialog box to start the converting process. Every > command > > > for > > > >> particular file format will be developed as a plugin and in future > > > >> developers can easily integrate commands for new file formats to > > convert > > > >> PDFs. > > > >> > > > >> > > > >> In addition to these primary objectives there are few secondary > > > objectives > > > >> which I'm going to consider with this project and major one will be > > the > > > >> 'Add Text' feature. It will allow user to draw textbox in any place > of > > > the > > > >> PDF page and type new text. There will be Small window or view will > > > appear > > > >> in this mode and user can change the font size, color and other > > related > > > >> properties. These new text objects will added to PDF page by > inserting > > > new > > > >> optional content group to the page and in case user wants to remove > or > > > >> edit > > > >> this newly added text, it's possible before saving PDF permanently. > > > >> > > > >> > > > >> > > > >> Add 'print' menu item, develop plugin for mange (add, edit, delete) > > > >> bookmarks and View for the basic PDF properties will be the set of > > > another > > > >> secondary objectives which I'm going to look at within this project. > > > Since > > > >> most of them are already available in command line, it will be easy > to > > > add > > > >> those features as plugins for GUI if there will be enough time after > > > >> achieving primary objectives. > > > >> > > > >> > > > >> > > > >> *Benefits to PDFBox* > > > >> > > > >> Most of the modern code libraries are delivered with GUI application > > to > > > >> test the features before studying API. However, features of PDFBox > are > > > >> mostly accessible through the command line interface and it > > discourages > > > >> users and new developers from using PDFBox. By having GUI for access > > > these > > > >> features any user can simply use them and developer can test the > > > features > > > >> without going through the code. Since designing plugin framework is > a > > > >> primary objective of the project, developers will be able to easily > > > append > > > >> new features for GUI in future. > > > >> > > > >> PDF object inspector will be great tool for developer and it will > make > > > >> easy > > > >> debugging PDFs. Furthermore, it will help to new developers to study > > the > > > >> structure of PDF file and understanding PDFBox core functionalities. > > > >> > > > >> > > > >> > > > >> *Project Timeline and Deliverables* > > > >> > > > >> *May 21 - May 28* > > > >> > > > >> · Read and understand the current PDFReader Code > > > >> > > > >> · Create basic design for plugin framework > > > >> > > > >> *May 28 - Jun 08* > > > >> > > > >> Discuss plugin framework design with community > > > >> > > > >> *Jun 08 - Jun 18* > > > >> > > > >> Implement plugin framework > > > >> > > > >> *Jun 18 - Jun 25* > > > >> > > > >> Code some basic examples and test cases for plugin > > > >> framework > > > >> > > > >> *Jun 25 - Jul 02* > > > >> > > > >> Implement basic zooming and rotating features > > > >> > > > >> *Jul 02 - Jul 09* > > > >> > > > >> Implement page thumbnail viewer > > > >> > > > >> *Jul 09 - Jul 11* > > > >> > > > >> Study and Create design for Object Inspector > > > >> > > > >> *Jul 12 - Jul 13* > > > >> > > > >> Submit mid-term evaluation > > > >> > > > >> *Jul 13 - Jul 23* > > > >> > > > >> Implement PDF Object Inspector > > > >> > > > >> *Jul 23 - Jul 30* > > > >> > > > >> Implement export PDF feature > > > >> > > > >> *Jul 30 - Aug 06* > > > >> > > > >> Implement some secondary objectives > > > >> > > > >> *Aug 06 - Aug 13* > > > >> > > > >> Test, debug the code and complete documentation > > > >> > > > >> *Aug 13 - Aug 20* > > > >> > > > >> Submit the design and conclusion > > > >> > > > >> > > > >> > > > >> *Exams and other commitments* > > > >> > > > >> I have semester end examination of University from 28th May to 8th > > June. > > > >> After that I can work fulltime (40+ hours per week) on this project > > > until > > > >> end. > > > >> > > > >> > > > >> > > > >> > > > >> On Wed, Apr 4, 2012 at 12:44 PM, mehdi houshmand <med1...@gmail.com > > > > > >> wrote: > > > >> > > > >> > > > > > >> > > > > > >> > > <snip> > > > >> > > How about just implementing the "add text" feature? That should > be > > > >> > > relatively easy. Add a new optional content group to the page > and > > > add > > > >> > > all text as part of that. That makes this a cool tool to fill > out > > > >> forms > > > >> > > that were scanned, or that are not AcroForms. I fully agree that > > the > > > >> > > replace feature is going to be tough, relatively speaking. > > > >> > > > > > >> > > > > >> > Yeah, my bad here, I shouldn't have missed it but I'm inclined to > > > agree > > > >> > with Andreas. If we implemented deleting text, it could get pretty > > > >> tricksy, > > > >> > especially when CID coded fonts are used. This is a perfect > > candidate > > > >> of a > > > >> > secondary objective. > > > >> > > > > >> > > > > >> > > I wouldn't put the bar too high for this project. Get some > > > low-hanging > > > >> > > fruit that adds some cool and useful functionality to the GUI. > > More > > > >> can > > > >> > > always be added later. > > > >> > > > > > >> > > More ideas for low-hanging fruit (as additional tasks if you end > > up > > > >> with > > > >> > > spare time after the main objectives above): > > > >> > > - Allow the "Save As..." menu item not only save a modified PDF, > > but > > > >> > > also bitmaps (PNG, JPEG), plain text and HTML (i.e. from text > > > >> > extraction). > > > >> > > That would make a plug-in for each output format, so we could > add > > > >> others > > > >> > > later. > > > >> > > - Add a "Print..." menu item. > > > >> > > - Integrate preflight as a plug-in into the application. > > > >> > > - Split, concatenate, page reorder, page rotation (not just > > viewing > > > >> but > > > >> > > modifying the PDF), overlay/underlay. > > > >> > > - Menu item: "Create PDF from image(s)" and "Add page from > image". > > > >> > > - A dialog/view listing the fonts in the PDF. > > > >> > > - A dialog/view for the basic PDF properties like in Acrobat's > > > >> > > Properties Dialog. > > > >> > > - A dialog/view listing all images with their properties and > > > effective > > > >> > > resolution in the PDF. > > > >> > > - I could go on and on... :-) I'm seeing a serious itch going to > > > catch > > > >> > > me once you've set up a good base for that GUI. I'm so looking > > > forward > > > >> > > to this! > > > >> > > > > > >> > > Anyway, points 1 and 2 will be the most important tasks because > > they > > > >> > > provide the basis for easily adding additional functionality. > > > >> > > > > > >> > > > > >> > Yeah, those look like good tasks, maybe we'll add the two you > > suggest > > > to > > > >> > the primary objectives and the rest into secondary or even > tertiary > > > >> > objectives. It's good to see you getting geared up for this > > Jeremias, > > > >> we're > > > >> > no doubt going to call on your expertise ;-). > > > >> > > > > >> > Thanks for the support > > > >> > > > > >> > Mehdi > > > >> > > > > >> > > > >> > > > >> > > > >> -- > > > >> Thanks & Regards, > > > >> Tharaka Wijebandara, > > > >> Faculty of Information Technology, > > > >> University of Moratuwa. > > > >> > > > > > > > > > > > > > > > > > -- > Thanks & Regards, > Tharaka Wijebandara, > Faculty of Information Technology, > University of Moratuwa. >