Design and implementation of a java based canvas graphic system
Table Of Contents
Chapter ONE
INTRODUCTION
- 1.1Introduction
- 1.2Background of Study
- 1.3Problem Statement
- 1.4Objective of Study
- 1.5Limitation of Study
- 1.6Scope of Study
- 1.7Significance of Study
- 1.8Structure of the Research
- 1.9Definition of Terms
Chapter TWO
LITERATURE REVIEW
- 2.1Overview of Graphic Systems
- 2.2Evolution of Canvas Graphics
- 2.3Java Programming Language
- 2.4Graphic Libraries in Java
- 2.5Canvas Graphics Applications
- 2.6Advantages of Java-Based Graphic Systems
- 2.7Disadvantages of Java-Based Graphic Systems
- 2.8Comparison with Other Graphic Systems
- 2.9Case Studies on Java Canvas Graphics
- 2.10Future Trends in Canvas Graphic Systems
Chapter THREE
SYSTEM DESIGN AND IMPLEMENTATION
- 3.1Research Methodology Overview
- 3.2Research Design
- 3.3Data Collection Methods
- 3.4Sampling Techniques
- 3.5Data Analysis Procedures
- 3.6Ethical Considerations
- 3.7Reliability and Validity
- 3.8Limitations of the Methodology
Chapter FOUR
SYSTEM TESTING AND EVALUATION
- 4.1Data Presentation and Analysis
- 4.2Overview of Findings
- 4.3Analysis of Key Results
- 4.4Comparison with Research Objectives
- 4.5Discussion on the Implications
- 4.6Interpretation of Results
- 4.7Recommendations for Future Research
- 4.8Practical Applications of Findings
Chapter FIVE
SUMMARY, CONCLUSION AND RECOMMENDATIONS
- 5.1Summary of Findings
- 5.2Conclusion
- 5.3Contributions to Knowledge
- 5.4Implications for Practice
- 5.5Recommendations for Further Action
Thesis Abstract
Abstract
This research project focuses on the design and implementation of a Java-based canvas graphic system. The aim is to create a versatile and user-friendly platform for creating and manipulating graphical elements using Java programming language. The system will allow users to draw shapes, text, images, and other graphic elements on a canvas, as well as manipulate these elements through various interactions. The project will involve designing the architecture of the graphic system, which will include components for handling user input, rendering graphics, managing shapes and objects, and providing tools for interaction. The system will be built using Java programming language, leveraging its rich set of libraries and frameworks for graphical programming. One of the key features of the system will be its flexibility and extensibility. Users will be able to easily customize the appearance and behavior of graphic elements, as well as add new functionalities through plugins and extensions. The system will also support various input devices, such as mouse, keyboard, and touch screen, allowing users to interact with the graphics in a natural and intuitive way. In addition, the system will be designed with performance and efficiency in mind. It will utilize efficient algorithms and data structures for rendering and manipulating graphics, ensuring smooth and responsive user experience even with complex and interactive graphics. The system will also support hardware acceleration where available, leveraging the capabilities of modern graphics hardware for faster rendering and improved performance. The research project will involve implementing the designed graphic system and conducting thorough testing and evaluation to ensure its functionality, usability, and performance. The system will be tested with various use cases and scenarios to validate its capabilities and identify areas for improvement. Overall, the goal of this research project is to develop a robust and feature-rich Java-based canvas graphic system that can be used for a wide range of applications, such as interactive visualizations, games, educational software, and more. By providing a powerful and flexible platform for creating and manipulating graphics, the system aims to empower users to express their creativity and ideas in a dynamic and engaging way.
Thesis Overview
<p>
</p><div><b><b><b><b><b><p><b>INTRODUCTION</b></p><p><b></b></p><b><p><b>1.1 Background of Study</b></p><p><b></b></p><b><p>Canvas’ origins date back to 1987. The original idea for Canvas came from Jorge Miranda, one of the founders of Deneba Systems Inc. of Miami Florida, for Apple’s Macintosh computers, part of the wave of programs that made the desktop publishingrevolution.The first version was unique in many ways; not least because it was released as both an application and a desk accessory. In the latter form, it could be used while another program, e.g. PageMaker, was running simultaneously; very handy in that time of single program operation.</p><p>Canvas provides tools for creating and editing vector and raster graphics. It is used for illustration, page layout, animation, presentations, and publications in printed and World Wide Web formats.From its inception, Canvas differed from other graphics applications because it combined tools and file formats for both vector (line art) graphics, and raster (photographic and other pixel-based) images, along with word-processing and page-layout features such as multiple page documents and master pages. The user works in a window which is the familiar “page on a pasteboard” analog used by many DTP and vector graphics programs, but in that window, which might be a single illustration page or one page of a multi-page magazine, book, web site, animation or presentation, the user can create or edit and layout text, vector graphics and raster images. Canvas also emphasized technical drawing in addition to artistic illustration features.</p><p></p><p>While Canvas started out as a prosumer program in the general graphics/DTP market, and continues to be the first (even only) tool of many professionals in such fields as graphics design, advertising, marketing, and DTP, it is less known in the consumer/prosumer market today than programs marketed by larger companies, such as Adobe Illustrator, Photoshop, and CorelDRAW. It has been better known in academic and commercial enterprises.</p><p>A Canvas component represents a blank rectangular area of the screen onto which the application can draw or from which the application can trap input events from the user. An application must subclass the Canvas class in order to get useful functionality such as creating a custom component. The paint method must be overridden in order to perform custom graphics on the canvas.</p><p>An essential part of programming in Java requires you build exciting new user interfaces for yourselves. Components that come built into the Java framework are regular UI elements, however for a more rich experience, you need controls of your own. Take, for instance, a charting application. No charting tool comes built into a Java API. You need to manually draw the chart yourself.</p><p>Graphic design is the presentation of ideas and information to your audience in a clear, visually engaging manner. Graphic design lets you make a great first impression. Consumers tend to gravitate to better-designed products. It provides a quality anchor in their mind. Good design gives you instant credibility, inspires confidence and trustworthiness, and clearly communicates its point to your audience</p><p></p></b></b></b></b></b></b></b></div><b><b><b><div><p><b>1.2 Statement of the Problem</b></p><p><b></b></p><b><p>Information technology is a trend today, and as the volume of information increases, problem of storage arises. As time is money, in the 21st century, people don’t have the time to read huge number of pages or analyze numerous tables of data. Hence, there is need to represent a huge database in picture-like forms like bar charts and pie charts.</p><p><b> </b></p><p><b></b></p><b><p><b>1.3 Aim and Objectives of the Study</b></p><p><b></b></p><b><p>The aim of this project is to design a graphics application that uses a Canvas to display graphic objects.</p><p>The objectives of the study are;</p><p>1. To design a canvas based application using a canvas component</p><p>2. To develop an interface for graphics design.</p><p>3. To implement the application using java programming language.</p><p><b>1.4 Significance of the Study</b></p><p><b></b></p><b><p>This project work will help to provide a better understanding on developing graphic applications in java. It will also increase our knowledge in drawing programmatically as this involves trigonometric calculations.</p><p>This project work can serve as:</p><p>1. A guide to anyone who wants to develop a graphics system</p><p>2. Reference work for students carrying out research on graphic application development.<b></b></p><b><p><b></b></p><b><p><b> </b></p><p><b></b></p><b><p><b>1.5 Limitations of the study</b></p><p><b></b></p><b><p>Due to some constraints, this research work will be limited to the following areas;</p><p>1. It does not allow drawing of complicated diagrams and designs</p><p></p><p>2. It does not support full format editing of shapes</p><p>3. It is limited to simple shapes like lines, rectangles and circles. </p><p><b>1.6 Scope of Study</b></p><p><b></b></p><b><p>This study’s intended user is all personal computer owners which cuts across students, companies and business enterprises that hope to achieve high quality graphics design in a java environment.</p><p><b> </b></p><p><b></b></p><b><p><b>1.7 Definitions of Terms</b></p><p><b></b></p><b><p><b>CANVAS: </b>A container that holds various drawing elements (lines, shapes, text, frames containing other elements, etc.).</p><p><b>AWT: </b>The Java Abstract Windowing Toolkit (AWT) provides numerous classes that support window program development.</p><p><b>GRAPHICS: </b>Refers to any computerdevice or program that makes a computer capable of displaying and manipulating pictures.</p><p><b>GUI: </b>Graphical User Interface.</p><p><b>JAVA 2D API: </b>provides advanced two dimensional graphics capabilities for detailed and complex graphical manipulations.</p><p><b>SWING: </b>Swing is a set of program component s for Java programmers that provide the ability to create graphical user interface (GUI) components, such as buttons and scroll bars, that are independent of the windowing system for specific operating system</p></b></b></b></b></b></b></b></b></b></b></b></div></b></b></b>
<br><p></p>