⑴ 用C語言實現,簡單的告訴我,怎麼讀取當前目錄下的一個jpg圖像,並且顯示出來
FILE *fp;
if((fp = fopen("sb.jpg","r") == NULL)) {
printf("\nerror");
exit(0);
}
以上僅僅能打開jpg文件,想要顯示需要窗口編程。win32或者MFC來實現。
⑵ mfc編程如何設置用圖片控制項動態顯示jpg圖像。
jpg顯示的步驟:
1。打開圖片控制項的繪圖DC。2。使用OleLoadPicture函數讀取jpg圖像到內存中。(導入olepro32.dll)
3。向DC上繪制圖像
示例如下:
CDC*pDC=GetDlgItem(IDC_STATIC_IMG)->GetDC();//獲取控制項DC
HDChDC=(HDC)pDC;
HANDLEhFile=CreateFile(szImagePath,GENERIC_READ,FILE_SHARE_READ,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);//從指定的路徑szImagePath中讀取文件句柄
DWORDdwFileSize=GetFileSize(hFile,NULL);//獲得圖片文件的大小,用來分配全局內存
HGLOBALhImageMemory=GlobalAlloc(GMEM_MOVEABLE,dwFileSize);//給圖片分配全局內存
void*pImageMemory=GlobalLock(hImageMemory);//鎖定內存
DWORDdwReadedSize;//保存實際讀取的文件大小
ReadFile(hFile,pImageMemory,dwFileSize,&dwReadedSize,NULL);//讀取圖片到全局內存當中
GlobalUnlock(hImageMemory);//解鎖內存
CloseHandle(hFile);//關閉文件句柄
IStream*pIStream;//創建一個IStream介面指針,用來保存圖片流
IPicture*pIPicture;//創建一個IPicture介面指針,表示圖片對象
CreateStreamOnHGlobal(hImageMemory,false,&pIStream);//用全局內存初使化IStream介面指針
OleLoadPicture(pIStream,0,false,IID_IPicture,(LPVOID*)&(pIPicture));//用OleLoadPicture獲得IPicture介面指針
//得到IPictureCOM介面對象後,你就可以進行獲得圖片信息、顯示圖片等操作
OLE_XSIZE_HIMETRIChmWidth;
OLE_YSIZE_HIMETRIChmHeight;
pIPicture->get_Width(&hmWidth);//用介面方法獲得圖片的寬和高
pIPicture->get_Height(&hmHeight);
pIPicture->Render(hDC,0,0,100,100,0,hmHeight,hmWidth,-hmHeight,NULL);//在指定的DC上繪出圖片
GlobalFree(hImageMemory);//釋放全局內存
pIStream->Release();//釋放pIStream
pIPicture->Release();//釋放pIPicture
ReleaseDC(pDC);
⑶ C#編程 用畫圖板依次打開指定文件夾中的jpg圖片並保存
第一步,用Directory對象得到目錄下所有的jpg圖片到數組中
第二步,循環遍歷這個數組,用Process對象調用mapaint打開圖片
第三步,保存?這個地方不清楚怎麼調用mapaint的菜單,發送鍵盤按鍵?還是提供有介面,期待高手
⑷ JPEG圖像編碼,要求:輸入BMP圖像,輸出JPG壓縮圖像。(用Matlab編程實現!)
輸入
y=imread('lena_2561.bmp');
顯示
imshow(y),
輸出
imwrite(y,'y1.jpg');
壓縮有好多方法的,小波分析等!
⑸ 「JPEG圖像編碼,要求:輸入BMP圖像,輸出JPG壓縮圖像。(用Matlab編程實現!
x=imread('yourfile.bmp');%讀入BMP
imwrite(x,'yourfile.jpg');%輸出JPG
⑹ 如何編程實現將屏幕自動保存為JPG格式文件
將屏幕上的圖片保存為JPG格式文件簡單:按截取圖片軟體指定熱鍵,選取.jpg文件格式保存。
粘貼板上的BMP格式圖片先粘到Photoshop中,選取.jpg文件格式保存。
⑺ C語言實現把一個JPG圖片分解為兩個圖片,急!!謝謝
麻煩。。無聊。。
先找著jpg文件頭格式。。
C打開文件。。找到數據部分。。
新建文件。。寫入。。保存。。
綜上所述:無聊+麻煩。
⑻ 如何編程實現在jpg圖片上添加文字
php調用gd庫函數可以的!
另外,如果是網頁上,用css定義一個div的背景圖片為該圖片,然後在div里輸出你要添加的文字,不過這種不生成新圖片的,只是看起來是而已!
⑼ 誰知道用編程如何實現JPG文件的壓縮,最好是能在不改變大小的情況下,對JPG文件進行壓縮
下載使用「JPEG optimizer 超級圖片壓縮器」軟體吧。能對JPG壓縮50%而不損失畫質,自定壓縮比,能即時顯現壓縮後的圖片,讓你比較差異,效果相當不錯,操作簡單,不用懂得PS技術就可以壓縮出非常好的圖像
⑽ 如何用VC++編程實現兩張JPG圖片的疊加
如果是VC6,你需要安裝GDI+的開發包。雖然可以通過直接調用GDIPLUS.DLL里的函數來實現(不需要裝開發包),但是很麻煩
1、用GDI+的Image對象載入大圖JPG
2、用GDI+的Image對象載入小圖的JPG
3、創建Graphics對象,繪制目標是大圖的Image對象
4、用Graphics的DrawImage方法將小圖繪制上去
5、調用Image的Save方法將處理好的圖片保存到文件
注意點:
1、GDI+在使用之前需要調用GdiplusStartup函數來進行初始化工作
2、Graphics對象繪制完成之後調用Flush方法來確保所有操作已經確實反映到了圖片上
3、Save方法需要提供編碼器ID,獲取編碼器ID的方法可以在MSDN上Save方法的說明裡的示例代碼內查到(有原原本本的代碼可以復制來用)