Proposal Title: JavaScript-only PDF viewer component Full Name: Charitha Madusanka
Apache Project: Tapestry Name of Mentor : Ulrich Särk Start Date: 01st of August 2010 Mid-term Evaluation Date : 15th of September 2010 End Date: 30th of October 2010 Deliverables: JavaScript-only PDF viewer component for Tapestry 5 Detailed Description: To render PDF into images I will plane to use java2D. Javaswinglabs provide PDF rendering library called Java PDF render ( https://pdf-renderer.dev.java.net/). This library has a class called PDFRenderer ( https://pdf-renderer.dev.java.net/nonav/demos/latest/javadoc/index.html) and it turns a set of PDF Commands from a PDF page into an image. I will do render the document pages-by-page, then contents shown to the user. This method is more efficient and accurate. Ajax is used to load the content asynchronously. Project Plan: Step 1: Initial Planning and Starting Implementation I will make a rough design and start working on the code. Step 2: Do the Implementation Continually I would work on the rest of code. Deliverable(s): mid evaluation. Step 3: Improvements and Testing Modifications or improvements suggested at the mid evaluation would be completed in this step. Start to test component. Step 4: Final Product and Documents With the completion of this step, will finish JavaScript-only PDF viewer component for T5. Necessary documents would also be present with the final products. Deliverable(s): Final product and documentation. About Mentoring Programme: I am so confident that I can deliver a great contribution to the open source community through the participation of mentoring program. And also it would be a great opportunity to students to elicit and present their talents. Number of Hours: 20 hours per week Biography I am Charitha Madusaka Elvitigala Computer Science undergraduate (3rd year) of University of Colombo School of Computing (UCSC), Sri Lanka. I have been involved in Open Source development regarding Web Services based on Apache Tapestry, axis2 and I have experience more with javaEE and Java Script.