CS 101 - Intro to Computing, Fall 2010

Lab 6

Lab Assignment

Due: Thursday 10/7/2010 by 11:59 pm

For this lab assignment, complete the following:

  1. Prompt the user for an picture and open that picture. Once the picture has been opened, add a simple text message to the bottom left side of the picture. Then prompt the user for a filename to save the modified picture and save the picture in that file. You should use the pickAFile() method from the FileChooser class to prompt the user for the picture and for the filename to same the modified image.

    To add the text message, use the addMessage () method of the Picture class. This method takes 3 parameters:

    1. message - The text message to the added to the picture.
    2. xpos - the pixel position of the left side of the string
    3. ypos - the pixel position of the bottom of the string

    We want the text to be on the bottom left side of the picture. Let us put it 20 pixels over the left edge of the the picture and 20 pixels above the bottom edge of the picture. The xpos value is simple, that will be 20. However, we must calculate the ypos value.

    Fortunately, the Picture class has a method getWidth() method and a getHeight() method. Each of these return the distance in pixels across the width (which is the X direction) or the height (which is the Y direction) of the picture. The coordinate position of (0,0) is in the upper left corner of the picture.

    Thus to calculate the value for the ypos for the addMessage() method, we need to subtract 20 from the height of the picture.

    The message that you put in the picture can really be anything you want. If you can't think of anything interesting, just put "CS 101 - Lab 6" followed by your name. This sort of idea is normally used to add a caption to a picture or to add a copyright statement. Note: you should only be adding copyright statements to pictures that you took/created yourself.

    The following is an example a before and after picture:

  2. Be sure to change comment with the name of the author to contain the following:

Submission of the Lab

The lab must be submitted electronically to the Assignment Link for Lab 6 inside of Blackboard. You will only need to submit the java source code file (the ".java" file). Please only submit source code file (the .java file, not the .class).