# CS 111 - Program Design I

### Lab Assignment

Due: Wednesday 2/25/2015 by 11:59 pm

Note that this lab should be pretty simple, as we just had the first exam and the first project, you deserve a bit of a break.

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 existing addMessage () method of the Picture class from the bookClasses library. 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 from 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 111 - Lab 5" 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:

1. Be sure to change comment with the name of the author to contain the following:
• day and time of your CS 111 lab section (i.e. Monday at 1:00)
• A description of the project.

### How assignments should be submitted

You are also to submit the Java file electronically via the Assignment link in Blackboard for this lab. You are to name your file with the lab number and your netID. Please only submit source code file (the .java file, not the .class file nor the .java~ file).

-- Main.troy - 2015-02-19

Topic attachments
I Attachment Action Size Date Who Comment
gif africaFromSpace.gif manage 175.3 K 2015-02-19 - 17:45 UnknownUser
jpg africaFromSpaceLab5.jpg manage 61.9 K 2015-02-19 - 17:38 UnknownUser

This topic: CS111 > WebHome > CS111Spring2015 > AssignmentsS15 > Lab5s15
Topic revision: r1 - 2015-02-19 - 17:48:00 - Main.troy

 Copyright 2016 The Board of Trustees of the University of Illinois.webmaster@cs.uic.edu WISESTHelping Women Faculty AdvanceFunded by NSF