asp.net上傳圖片后,要加上水印.比如網址. 文字為白色.但是當背景是白色的時候,水印根本看不到. 到處搜索資料,找畫文字陰影的辦法. 找了好幾個,最后找了個老外的文章,和.net自帶文檔里的說法一樣. 居然是先畫2-5個alpha值不同的灰色文字當陰影.. 再在上面,畫正常顏色的文本....汗!!!!!!!!!!!!!!!!!!111 沒有辦法了,只好將就用了.效果還一般. font font=new font("arial black",15,fontstyle.bold); sizef sf=g.measurestring("imggood.com",font); pointf pf=new pointf(); pf.x=(250-sf.width)/2; pf.y=(bheight-sf.height)/2; //新建水印bmp bitmap floatbmp=new bitmap((int)sf.width+3,(int)sf.height+3,system.drawing.imaging.pixelformat.format32bppargb); //bitmap floatbmp=new bitmap(250,100); //bitmap floatbmp=new bitmap((int)sf.width,(int)sf.height); graphics fg=graphics.fromimage(floatbmp); //畫上陰影字符 pointf pt=new pointf(0,0); system.drawing.brush transparentbrush0 = new system.drawing.solidbrush( system.drawing.color.fromargb(50,system.drawing.color.black ) ) ; system.drawing.brush transparentbrush1 = new system.drawing.solidbrush( system.drawing.color.fromargb(20,system.drawing.color.black ) ) ; fg.drawstring("imggood.com",font,transparentbrush0,pt.x,pt.y+1); fg.drawstring("imggood.com",font,transparentbrush0,pt.x+1,pt.y); fg.drawstring("imggood.com",font,transparentbrush1,pt.x+1,pt.y+1); fg.drawstring("imggood.com",font,transparentbrush1,pt.x,pt.y+2); fg.drawstring("imggood.com",font,transparentbrush1,pt.x+2,pt.y); transparentbrush0.dispose(); transparentbrush1.dispose(); //畫上logo字符 fg.smoothingmode=system.drawing.drawing2d.smoothingmode.highquality; //fg.clear(color.black); fg.drawstring("imggood.com",font,new solidbrush(color.white),pt.x,pt.y,stringformat.genericdefault); //畫水印到 大圖 fg.save(); fg.dispose(); //設置透明圖像的顏色屬性 float[][] ptsarray ={ new float[] {1, 0, 0, 0, 0}, new float[] {0, 1, 0, 0, 0}, new float[] {0, 0, 1, 0, 0}, new float[] {0, 0, 0, 0.5f, 0}, new float[] {0, 0, 0, 0, 1}}; colormatrix clrmatrix = new colormatrix(ptsarray); imageattributes imgattributes = new imageattributes(); imgattributes.setcolormatrix(clrmatrix, colormatrixflag.default,coloradjusttype.bitmap); g.drawimage(floatbmp,new rectangle(10,10,(int)sf.width,(int)sf.height),0,0,(int)sf.width,(int)sf.height,graphicsunit.pixel,imgattributes); //======================================================================== g.save(); g.dispose(); bigbmp.save(filepath + "b/" + filename); bigbmp.dispose(); 代碼不難,不解決了