Re: Anyone have any info on the Delphi bitmaps?

Tech-Archive recommends: Repair Windows Errors & Optimize Windows Performance

From: Jim Carlock (anonymous_at_localhost.com)
Date: 11/29/04


Date: Mon, 29 Nov 2004 15:06:23 -0500

Yeah, you are 100% correct. I pulled the BMP format
from wotsit.org and I can see the file identifying itself at
that BM mark as a bitmap. Thanks! That's great!

I kept looking at the first 10 bytes trying to figure out
what those were. It looks like the first two "IL" are
probably the initials of the guy that created that header.
Everything after the 424D is saying Windows Bitmap.

It looks like that dfm file is a Delphi 6 file. I've found
some other .dfm files that appear to be from a previous
version of Delphi (3 or 4, I think). Those olders one
appear to be similar to the VB3 binary files.

You use Delphi at all, Mike?

--
Jim Carlock
Post replies to newsgroup.
"Mike D Sutton" <EDais@mvps.org> wrote in message 
news:OuMBbwg1EHA.2572@tk2msftngp13.phx.gbl...
> .dfm files (delphi I think) tend to hold bitmap information
> about delphi forms (I think). The way the information is
> organized is as follows:
>
>     Bitmap = {
>       494C010110001300040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
>
> If anyone has done any research on these and can offer
> any help as to how it's laid out, that would be great.
>
> It looks like the images in an FF format but I don't know
> if they're organized as 32 bit (4 bytes at a time) or 3 bytes
> at a time (RGB, BGR ?).
>From a quick look it looks like a standard .BMP file with an additional 
header of some description at the start, the Bitmap data
starts "424D" (ASCII "BM") followed by a DWord containing the length of the 
rest of the file (i.e. the amount to read out of the
file.)  Since it's stored as ASCII though then you'll need to step through 
each character and convert it back to hex before writing
it out to a file opened in Binary mode, and at least here it puts in lots of 
hard line breaks and whitespace which you'll need to
cater for.
Hope this helps,
    Mike
 - Microsoft Visual Basic MVP -
E-Mail: EDais@mvps.org
WWW: http://EDais.mvps.org/


Relevant Pages

  • Re: GetDIBits richtig verwenden
    ... > hardware besser als normale GDI funktionen DirectX macht das auch. ... Allerdings selektiere ich das Bitmap nach dem Erzeugen in einen DC, ... Ich bin von Delphi auf C++ umgesprungen, weil die Programme kleiner werden, ... Next by Date: ...
    (microsoft.public.de.vc)
  • Re: How to access all the pixels of a bitmap with C#?
    ... In Delphi, you can use TBitmap.Scanline property to access ... > all the pixels of a bitmap object. ... /// Create a gray gradient bar to represent the colors palette. ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: How to access all the pixels of a bitmap with C#?
    ... Xiaoguang ... In Delphi, you can use TBitmap.Scanline property to ... >> all the pixels of a bitmap object. ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: Loading Stock Bitmaps
    ... left corner of a window - into a bitmap. ... LoadBitmapBynum API call but the few clues I have found in Delphi indicate ... Include the resource file in your form unit. ...
    (borland.public.delphi.language.objectpascal)
  • Re: Is there any example to display the image from the RGB source?Thanks
    ... If it is already in a BMP format, or something that can be easily converted to BMP format, then the simplest approach may be to just write the data to a MemoryStream in the BMP file format, and then use that MemoryStream as the input to Image.FromStream. ... If there's a lot of conversion that you have to do anyway, it might make more sense to create an appropriate byte array, and use the Bitmap.LockBits() method to initialize a Bitmap. ... It just seems to me that if the data basically already looks like a BMP file, the first method could wind up being just a handful of lines of code, justifying the possible extra overhead of going through the whole "copy to stream, init from stream" stuff. ...
    (microsoft.public.dotnet.framework)