Saving BMP to Jpeg format in VB 6

Posted on 2001-07-27
Medium Priority
Last Modified: 2013-11-19
Is there any source-code for saving .bmp to .jpeg files.
I would like it if somebody can point me to a source that doesn't actually require DLL's or Classes. If not, could someone explain to me how to do this. The sources i've found on the net only contain links or require DLL's, witch is a hassle.

VB saves files as .JPG but the size is too big (+1.1M.)
This is for a screen capture at 800*600 res. & 16 Bit Colours. I know VB uses your current settings to save the pic, but i can't run the program at 256 Colours.

If no one knows of any source code or sites that can help me in this, I would appreciate it if there is a link to a compression utility/coding/app that i can use/find.

Much credit will be given and more if available.

Thanx :)!
Question by:Kosie2K
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
  • 2
  • +4
LVL 38

Expert Comment

ID: 6326933
I've never seen this done in VB, the only open source code I've seen for Jpeg is the Independent JPEG Group's work which is in C.


Expert Comment

ID: 6326937
If you would not want to use DLL's or Classes,
the JPEG compression would get really slow, and
you would have a lot of code which is really difficult.

I used this approach: the free Intel JPEG Library
A complete demo and tutorial can be found at

Expert Comment

ID: 6326940
I'd check planet source code.  They are great resource for things like that.  
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!


Expert Comment

ID: 6326945
I guess I could give you the URL couldn't I.  DUH.  http://www.planet-source-code.com
LVL 38

Expert Comment

ID: 6326954
www.smalleranimals.com offers an excellent image processing DLL (ImgSource) that is relatively easy to use with VB.  It costs around $25.

http://www.vbaccelerator.com/codelib/gfx/vbjpeg.htm has code and links to a freeware DLL that can be used to save to JPG.  (This is probably the code you are talking about, but it is probably your best solution for free, unless you wish to translate IJG's work to VB--not an easy task!)
LVL 28

Expert Comment

ID: 6327220
it seems someone sent me pure VB code to save as JPG a while back, but i wont know until i get home.  if i remember correctly, it was some long, ugly code, and most surely, performed much slower than its C equivalent.

Accepted Solution

glass_cookie earned 225 total points
ID: 6333083

Here's a file over the net for you:


Description: This Code is for Converting a Windows Bitmap to a Jpeg file. All the code is there for you to do what you like Also the Code for the DLL file I must Tell you That it has been wrote in Delphi 4 if you have any problums with the dll then let me now.



Description: I wrote a little dll. You can convert a bitmap to a jpeg image (with Compress quality) or a jpeg to bitmap image. You can also capture the desktop in both formats (if You are using more then 256 colors).

That's it!

glass cookie : )

Author Comment

ID: 6333617
To: glass cookie.

your dll works sort of but i need a more descriptive explanation of all it's functions.. I have read the Txt Document but am still a little confused... Also the first link you provided gave me an DLL but REGSVR32 can't register it.

is there any e-mail address where i can contact you?

If need be send it to Kosie2k@yahoo.com

Thanx! :)
LVL 43

Expert Comment

ID: 6333628
Kosie2K, the reason regsvr32 doesn't work is that the dll is a standard dll not an activex dll. Only activex dlls need to be registered, a standard dll is accessed in a different way: Private Declare Function BmpToJpeg Lib "JPeg32.dll" (ByVal BmpFilename As String, ByVal JpegFilename As String, ByVal Quality As Integer) As Integer from the jpeg32 activex control.

Author Comment

ID: 6333650
Thanx a lot! :)

It does work but i have to play with it still to get it under control....

One other question... Is this Open Source or not?

Expert Comment

ID: 6333724
Sorry... it isn't my dll - It's written by someone : |

Featured Post

On Demand Webinar - Networking for the Cloud Era

This webinar discusses:
-Common barriers companies experience when moving to the cloud
-How SD-WAN changes the way we look at networks
-Best practices customers should employ moving forward with cloud migration
-What happens behind the scenes of SteelConnect’s one-click button

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article describes some techniques which will make your VBA or Visual Basic Classic code easier to understand and maintain, whether by you, your replacement, or another Experts-Exchange expert.
You can of course define an array to hold data that is of a particular type like an array of Strings to hold customer names or an array of Doubles to hold customer sales, but what do you do if you want to coordinate that data? This article describes…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…
Learn the basics of inputting and editing your text components in Prezi. We will cover how to set styles, position, and group your text components. In your Prezi editor, click anywhere on the canvas to add text: A flashing cursor informs you that yo…
Suggested Courses

719 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question