C++ Class for Large Image Manipulation
$100-500 USD
Pagado a la entrega
I need a VC++ class for manipulation of
large images within my own VC++ 6 GDI based application.
Requirements include
1. Load images from a stream
(external file or memory array)
in different formats
REQUIRED : BMP, JPG, GIF, PNG )
DESIRED - TIFF
2. Display any part of current image (rectangular area)
on given a specified DC in a specified rectangle
with specified zoom factor - stretching or shrinking.
3. Rotate and Present images with a given rotation angle REQUIRED - 90, 180, 270 degrees rotations
DESIRED - Any angle
4. Displaying must be fast and high quality DESIRED - Reduced size images should not drop lines
but rather display such lines in halftones).
5. There should not be any restrictions on image size.
Images with original size of 10,000 x 10,000 pixel
and larger are expected. These should load quickly.
6. Save image ( optionally rotated ) back to output stream
(file or memory array) REQUIRED - save back in original format
OPTIONAL - Save in a choice of formats
BMP, JPG, GIF, PNG, TIFF
7. If possible image should be kept compressed in memory
except for portion to be displayed ( if overall image
at specified zoom is larger than current viewing rectangle )
Note that i will need to know of, and agree to, any potential dependencies in advance.
Note - projects should NOT use GDIPlus
Bidders will be considered in part based upon how fast a solution can be made ready, - I will be interested to see any existing sample EXE ( may say DEMO or time out or whatever) to illustrate ability to do this quickily, and also hopefully show speed and quality of application performance with large raster images for load, rotate, zoom
## Deliverables
ADDIONAL OPTIONAL FOR BONUS: If you have expertise in building ActiveX that will also be a plus - as bonus ( not required but nice), build ActiveX ( using same core code ) with no visual presentation but the following interface useful for rotating a picture:
1. Method -LoadAndRotate (FNameIn, FNameOut, RotateType )
FNameIn is input file name
FNameOut is Output file name
RotateType specifies 90, 270 or 180 degrees
2. Property - VBPicture
passes picture to or from standard VB picturebox
3. Method - Rotate
Rotates picture ( as assiged to it's VBPicture) by 90, 270 or 180 degrees
DELIVERABLES REQUIRED
1) Fully Commented Source code for the class
2) Complete and fully-functional working sample program demonstrating use of the class in executable form as well as with complete source code of all work done. This sample should include loading an image of my choice, display, zoom, scroll, rotate and resave.
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).
* * *This broadcast message was sent to all bidders on Tuesday Dec 4, 2007 12:43:35 PM:
Please let me know - will your solution be able to keep image compressed in memory except for portion to be displayed ( if overall image at specified zoom is larger than current viewing rectangle ). Let's say I load a large 1000x 1000 pixel B&W JPG, and display window is only 300 x 300 pixels - what memory would be required ?
## Platform
REQUIRED : Windows 2000, Windows XP, Windows Vista
DESIRED: Win 95, 98, ME
Nº del proyecto: #3476955