如何为一张图片添加边框

hahatzq 2006-06-27 11:31:32
我想为picture中图片添加边框,边框是一张图片,如何使边框覆盖到PICTURE中但他的白色区域变的想PHOTOSHOP中透明化的效果.不一定要详细代码,可以给个设计思想.
...全文
347 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
hahatzq 2006-06-27
  • 打赏
  • 举报
回复
我的边框不是正正方方的,可能有凹突,用PaintPicture会先画边框再话图的话会把边框有的部分覆盖掉的
tripman 2006-06-27
  • 打赏
  • 举报
回复
更正:先画边框再画图片
YaDa 2006-06-27
  • 打赏
  • 举报
回复
将你的图片用BitBlt或PaintPicture贴到有图片框的PicureBox上就行了.
tripman 2006-06-27
  • 打赏
  • 举报
回复
用PaintPicture,先画图片再画边框,如果要保存的话再用API将合成图片输出
一笑拔剑 2006-06-27
  • 打赏
  • 举报
回复
VB6 直接支持图标和光标文件的背景透明,要想在窗体中放置一个背景透明而且是面积较大的图片时可以用API,当然也可以借助第三方控件来完成。笔者在这里就再介绍另一种方法——掩模覆盖法。

  1、实现的原理


  掩模覆盖法的原理:先对图片进行加工,保留图片的主体部分,需要透明掉的部分全部描为纯黑色生成源图片,再为这幅源图片制作一幅掩模图,就是将源图片主体部分描成纯黑色而需要透明的部分都描成纯白色。程序运行时将两幅图片在同一位置按不同方法显示在窗体或图片框上,就会显现出一幅背景透明的图片。

  2、实现的代码

  新建一标准EXE工程,在默认窗体Form1上放置两个图像框控件Image1和Image2,分别加载制作完成的掩码图和源图,两个图像框的其他属性均可取默认值。

  程序代码如下:

  Private Sub Form_Load()

  Dim TU1,TU2 As Picture '定义TU1和TU2为图片对象

  Dim X0=0:Y0=0 as Integer

  Image1.Visible=False:Set TU1=Image1

  Image2.Visible=False:Set TU2=Image2

  AutoRedraw=True

  Form1.PaintPicture TU1,x0,y0,,,,,,,&&H8800C6

  Form1.PaintPicture TU2,x0,y0,,,,,,,&&H660046

  End Sub

  上述方法同样适用于在图片框内放置背景透明的图片。

  掩模覆盖法优点是不需要附加任何外接控件,缺点是需要为每幅源图分别制作掩模图,工作量较大。

DengXingJie 2006-06-27
  • 打赏
  • 举报
回复
用圖片透明的技術
hahatzq 2006-06-27
  • 打赏
  • 举报
回复
能不能提供相关连接,我找不到相关资料.
YaDa 2006-06-27
  • 打赏
  • 举报
回复
不是正正方方的就用透明贴图.麻烦一点.先做掩膜再用BitBlt贴2次图。可以在网上查找“透明贴图”,再参考参考。

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧