DESIGN AND IMPLEMENTATION OF A JAVA BASED CANVAS GRAPHIC SYSTEM
CHAPTER ONE
INTRODUCTION
1.1 Background of Study
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.
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.
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.
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.
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.
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
1.2 Statement of the Problem
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.
1.3 Aim and Objectives of the Study
The aim of this project is to design a graphics application that uses a Canvas to display graphic objects.
The objectives of the study are;
1. To design a canvas based application using a canvas component
2. To develop an interface for graphics design.
3. To implement the application using java programming language.
1.4 Significance of the Study
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.
This project work can serve as:
1. A guide to anyone who wants to develop a graphics system
2. Reference work for students carrying out research on graphic application development.
1.5 Limitations of the study
Due to some constraints, this research work will be limited to the following areas;
1. It does not allow drawing of complicated diagrams and designs
2. It does not support full format editing of shapes
3. It is limited to simple shapes like lines, rectangles and circles.
1.6 Scope of Study
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.
1.7 Definitions of Terms
CANVAS: A container that holds various drawing elements (lines, shapes, text, frames containing other elements, etc.).
AWT: The Java Abstract Windowing Toolkit (AWT) provides numerous classes that support window program development.
GRAPHICS: Refers to any computerdevice or program that makes a computer capable of displaying and manipulating pictures.
GUI: Graphical User Interface.
JAVA 2D API: provides advanced two dimensional graphics capabilities for detailed and complex graphical manipulations.
SWING: 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