CGI image manipulation

Completed Posted Nov 8, 2009 Paid on delivery
Completed Paid on delivery

I require a CGI application that will be called as follows: [img src="/cgi-bin/reflect?name=1234&bg=ffffff&width=150"] This script will do one of two things: 1. If the cached version of the output is not older than the real image, return the cached version. 2. Otherwise, take the following actions: a. read the original image from /path/${name}.gif or .jpg (e.g., /path/[url removed, login to view]). If the .gif exists, use that, otherwise use the .jpg. If neither exists, use a blank image. b. (In memory) resize the image from a. to be exactly ${width} pixels wide, keeping the proportion the same. Record the height in ${height}. c. Create a canvas with the background color ${bg} with size ${width} x ${height}*1.5 pixels. d. Create a reflection effect as shown in the example. This effect was created with a gradient from 50% to 0% opacity (0.5 to 0.0 alpha value), over 50% of the height of the image. e. Save the created image in a cache directory (see #1). f. Return the created image to the user (send Content-Type: image/png and send the binary image data).

## Deliverables

Perl source code is to be a thing of beauty. It must be compact, elegant, and must conform to the well-known and standard "perlstyle" style guideline, found at [url removed, login to view] . I will insist on this, as with all the other requirements on this project.

You must upload the source code to RaC every time you make progress for my review (at least once per day). This will allow me to review your code early, and help you solve problems before they become big issues.

Perl source code shall be in a single source file ONLY. The configuration file will be a separate file.

You may use any modules from CPAN, and you may use ImageMagick for image manipulation. However, per RAC rules, you must obtain my approval on-site before using any 3rd party code.

Provide an external configuration file that shall include, at minimum:

* The path (on the server's filesystem) to the input images

* Default image width

* The path (on the server's filesystem) to the cache directory

1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.

2) Deliverables must be in ready-to-run condition, as follows? (depending on the nature? of the deliverables):

a)? For web sites or? other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.

b) For all others including desktop software or software the buyer intends to distribute: A software? installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.

3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).

## Platform

Perl 5.8.x or 5.10.x on Linux.

Perl Software Architecture Software Testing Web Hosting Website Management Website Testing

Project ID: #2955461

About the project

1 proposal Remote project Active Nov 11, 2009

Awarded to:

tvsvw

See private message.

$85 USD in 4 days
(50 Reviews)
5.0