1. 程式人生 > >讀取bmp圖片的檔案頭,與點陣圖資訊頭

讀取bmp圖片的檔案頭,與點陣圖資訊頭

#define _CRT_SECURE_NO_WARNINGS
#include <string>
#include <Windows.h>


void eee(FILE* fp)
{
    BITMAPFILEHEADER bf = {};
    BITMAPINFOHEADER bi = {};
    fread(&bf, 1, sizeof(bf), fp);
    fread(&bi, 1, sizeof(bi), fp);
    printf("BM %x\t\t-- bfType: 點陣圖檔案的型別,必須為\n", bf.bfType);
    printf
("%d\t\t-- bfSize: 點陣圖檔案的大小,以位元組為單位\n", bf.bfSize); printf("%d\t\t--bfReserved1: 點陣圖檔案保留字,必須為0\n", bf.bfReserved1); printf("%d\t\t-- bfReserved2:點陣圖檔案保留字,必須為0\n", bf.bfReserved2); printf("%d\t\t-- bfOffBits: 點陣圖資料的起始位置,以相對於點陣圖檔案頭的偏移量表示,以位元組為單位\n", bf.bfOffBits); printf("%d\t\t-- biSize:本結構所佔用位元組數\n"
, bi.biSize); printf("%d\t\t-- biWidth: 點陣圖的寬度,以畫素為單位\n", bi.biWidth); printf("%d\t\t--biHeight\n: ", bi.biHeight); printf("%d\t\t--biPlanes\n: ", bi.biPlanes); printf("%d\t\t--biBitCount: 每個畫素所需的位數,必須是1(雙色), 4(16色),8(256色)或24(真彩色)之一\n", bi.biBitCount); printf("%d\t\t-- biCompression: 點陣圖壓縮型別,必須是 0(不壓縮), 1(BI_RLE8壓縮型別)或2(BI_RLE4壓縮型別)之一\n"
, bi.biCompression); printf("%d\t\t-- biSizeImage: 點陣圖的大小,以位元組為單位\n", bi.biSizeImage); printf("%d\t\t--biXPelsPerMeter: 點陣圖水平解析度,每米畫素數\n", bi.biXPelsPerMeter); printf("%d\t\t-- biYPelsPerMeter: 點陣圖垂直解析度,每米畫素數\n", bi.biYPelsPerMeter); printf("%d\t\t--biClrUsed: 點陣圖實際使用的顏色表中的顏色數\n", bi.biClrUsed); printf("%d\t\t-- biClrImportant: 點陣圖顯示過程中重要的顏色數\n", bi.biClrImportant); } void main(int argc, char* argv[]) { /*const char adc[]="C:\\Users\\mbdn\\Desktop\\asc.bmp";*/ FILE* fp = fopen(argv[1], "r+"); eee(fp); getchar(); }

相關推薦

讀取bmp圖片案頭點陣資訊

#define _CRT_SECURE_NO_WARNINGS #include <string> #include <Windows.h> void eee(FILE* fp) { BITMAPFILEHEADER bf =

iOS 通過圖片案頭獲取圖片型別以及圖片尺寸

有時候,我們需要獲取一個圖片的格式和大小,但是卻不想從記憶體中把它的整個檔案從記憶體中讀取出來 因為讀取整個檔案的記憶體耗費還是有些的,所以這麼做通常不可取。 實在需要讀取那也沒辦法。 但是其實是可以從檔案中讀取出來。 原因是圖片檔案的格式標準。 這些標準的存在使得可以只讀

SDL之讀取bmp圖片

SDL的程式碼不難理解,看下這個基本的SDL的流程,就明白了個大概 見程式碼 #include "SDL.h" int main(int argc, char* argv[]) { SDL_Init(SDL_INIT_VIDEO); SDL_Wi

Python Struct讀取bmp圖片資訊

struct的pack函式可以把任意資料型別變成bytes: >>> import struct >>> struct.pack('>I',10240099) b'\x00\[email protected]' pack的第一個引數是處理指

c++讀取bmp圖片詳解

先介紹幾個會用到的函式。 1、FILE * fopen(const char * path,const char * mode); path是字串型別的bmp圖片路徑;mode讀取方式,等下回用到"rb",讀寫開啟一個二進位制檔案,允許讀寫資料,檔案必須存在。 2、int

[swift]讀取svg圖片為UIBezierPath開心做動畫

https://segmentfault.com/a/1190000002580541 更新 給對本文感興趣的朋友們推薦個好東西:paintcode 動畫預覽 先扯淡 最近手癢又想整點動畫玩玩,但是想了幾個主意發現稍微複雜一點的手寫都一定會累爆。這篇文章

bash 指令碼程式設計一 案頭註釋 和 變數

檔案開頭#!/bin/bash#! 是所有linux指令碼檔案開頭的符號, 後面的/bin/bash表示是使用/bin/bash為直譯器來執行本檔案的指令碼執行檔案bash some.sh 或者 sh some.sh 也行,原因是檔案頭已經說明了這是bash直譯器, 所以不會

用bbed修改資料案頭跳過丟失的歸檔

conn lunar/lunar create table t1 tablespace rogertbs as select * from dba_objects;     create table t2 tablespace rogertbs as select * fr

Oracle RedoLog-二進位制格式分析案頭DMLDDL

上篇文章,簡單介紹了 RedoLog 是什麼,以及怎麼從 Oracle Dump 二進位制日誌。接下來,分析下 Redo Log 二進位制檔案的格式,主要包括:**檔案頭**,**重做日誌頭**,**DML-INSERT 操作**,**DDL-CREATE 操作**。 Redo Log 二進位制檔案中,採用

向量點陣的區別

分步閱讀     前幾日有同事總是不時的問我什麼是向量圖什麼是點陣圖及它們之間有什麼區別……今天咱們就共同的看看什麼是向量圖什麼是點陣圖及它們之間的區別。 工具/原料 向量圖素材 點陣圖素材 方法/步驟     1、先從概念說起:向量圖是根據幾何特性來繪製圖形,

[Oracle]B-樹索引點陣索引

11.3 B-樹索引 索引的頂端是根結點,這一結點中包含的是存有指向索引中下一級指標的項。接下來是分枝結點(塊),分枝結點中的記錄(項)存的是指向下一級(塊)的指標。最底層為葉子結點。在葉子結點存有指向表中資料行的索引項。葉子結點被雙向連結串列鏈在一起以方便按索引關鍵字的升序

用Blender匯出模型檔案製作

首先說,個人不會Blender,也不會製圖軟體。這裡都是臨時參考了大蝦們的文章,或視訊,然後自己隨著做出的效果。只是想告訴一些剛剛入門的朋友,這裡大概是怎麼做的。其實小弟我也是在一點點摸索。如果哪裡路走錯了,希望路過的高手們指出。 我把帖圖檔案傳上來了: 結合一下上面的

Visual Studio使用ffmpeg 4.0 讀取視訊檔案寫入到bmp圖片

#include <windows.h> #include <stdlib.h> #ifndef _WINGDI_ #define _WINGDI_ typedef struct tagBITMAPFILEHEADER { WORD bf

從檔案中讀取圖片從資料庫表中讀取圖片評測

一、在 d:\ 下建立 image 資料夾,再放10 張圖片, 名稱從 1.png 到 10.png . 二、先建立新庫 db1, 然後按下面指令碼建立初始環境: USE db1 GO IF OBJECT_ID('t_path') IS NOT NULL DROP TABLE t_pat

點陣讀取PNG轉化為BMP

#include <imaging.h>#include <initguid.h>#include <imgguids.h> unsigned char* LoadBMP(char* file){ FILE *fp = fopen(fil

更改控件中DrawableLeft圖片的大小圖片文字的距離

ddr 參數 lai plain 設置 draw com 獲取圖片 color Drawable drawable=getResources().getDrawable(R.drawable.xx); //獲取圖片   drawable.setBounds(left, to

【assembly】用匯編寫的一個BMP圖片讀取

head aof 分享 first 代碼 sub mov erp ddr ;----------------------------- ;文件滿足256色調的 ;----------------------------- Stack Segment

winfrom保存圖片將文件夾中圖片放入listview撤回操作

pat ctu index update ast height 分享 private 遍歷 之前那些操作完成對圖片的修改之後,就是要保存圖片了。 這裏保存用到一個SaveFileDialog控件,可以獲取用戶選擇的保存文件的路徑。 if (pictureBox1.Ima

RGBColorspace GRAYColorspace 圖片混合後生成的視頻有點問題

logs 使用 img 顯示 用戶 ges pos mpeg col 最近有一個用戶遇到一個情況: 有3張圖片,其中前兩張是 RGBColorspace,最後一張是 GrayColorspace: 生成的視頻,在顯示最後一張圖片的時候,明顯出現奇怪的色彩區域,看下圖:

opencv讀取圖片並轉化為灰度並調整視窗大小

Mat src_color = imread(路徑名);//讀取原彩色圖 int c=src_color.cols/2; int r=src_color.rows/2; Mat src_gray;//彩色影象轉化成灰度圖 cvtColor(src_color, src_gray,