⑴ C語言如何引用背景圖片
1、C語言寫控制台程序是無法加圖片的,只能用命令行輸出,最多就是設置下背景和字體,顏色之類的。如果開發API窗口程序,完全依賴於操作系統的函數庫。C語言本身並不提供這類函數。
2、下面是windows系統下實現的函數代碼,第一個參數是圖片的存放的位置,第二個參數是窗口句柄。
HRESULTShowPic(char*lpstrFile,HWNDhWnd)
{
HDChDC_Temp=GetDC(hWnd);
IPicture*pPic;
IStream*pStm;
BOOLbResult;
HANDLEhFile=NULL;
DWORDdwFileSize,dwByteRead;
//打開圖形文件
hFile=CreateFile(lpstrFile,GENERIC_READ,
FILE_SHARE_READ,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
if(hFile!=INVALID_HANDLE_VALUE)
{
dwFileSize=GetFileSize(hFile,NULL);//獲取文件位元組數
if(dwFileSize==0xFFFFFFFF)
returnE_FAIL;
}
else
{
returnE_FAIL;
}
//分配全局存儲空間
HGLOBALhGlobal=GlobalAlloc(GMEM_MOVEABLE,dwFileSize);
LPVOIDpvData=NULL;
if(hGlobal==NULL)
returnE_FAIL;
if((pvData=GlobalLock(hGlobal))==NULL)//鎖定分配內存塊
returnE_FAIL;
ReadFile(hFile,pvData,dwFileSize,&dwByteRead,NULL);//把文件讀入內存緩沖區
GlobalUnlock(hGlobal);
CreateStreamOnHGlobal(hGlobal,TRUE,&pStm);
//裝入圖形文件
bResult=OleLoadPicture(pStm,dwFileSize,TRUE,IID_IPicture,(LPVOID*)&pPic);
if(FAILED(bResult))
returnE_FAIL;
OLE_XSIZE_HIMETRIChmWidth;//圖片的真實寬度,單位為英寸
OLE_YSIZE_HIMETRIChmHeight;//圖片的真實高度,單位為英寸
pPic->get_Width(&hmWidth);
pPic->get_Height(&hmHeight);
//轉換hmWidth和hmHeight為pixels距離,1英寸=25.4毫米
intnWidth=MulDiv(hmWidth,GetDeviceCaps(hDC_Temp,LOGPIXELSX),2540);
intnHeight=MulDiv(hmHeight,GetDeviceCaps(hDC_Temp,LOGPIXELSY),2540);
//將圖形輸出到屏幕上(有點像BitBlt)
bResult=pPic->Render(hDC_Temp,0,0,nWidth,nHeight,0,hmHeight,hmWidth,-hmHeight,NULL);
hmHeight,NULL);
pPic->Release();
CloseHandle(hFile);//關閉打開的文件
if(SUCCEEDED(bResult))
{
returnS_OK;
}
else
{
returnE_FAIL;
}
}
⑵ c語言中如何自定義背景圖片,用什麼函數呀,舉個例子……
c語言中沒有定義這樣的函數,你只有將相關代碼嵌套在畫圖的函數中,
通過調用來實現它……
⑶ MFC的問題,關於OnChar()函數和背景圖片設置
把::OnDraw的東西弄到::OnEraseBkgnd裡面就可以了
⑷ 能舉例在c++中添加一張背景圖片嗎
在onpaint()中
if(IsIconic())
{
.......//系統代碼,不修改
}
else//在else中增加如下代碼,對JPG,BMP,PNG(背景透明圖片)有效
{
CRectrc;
GetClientRect(rc);
CImageimage;
image.Load(_T("c:\1.jpg"));//圖片文件路徑
if(image.GetBPP()==32)
{
inti;intj;
for(i=0;i<image.GetWidth();i++)
{
for(j=0;j<image.GetHeight();j++)
{
byte*pByte=(byte*)image.GetPixelAddress(i,j);
pByte[0]=pByte[0]*pByte[3]/255;
pByte[1]=pByte[1]*pByte[3]/255;
pByte[2]=pByte[2]*pByte[3]/255;
}
}
}
image.Draw(GetDC()->m_hDC,rc);
}
(4)函數背景圖片擴展閱讀
C++插入圖片,音樂,文字
#include<graphics.h>//畫布上的一系列操作
#include<time.h>//有個各種時間函數
#include<conio.h>//按鍵操作
#include<mmSystem.h>//播放音樂
#pragmacomment(lib,"winmm.lib")//導入winmm.lib庫
intmain()
{
/**圖片**/
initgraph(800,600);//展開畫布
IMAGEimg;//類似於"inta",此是定義一個圖片變數
loadimage(&img,"最愛頭像.jpg",800,600);//載入圖片
/**把圖片放入windows資源管理器打開的文件夾時不需要寫地址**/
/**寫地址時''都要寫成'\'**/
putimage(0,0,&img);//(x,y,取地址)
/**音樂**/
mciSendString(TEXT("openMonBet.mp3aliasmusic"),0,0,0);
//open-操作方式,alias--定義了該操作的別名為music
mciSendString(TEXT("playmusic"),0,0,0);
/**文字**/
setbkmode(0);//去掉文字背景
settextcolor(YELLOW);//設置文字顏色
settextstyle(40,0,TEXT("楷體"));//(高,寬<0為自適應>,字體)
outtextxy(200,150,TEXT("最帥的男人"));//(x,y,內容)
//設置炫彩文字****************---就是顏色的循環
srand((unsigned)time(NULL));
while(!kbhit())//檢測按鍵函數,輸入按鍵返回1,不輸返回0,我們這里要相反的
{
setcolor(RGB(rand()%256,rand()%256,rand()%256));
//RGB是三原色紅,綠,藍,顏色范圍是0~255
outtextxy(200,250,"去掉TEXT就是這樣哦");
Sleep(100);//暫停100ms
}
while(1);
return0;
}
⑸ libxl中有沒有添加背景圖片的函數
如果想在Excel中加入背景圖片,可以選擇菜單--插入--背景
⑹ 用javascript 函數的參數 替換div的背景圖片
light.style.backgroundImage="url(pictureurl)";
改為:
light.style.backgroundImage="url("+pictureurl+")";
試試吧!
⑺ java中怎樣在構造函數中插入背景圖片
SWING?
這樣子。
class Test extend JFrame{
//構造方法
public Test(){
paint();
}
//加背景方法
public void pain(){
}
public static void main(String[] args){
new Test();
//這樣就可以了
}
}
⑻ 如何在C語言中添加背景圖片
C語言寫控制台程序是無法加圖片的,只能用命令行輸出,最多就是設置下背景和字體,顏色之類的。如果開發API窗口程序,完全依賴於操作系統的函數庫。C語言本身並不提供這類函數。
下面是windows系統下實現的函數代碼,第一個參數是圖片的存放的位置,第二個參數是窗口句柄。
HRESULTShowPic(char*lpstrFile,HWNDhWnd)
{
HDChDC_Temp=GetDC(hWnd);
IPicture*pPic;
IStream*pStm;
BOOLbResult;
HANDLEhFile=NULL;
DWORDdwFileSize,dwByteRead;
//打開圖形文件
hFile=CreateFile(lpstrFile,GENERIC_READ,
FILE_SHARE_READ,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
if(hFile!=INVALID_HANDLE_VALUE)
{
dwFileSize=GetFileSize(hFile,NULL);//獲取文件位元組數
if(dwFileSize==0xFFFFFFFF)
returnE_FAIL;
}
else
{
returnE_FAIL;
}
//分配全局存儲空間
HGLOBALhGlobal=GlobalAlloc(GMEM_MOVEABLE,dwFileSize);
LPVOIDpvData=NULL;
if(hGlobal==NULL)
returnE_FAIL;
if((pvData=GlobalLock(hGlobal))==NULL)//鎖定分配內存塊
returnE_FAIL;
ReadFile(hFile,pvData,dwFileSize,&dwByteRead,NULL);//把文件讀入內存緩沖區
GlobalUnlock(hGlobal);
CreateStreamOnHGlobal(hGlobal,TRUE,&pStm);
//裝入圖形文件
bResult=OleLoadPicture(pStm,dwFileSize,TRUE,IID_IPicture,(LPVOID*)&pPic);
if(FAILED(bResult))
returnE_FAIL;
OLE_XSIZE_HIMETRIChmWidth;//圖片的真實寬度,單位為英寸
OLE_YSIZE_HIMETRIChmHeight;//圖片的真實高度,單位為英寸
pPic->get_Width(&hmWidth);
pPic->get_Height(&hmHeight);
//轉換hmWidth和hmHeight為pixels距離,1英寸=25.4毫米
intnWidth=MulDiv(hmWidth,GetDeviceCaps(hDC_Temp,LOGPIXELSX),2540);
intnHeight=MulDiv(hmHeight,GetDeviceCaps(hDC_Temp,LOGPIXELSY),2540);
//將圖形輸出到屏幕上(有點像BitBlt)
bResult=pPic->Render(hDC_Temp,0,0,nWidth,nHeight,0,hmHeight,hmWidth,-hmHeight,NULL);
hmHeight,NULL);
pPic->Release();
CloseHandle(hFile);//關閉打開的文件
if(SUCCEEDED(bResult))
{
returnS_OK;
}
else
{
returnE_FAIL;
}
}
⑼ 在javascript中 怎樣調用函數 轉換不同的背景圖片
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gbk" />
<meta name="Keywords" content=""/>
<meta name="Description" content=""/>
<title>背景圖片變換效果</title>
<script type="text/javascript">
function chgBgImg(id, src){
document.getElementById(id).style.backgroundImage = "url(" + src + ")";
}
</script>
<style type="text/css">
#img{width:110px;height:82px;margin:50px auto;border:4px solid #ccc;}
</style>
</head>
<body>
<div id="img"></div>
<input type="button" onclick="chgBgImg('img', 'http://media2.ihompy.com/200908/23/11011059381_12510156189tmq.jpg');" value="第1張"/>
<input type="button" onclick="chgBgImg('img', 'http://media2.ihompy.com/200908/23/11011059381_1251015601jaa5.jpg');" value="第2張"/>
<input type="button" onclick="chgBgImg('img', 'http://media2.ihompy.com/200908/23/11011059381_1251015565odgs.jpg');" value="第3張"/>
</body>
</html>
⑽ 關於圖片縮放的問題,我封了個函數,然後要調用兩次,背景圖一樣,裡面合成的圖片內容大小不一樣
如果要按比例綻放的話,選中圖像以後按Ctrl+T,然後按住shift綻放就行;
如果你要縮放多少倍的話,你可以選中圖像以後按Ctrl+T,然後任務欄上面會出現一排東西(具體那些東西叫啥,我也不知道……),然後你順著那排往後走,剛開始的「X Y 」是移動用的!然後按往後走就是「W H 」,這個就是縮放用的!點一下W和H中間的鏈接符號,然後輸入你想要縮放的數值!這樣就ok啦!希望可以幫助到你!