How do I get Access to recognize a bmp created in Photoshop?

G

Guest

I have a jpg photograph that I converted to bmp in PHotoShop. Access will not
recognize the bmp. What do I need to do to make this work - without writing
multiple pages of code...
 
B

bob

In what situation does Access not 'recognize' the file; in an Image Control? In a bound OLE Frame, as
a form or report background? something else?

Is there any reason for discarding the compression and making the file many times larger? (i.e. why not
use the jpg?)
 
G

Guest

I'm new to using Access and according to what I've been reading, in order to
use a photograph or picture in a form or report it has to be in the bmp
format...or you have to have Microsoft PHoto editor installed (which I do
not) or you have to use VBA code. Your response implies that I do not have to
convert my jpg images to bmp. Is there a work around that I'm missing?
 
B

bob

If you use a Bound OLE Frame you can use JPEG (with Photo Editor) or bmp format, but either way this usually
involves storing uncompressed images in the database (Photo Editor stores them uncompressed, even if you
insert JPEG). Consequently the database swells rapidly towards the maximum Access file size. In a recent
test we loaded just 32 MB of fairly low-res JPEG’s this way (around 150 images) and that was enough to
hit the 2GB size limit. Even when Linking (which you might expect to only ‘Link’ to the file) the database
grew to 1300 MB.

You can display JPEG files directly in forms and reports by using the Access Image Control/Frame. This
does require just a few lines of code, but gives you virtually limitless capacity, and without storing
uncompressed images either in the database or on disk.

It is also possible to store compressed images in the database itself without the OLE problems and overhead,
but that either requires a lot of code (and a somewhat performance-sapping ‘read-from-database then save-to-temporary-file
then load-into-image-control routine) or 3rd party tools.

Therefore the best approach is probably the second option, i.e. displaying the JPEG image files directly
in the Access Image Control. You just need to have the filename stored in your table (or be able to generate
the filename from other fields).

The image control is not without its own drawbacks, and you’ll probably want to implement the registry
fix to prevent the ‘Loading Image’ dialog appearing between records (and the corresponding crash when you
scroll too quickly through records). To do this set the following registry keys:

HKEY_LOCAL_MACHINE\Software\Microsoft\ Shared Tools\Graphics Filters\Import\JPEG\Options

HKEY_CURRENT_USER\Software\Microsoft\ Shared Tools\Graphics Filters\Import\JPEG\Options

In both the above keys set the 'ShowProgressDialog' value to 'No', and note that the 'No' is case-sensitive.
 
G

Guest

thanks - I'll try that.

bob said:
If you use a Bound OLE Frame you can use JPEG (with Photo Editor) or bmp format, but either way this usually
involves storing uncompressed images in the database (Photo Editor stores them uncompressed, even if you
insert JPEG). Consequently the database swells rapidly towards the maximum Access file size. In a recent
test we loaded just 32 MB of fairly low-res JPEG’s this way (around 150 images) and that was enough to
hit the 2GB size limit. Even when Linking (which you might expect to only ‘Link’ to the file) the database
grew to 1300 MB.

You can display JPEG files directly in forms and reports by using the Access Image Control/Frame. This
does require just a few lines of code, but gives you virtually limitless capacity, and without storing
uncompressed images either in the database or on disk.

It is also possible to store compressed images in the database itself without the OLE problems and overhead,
but that either requires a lot of code (and a somewhat performance-sapping ‘read-from-database then save-to-temporary-file
then load-into-image-control routine) or 3rd party tools.

Therefore the best approach is probably the second option, i.e. displaying the JPEG image files directly
in the Access Image Control. You just need to have the filename stored in your table (or be able to generate
the filename from other fields).

The image control is not without its own drawbacks, and you’ll probably want to implement the registry
fix to prevent the ‘Loading Image’ dialog appearing between records (and the corresponding crash when you
scroll too quickly through records). To do this set the following registry keys:

HKEY_LOCAL_MACHINE\Software\Microsoft\ Shared Tools\Graphics Filters\Import\JPEG\Options

HKEY_CURRENT_USER\Software\Microsoft\ Shared Tools\Graphics Filters\Import\JPEG\Options

In both the above keys set the 'ShowProgressDialog' value to 'No', and note that the 'No' is case-sensitive.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top