Article View: pl.comp.lang.pascal
Article #186Re: Jak odczytac BMP, GIF lub JPG
From: Marcin 'Qrczak' Kowalczyk
Date: Thu, 24 Dec 1998 10:57
Date: Thu, 24 Dec 1998 10:57
39 lines
2750 bytes
2750 bytes
On Sat, 19 Dec 1998, Marcin Komor wrote:
> Wiem ze BMP jest najprosciej, ale nie znam budowy ani BMP
+-------------------------+
| KRÓTKI OPIS FORMATU BMP |
+-------------------------+
Nagłówek pliku:
WLK NAZWA POLA OPIS
2 bfType Sygnatura pliku BMP: 4D42h ("BM")
4 bfSize Długość całego pliku
2 bfRes1 Olać, pisać 0
2 bfRes2 Olać, pisać 0
4 bfOffBits Pozycja rysunku w pliku (= Dług.nagłówka + Dług.palety)
4 biSize Długość stąd do końca nagłówka: 40, czasem mniej
4 biWidth Szerokość obrazka
4 biHeight Wysokość obrazka
2 biPlanes Musi być 1
2 biBitCount Liczba bitów na piksel (1, 4, 8, 24)
4 biCompression Algorytm kompresji: 0 = żaden, 1,2 = RLE
4 biSizeImage Wielkość samego rysunku
4 biXPelsPerMeter Rozdzielczość pozioma
4 biYPelsPerMeter Rozdzielczość pionowa
4 biClrUsed Liczba kolorów w palecie, 0 znaczy 2 ** biBitCount
4 biClrImportant Olać, pisać 0
Paleta. Każdy kolor zajmuje 4 bajty: B, G, R, ostatni nieużywany.
Oczywiście nie ma palety jeśli biBitCount = 24.
Rysunek. Linie od dołu do góry. Jeśli rysunek nie jest skompresowany, to
każda linia zajmuje (biWidth * biBitCount + 31) shr 3 and not 3 bajtów
(wyrównywanie do dwordów). Bity są używane poczynając od najstarszego.
Rysunek TrueColor: kolejność B, G, R (trzy bajty).
--
__("< Marcin Kowalczyk * qrczak@knm.org.pl http://kki.net.pl/qrczak/
\__/ GCS/M d- s+:-- a21 C+++>+++$ UL++>++++$ P+++ L++>++++$ E->++
^^ W++ N+++ o? K? w(---) O? M- V? PS-- PE++ Y? PGP->+ t
QRCZAK 5? X- R tv-- b+>++ DI D- G+ e>++++ h! r--%>++ y-
Technical Details
Message-ID:
<Pine.LNX.4.03.9812241154550.10830-100000@qrnik.knm.org.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!agh.edu.pl!polsl.gliwice.pl!orion.cst.tpsa.pl!news.tpnet.pl!not-for-mailReferences:
<75g8le$7i7$1@helios.man.lublin.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!agh.edu.pl!polsl.gliwice.pl!orion.cst.tpsa.pl!news.tpnet.pl!not-for-mail From: Marcin 'Qrczak' Kowalczyk <qrczak@knm.org.pl> Newsgroups: pl.comp.lang.pascal Subject: Re: Jak odczytac BMP, GIF lub JPG Organization: Klub Nieszkodliwych Manjaków Lines: 40 Message-ID: <Pine.LNX.4.03.9812241154550.10830-100000@qrnik.knm.org.pl> References: <75g8le$7i7$1@helios.man.lublin.pl> Mime-Version: 1.0 In-Reply-To: <75g8le$7i7$1@helios.man.lublin.pl> Date: Thu, 24 Dec 1998 10:57:57 GMT NNTP-Posting-Host: 194.204.131.177 X-Complaints-To: abuse@tpsa.pl X-Trace: news.tpnet.pl 914497077 194.204.131.177 (Thu, 24 Dec 1998 11:57:57 MET DST) NNTP-Posting-Date: Thu, 24 Dec 1998 11:57:57 MET DST Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit