欧美大屁股bbbbxxxx,狼人大香伊蕉国产www亚洲,男ji大巴进入女人的视频小说,男人把ji大巴放进女人免费视频,免费情侣作爱视频

歡迎來到入門教程網(wǎng)!

C語言

當(dāng)前位置:主頁 > 軟件編程 > C語言 >

C語言實(shí)現(xiàn)對bmp格式圖片打碼

來源:本站原創(chuàng)|時(shí)間:2020-01-10|欄目:C語言|點(diǎn)擊: 次

相信大家看到上面的標(biāo)題一定覺的是上面高大上的技術(shù),其實(shí)很簡單。
前提準(zhǔn)備:一張bmp格式的圖片,如果沒有的話,可以用Windows的畫圖軟件來才裁剪。設(shè)置像素大小為(1024,768);
程序原理:將圖片讀入數(shù)組,然后給數(shù)組的指定位置存入隨機(jī)數(shù),最后再寫入文件,這樣圖片就相應(yīng)的位置就被置為亂碼了。

源代碼:

<span style="font-size:14px;">#include<stdio.h> 
#include<stdlib.h> 
#include<string.h> 
#include<unistd.h> 
#include<errno.h> 
#include<sys/types.h> 
#include<sys/stat.h> 
#include<fcntl.h> 
 
 
#define WIDTH  1024 
#define HEIGHT 768 
#define BPP 24 
#define BYTES  (BPP / 8) 
#define HEADER 54  
 
int main(int argc,char* argv[]) 
{ 
  int xoff,yoff,width,height; 
  int fd; 
  int i,j,k; 
  int offset; 
  unsigned char pix[BYTES];   
 
 
   
 
 
  if(argc!=6) 
  { 
    printf("Usage: %s filename xoff yoff width height\n",argv[0]); 
    exit(EXIT_FAILURE); 
  } 
   
  xoff=atoi(argv[2]); 
  yoff=atoi(argv[3]); 
  width=atoi(argv[4]); 
  height=atoi(argv[5]); 
 
 
  xoff=HEIGHT -xoff; 
  yoff=WIDTH - yoff; 
   
   
 
 
  fd=open(argv[1],O_WRONLY); 
  if(fd==-1) 
  { 
    perror("open"); 
    exit(EXIT_FAILURE); 
  } 
 
 
  for(i=xoff;i > xoff - height;i--) 
  { 
    for(j=yoff;j > yoff - width;j--) 
    { 
      offset = HEADER + (i * WIDTH -j )*BYTES; 
      lseek(fd, offset, SEEK_SET); 
      for(k=0; k<BYTES; k++) 
      { 
        pix[j] = random(); 
        write(fd ,&pix[j] ,1); 
      } 
    } 
  } 
  close(fd); 
  return 0; 
}</span>

 輸入格式:
參數(shù)解釋: banner.bmp 是圖片文件的文件名,100 100是打碼的位置,500 500 是打碼的大小。(注:源程序和文件名在同一文件夾下)

原始圖片如下:

執(zhí)行源程序過后,圖片如下:

以上就是本文的全部內(nèi)容,希望對大家學(xué)習(xí)C語言程序設(shè)計(jì)有所幫助。

上一篇:實(shí)例講解C++編程中l(wèi)ambda表達(dá)式的使用

欄    目:C語言

下一篇:結(jié)合C++11新特性來學(xué)習(xí)C++中l(wèi)ambda表達(dá)式的用法

本文標(biāo)題:C語言實(shí)現(xiàn)對bmp格式圖片打碼

本文地址:http://mengdiqiu.com.cn/a1/Cyuyan/2524.html

網(wǎng)頁制作CMS教程網(wǎng)絡(luò)編程軟件編程腳本語言數(shù)據(jù)庫服務(wù)器

如果侵犯了您的權(quán)利,請與我們聯(lián)系,我們將在24小時(shí)內(nèi)進(jìn)行處理、任何非本站因素導(dǎo)致的法律后果,本站均不負(fù)任何責(zé)任。

聯(lián)系QQ:835971066 | 郵箱:835971066#qq.com(#換成@)

Copyright © 2002-2020 腳本教程網(wǎng) 版權(quán)所有