• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 323
  • Last Modified:

how to open resize and save jpegs

HI, I need to open resize and then (preferably) save jpegs with a selectable level of compression

does anyone have any code or a control or something to do this?

0
esdfesdf
Asked:
esdfesdf
  • 5
  • 3
1 Solution
 
Ryan ChongCommented:
Try see:

VB Image Editor
http://www.freevbcode.com/ShowCode.Asp?ID=4280

Which included info on how to use Intel® JPEG Library to save graphic to Jpg extension.

Also at:
http://www.vbaccelerator.com/codelib/gfx/vbjpeg.htm
0
 
Ryan ChongCommented:
I also used an ocx called PicFormat32.ocx which can convert images to gif, bmp, jpg and vice versa easily.

More useful links regarding this can be found here:

http://www.martin2k.co.uk/vb6/tips/q16.php
http://www.visualbasiconline.net/download.php?categoria=ocx
0
 
sgayatriCommented:
From vb running on windows 98 you can do:

Add Kodal image edit control from Project >> components
Create a blank.jpg file; (You can scan a blank page and name it blank.jpg; as it is required to do so before display)

ImgEdit1.Image = "c:\yourfile.jpg"
ImgEdit2.Image = "c:\blank.jpg"

ImgEdit1.Display
ImgEdit2.Display

''' select your values to resize the image
ImgEdit1.DrawSelectionRect 10, 10, 1000, 1000
''' copy the selected image from image1
ImgEdit1.ClipboardCopy '10, 10, 10, 10
'''paste it on the blank page of image2
ImgEdit2.ClipboardPaste
imgedit2.savepage x.tif", filetype, pagetype, compressiontype,compressioninfo, saveatzoom,pagenumber

''' on the form click on imgedit control and press f1 to get full help on it.
0
The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

 
esdfesdfAuthor Commented:
ryancs -
Your code works well for opening and saving with compression, but I don't know how to  resize the image. I tried this.. which doesnt work (as expected)

Dim cD As New cDIBSection
LoadJPG cD, Text1.Text

cD.Height = cD.Height * 0.5
cD.Width = cD.Width * 0.5

Dim SaveTo As String
SaveTo = App.Path & "\tessdf.jpg"
SaveJPG cD, SaveTo, tQual.Text

End Sub



sgayatri - I don't have the kodal image edit control so I couldn't use your code
0
 
Ryan ChongCommented:
esdfesdf, can i know which example / link you refer to?

regards
0
 
esdfesdfAuthor Commented:
0
 
Ryan ChongCommented:
Hi,

I would resize the picture into a temporary picturebox, instead of modify the existing code from vbaccelerator, so try like:

Private Sub Command1_Click()
    picTmp.AutoRedraw = True
    picTmp.Visible = False
   
    picTmp.Width = picTest.Width * 0.5
    picTmp.Height = picTest.Height * 0.5
   
    picTmp.PaintPicture picTest.Picture, 0, 0, picTmp.Width, picTmp.Height, 0, 0, picTest.Width, picTest.Height, vbSrcCopy
    picTmp.Picture = picTmp.Image
    picTmp.Refresh
    DoEvents
   
    Dim sI As String
    Dim c As New cDIBSection
    Dim i As Long
   
    Set c = New cDIBSection
    c.CreateFromPicture picTmp.Picture
   
    sI = App.Path & "\Tempvb.jpg"
    If VBGetSaveFileName(sI, , , "JPEG Files (*.JPG)|*.JPG|All Files (*.*)|*.*", 1, , , "JPG", Me.hwnd) Then
        If SaveJPG(c, sI) Then
            ' OK!
        Else
            MsgBox "Failed to save the picture to the file: '" & sI & "'", vbExclamation
        End If
    End If
   
End Sub

Hope this helps
0
 
esdfesdfAuthor Commented:
sorry, but how do I get the jpg into the picturebox using the intel jpeg lib?
0
 
Ryan ChongCommented:
>>how do I get the jpg into the picturebox using the intel jpeg lib?
You can try use the loadpicture function, no need use intel jpeg lib, in order to load a picture to picturebox, like:

picTest.Picture = LoadPicture(fPath)
0

Featured Post

Never miss a deadline with monday.com

The revolutionary project management tool is here!   Plan visually with a single glance and make sure your projects get done.

  • 5
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now