aspjpeg
Adjusting Image Compression (advanced users only)
The JPEG format uses "lossy" compression methods. This means that some minor details of an image saved as a JPEG are lost during compression. The degree of loss can be adjusted via the jpeg.Quality property. This property accepts an integer in the range 0 to 100, with 0 being the highest degree of loss (and hence, the lowest quality) and 100 being the lowest degree of loss and highest quality.
The lower the loss, the larger the resultant file size. The property jpeg.Quality is set to 80 by default which provides a close-to-optimal combination of quality and file size. Changing this property is generally not recommended.
AspJpeg Object Reference
AspJpeg Properties
Expires As Date (read-only)
Returns the component's expiration date. If a valid registration key is installed, returns 9/9/9999.
Height As Long (read/write)
Specifies a new image height (in pixels). Must be called after an image is opened via the Open method.
Interpolation As Long (read/write)
Specifies an image resizing algorithm. The following values are currently supported: 0 (Nearest-Neighbor), 1 (Bilinear, default) and 2 (Bicubic).
The Nearest-Neighbor (NN) is the fastest but provides low-quality thumbnails.
The Bilinear method offers much better thumbnail quality but is approximately 2 times as slow as NN.
The Bicubic method is approximately twice as slow as Bilinear and 4 times as slow as NN, but supposedly offers the highest quality. In many cases, however, it provides little, if any, noticeable improvement over the Bilinear method.
Default: 1 (Bilinear).
OriginalHeight As Long (read-only)
Returns the original image height (in pixels). Can only be called after an image is opened via the Open method. Use this property to preserve the original aspect ratio of an image.
OriginalWidth As Long (read-only)
Returns the original image width (in pixels).Can only be called after an image is opened via the Open method. Use this property to preserve the original aspect ratio of an image.
Quality As Long (read/write)
Specifies the degree of compression loss. Affects the resultant image quality and file size.
Accepts an integer value in the range 0 to 100, 0 being the lowest quality, highest loss and smallest file size. The higher the value the higher the image quality, and the larger the file size.
The property Quality is set to 80 by default which offers a close-to-optimal combination of image quality and file size. Changing this property is generally not recommended.
Width As Long (read/write)
Specifies a new image width (in pixels). Must be called after an image is opened via the Open method.
AspJpeg Methods
Sub Close()
Closes a file opened via the Open method. This method is called automatically upon the destruction of the AspJpeg object, so you do not have to call it explicitly, unless there is an immediate need to free the file handle (such as, if you need to delete the file).
Sub Crop(x0 As Long, y0 As Long, x1 As Long, y1 As Long)
Cuts edges off of a thumbnail. For this method to take effect, you must call it before calling .Save or .SendBinary.
The arguments (x0, y0) and (x1, y1) are the coordinates of the upper-left and lower-right corners of the desired cropped image within the thumbnail. For example, if the original large image is 300 pixels wide and 200 pixels high, the following sequence will produce a cropped thumbnail which is 60 pixels wide and 40 pixels high:
Jpeg.Width = 120
Jpeg.Height = 80
' Crop 20 pixels from left, 30 from top.
' Make image size 60 by 40.
Jpeg.Crop 20, 30, 80, 70
Sub FlipH()
Flips the resultant thumbnail horizontally. For this method to take effect, you must call it before calling .Save or .SendBinary.
Sub FlipV()
Flips the resultant thumbnail vertically. For this method to take effect, you must call it before calling .Save or .SendBinary.
Sub Open(Path As String)
Opens a JPEG image for resizing. Path must be a physical path to the image.
Sub Save(Path As String)
Resizes the currently opened image using parameters specified by various properties. Save the resultant image thumbnail to a file specified by Path. If a file with this name already exists it will be overwritten.
Sub SendBinary(Optional ContentDisposition)
Resizes the currently opened image using parameters specified by various properties. Sends the resultant image directly to the client browser by internally calling Response.BinaryWrite. Automatically sets the Content-Type header to "image/jpeg".
If ContentDisposit