Convert Shape to Bitmap and Save to filesystem

Hi there,

I try to run this code, but I always get an error like : Method SaveAs failed to run on Object IDrawBitmap ?

Any ideas ? 

 

Sub Test()

Dim r As Shape, s As Shape
Set r = ActiveLayer.CreateRectangle(0, 0, 5, 5)
r.Fill.UniformColor.CMYKAssign 100, 0, 0, 0
Set s = ActiveLayer.CreateEllipse2(3, 3, 2)
s.Fill.UniformColor.CMYKAssign 0, 100, 100, 0
Set s = s.ConvertToBitmapEx(cdrRGBColorImage, False, True)
s.CreateDropShadow cdrDropShadowFlat, 80, 10, 0.5, -0.5, CreateCMYKColor(0, 50, 50, 50)

 r.CreateSelection
s.Selected = True

 If (s.Type = cdrBitmapShape) Then MsgBox "isBitmapShape"

 Dim ex As ExportFilter

 Set ex = s.Bitmap.SaveAs("c:\newBMP.bmp", cdrBMP, cdrCompressionRLE_LW)

End Sub

Parents
  • Hi.

    Try specifiaclly converting it to a bitmap. I added one line to your code:

     

    Sub Test3333()

    Dim r As Shape, s As Shape
    Set r = ActiveLayer.CreateRectangle(0, 0, 5, 5)
    r.Fill.UniformColor.CMYKAssign 100, 0, 0, 0
    Set s = ActiveLayer.CreateEllipse2(3, 3, 2)
    s.Fill.UniformColor.CMYKAssign 0, 100, 100, 0
    Set s = s.ConvertToBitmapEx(cdrRGBColorImage, False, True)
    s.CreateDropShadow cdrDropShadowFlat, 80, 10, 0.5, -0.5, CreateCMYKColor(0, 50, 50, 50)

    r.CreateSelection
    s.Selected = True

     If (s.Type = cdrBitmapShape) Then MsgBox "isBitmapShape"

     Dim ex As ExportFilter
     
    Set s = s.ConvertToBitmapEx(cdrRGBColorImage, True, False, 300, 300, False)
     Set ex = s.Bitmap.SaveAs("d:\All Graphics\newBMP.bmp", cdrBMP, cdrCompressionRLE_LW)
    ex.Finish
    End Sub

     

     

    ~John

Reply Children
No Data