Trang 1 / 4 1234 LastLast
Hiển thị kết quả từ 1 đến 10 / 40
  1. #1
    Tham gia
    18-09-2002
    Location
    Ha Noi
    Bài viết
    1,311
    Like
    0
    Thanked 13 Times in 10 Posts

    [TUTOUR] Cấu trúc file BMP

    Cái này chắc là nhiều người biết lắm nhưng cứ post lên đây mọi người xem thử nghen.
    *) Một file *.BMP được chia làm 3 phần chính:
    BitmapHeader, BitmapInfor và BitmapData.
    Đây là chi tiết
    BitmapHeader
    Bite # Ý nghĩa Chi tiết
    1-2 Nhận dạng file Kiểu arrayp1..2] of char:chứa ký tự BM
    3-6 Kích thướ file Kiểu Longint: tính bằng byte
    7-10 Reserve nt : tôi chưa biết(có lẽ là tên file thừa)
    11-14 Byte bắt đầu Kiểu longint, vị trí byte bắt đầu vùng
    vùng data data kể từ đầu file

    BitmapInfor
    1-4 Số byte trong vùng info Kiểu Longint, hiện tại có
    giá trị 40
    5-8 Chiều rộng bitmap Kiểu longint tính bằng pixel
    9-12 Chiều cao bitmap Kiểu longint tính bằng pixel
    13-14 Số Planes màu Kiểu Word số bảng màu
    15-16 Số bits cho một pixel Kiểu Word, các giá trị có
    thể có 1: Đen/trắng, 4:16
    màu, 8:256 màu, 24: 24bit
    màu
    17-20 Kiểu nén dữ liệu Kiểu Longint có giá trị là
    0: Không nén
    1: Nén runlength+8bit/pixel
    2: Nén runlength+4bit/pixel
    21-24 Kích thước ảnh Kiểu Longint, bằng số byte
    của ảnh
    25-28 Độ phân giải ngang Kiểu Longint, tính bằng pixel
    29-32 Độ phân giải dọc Kiểu Longint, tính bằng pixel
    33-36 Số màu được sử dụng Kiểu Longint
    trong ảnh
    37-40 Số màu được sử dụng Kiểu Longint
    khi hiện ảnh
    Bitmap palette
    Tiếp theo sau vùng info là palette màu của BMP, gồm nhiều bộ có kích thước bằng 4 byte xếp liền nhau theo cấu trúc Blue-Green-Red và một Byte dành riêng cho Itensity. Kích thước của vùng Palette màu bằng 4*số màu của ảnh. Vì Palette màu của màn hình có cấu tạo theo thứ tự Red-Green-Blue, nên khi đọc palette màu của ảnh BMP vào ta phải chuyển đổi lại cho phù hợp. Số màu của ảnh được biết dựa trên số bít cho 1 pixel cụ thể là:
    8.bits/pixel: ảnh 256 màu, 4bits/pixel: ảnh 16 màu, 24bits/pixel ảnh 24 bít màu
    BitmapData:
    Phần này kề tiếp ngay sau Palette màu của BMP. Đây là phần chứa các giá trị màu của các điểm ảnh trong BMP. Các điểm ảnh được lưu theo thứ tự từ trái qua phải trên một dòng và các dòng lại được lưu theo thứ tự dưới lên trên. Mỗi Byte trong vùng BitmapData biểu diễn 1 hoặc nhiều điểm ảnh tùy theo số bits cho một pixel.
    *) Thuật toán hiển ảnh BMP gồm các bước sau
    Đọc BitmapHeader để nhận dạng file có đúng là BMP thật không (hai byte đầu tiên là "BM") và xác định Byte bắt đầu vùng Bitmap Data
    Đọc BitmapInfo để lấy các thông tin cơ bản về ảnh như chiểu rộng, chiều cao, số Bits cho 1 pixel từ đó suy ra số màu và kích thước palette màu.
    Đọc Palette màu và chuyển đổi palette màu từ dạng Blue-Green-Red-Reverse sang Ren-Green-Blue
    Đọc phần Bitmap Data, tính toán và vẽ từng điểm ra màn hình theo thứ tự từ trái qua phải và từ dưới lên trên.
    Phân chương trình hẹn mọi người dịp khác bây giờ mỏi tay lắm rồi hìhì!!!!!
    Quote Quote

  2. Thành viên Like bài viết này:


  3. #2
    Tham gia
    19-07-2003
    Location
    Biên Hòa
    Bài viết
    499
    Like
    0
    Thanked 1 Time in 1 Post
    Có cái chương trình copy lên mà cũng ngại!!! Nhưng mà chọn font nhỏ nhỏ chút thôi.

    Cái cấu trúc trên dành cho .bmp không nén thì phải.

  4. Thành viên Like bài viết này:


  5. #3
    Tham gia
    03-12-2003
    Bài viết
    89
    Like
    0
    Thanked 0 Times in 0 Posts
    bạn gửi chương trình lên đi để mọi người còn xem. chứ đọc không thì chả làm được

  6. #4
    Tham gia
    09-11-2002
    Location
    nơi mà tìm tình iu khó wá
    Bài viết
    712
    Like
    0
    Thanked 0 Times in 0 Posts
    có ai giới thiệu cấu trúc gif89a ko?

  7. #5
    Tham gia
    18-09-2002
    Location
    Ha Noi
    Bài viết
    1,311
    Like
    0
    Thanked 13 Times in 10 Posts
    mình cũng rất muốn gửi lên nhưng update lên mãi mà ko được để bảo vikhoa cho phép upload đã

  8. #6
    Tham gia
    06-12-2002
    Location
    Tp HCM
    Bài viết
    162
    Like
    0
    Thanked 0 Times in 0 Posts
    Chào các bạn, các bạn tham khảo tại đây thử xem sao: www.wotsit.org Cứ thử một lần cho biết đi

  9. #7
    Tham gia
    18-09-2002
    Location
    Ha Noi
    Bài viết
    1,311
    Like
    0
    Thanked 13 Times in 10 Posts
    cấu trúc của file gif chẳng khác gì file BMP đâu duclee ạ! Nếu tôi nhớ không chính xác lắm thì gif là một dạng nén của BMP theo thuật toán nào đó (hình như là Huffman?????)

  10. #8
    Tham gia
    09-11-2002
    Location
    nơi mà tìm tình iu khó wá
    Bài viết
    712
    Like
    0
    Thanked 0 Times in 0 Posts
    ko, nó theo nén LZW
    tui hỏi tử xem các bác có tài liệu TV ko í mà

  11. #9
    Tham gia
    20-12-2003
    Location
    Đà Nẵng
    Bài viết
    23
    Like
    0
    Thanked 0 Times in 0 Posts
    hì hì , để rảnh rảnh tớ post cái thuật triển khai gif động cho ... )
    về nhà vít đã ...

  12. #10
    Tham gia
    09-11-2002
    Location
    nơi mà tìm tình iu khó wá
    Bài viết
    712
    Like
    0
    Thanked 0 Times in 0 Posts
    yes, cố lên, tui chờ

Trang 1 / 4 1234 LastLast

Bookmarks

Quy định

  • Bạn không thể tạo chủ đề mới
  • Bạn không thể trả lời bài viết
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình
  •