delphi代码如下:  bm := TBitMap.Create;
  bm.Canvas.Brush.Color := clRed;
  bm.Canvas.FillRect(bm.Canvas.ClipRect);
  bm.Canvas.TextOut(0, 0, '动态生成文字测试');
  bm.SaveToFile(str0 + '\a.bmp');
  bm.Free;生成一个带文字的bmp图片
不知vb中如何操作?

解决方案 »

  1.   

    非常简单:
    Private Sub Form_Load()    Me.ScaleMode = 3
        Picture1.ScaleMode = 3
        Picture1.BorderStyle = 0
        Picture1.AutoRedraw = True
        'Picture1.Width = 320
        'Picture1.Height = 120
        'Picture1.CurrentX = 45
        'Picture1.CurrentY = 60
        Picture1.Print "输出文字字符!"
        SavePicture Picture1.Image, "x:\Temp\aa.bmp"
        'Unload MeEnd Sub
      

  2.   

    新建一个标准的 EXE工程,添加一个 PictureBox 控件,把上面的代码粘贴到窗体代码中就行了。
      

  3.   

    这是照你的 delphi 代码“翻译”过来的:
    Private Sub Form_Load()
        Me.ScaleMode = 3
        Picture1.ScaleMode = 3
        Picture1.BorderStyle = 0
        'Picture1.Width = 320
        'Picture1.Height = 120
    '上面几句可以在设计时确定,不是必须写代码
    '------------------------------------------
    '  bm := TBitMap.Create;
    '这句在 VB 中不要
    '  bm.Canvas.Brush.Color := clRed;
    '  bm.Canvas.FillRect(bm.Canvas.ClipRect);
        Picture1.BackColor = vbRed
    '  bm.Canvas.TextOut(0, 0, '动态生成文字测试');
        'Picture1.CurrentX = 0
        'Picture1.CurrentY = 0
        Picture1.Print "动态生成文字测试"
    '  bm.SaveToFile(str0 + '\a.bmp');
        SavePicture Picture1.Image, str0 & "a.bmp"
    '  bm.Free
    '这句在 VB 中不要
        'Unload Me  '可以结束程序End Sub
      

  4.   


    这样是不同的,使用delphi生成图片宽度不限(如2223)
    而vb是有限制的(宽度小于1024)
    我要的是宽度不限的
      

  5.   

    已使用dll解决了...
    不知vb能作不
      

  6.   

    VB 中图片大小好象也是没限制的。
    你把我注释掉的设置图片大小的代码恢复试试:
    Picture1.Width = 12000
    Picture1.Height = 7200
    .........

    肯定能输出 12000×7200 大小的 bmp 图片。