Can someone tell me why under PB5.11 encodeimage return properly the address
of memory but under PB5.2 beta always return 0.
  If *this\Dbase\QuerytblMachineDiagram(MachineId,@machineDiagram)
    If machineDiagram\diagram
      ImageNr = CatchImage(#PB_Any,machineDiagram\diagram)
      If ImageNr
        imaged = CreateImage(#PB_Any,ImageWidth(ImageNr),ImageHeight(ImageNr),24) ;,$FFFFFF)
        If imaged
          StartDrawing(ImageOutput(imaged))
          Box(0,0,ImageWidth(ImageNr),ImageHeight(ImageNr),$FFFFFF)
          DrawImage(ImageID(ImageNr),0,0)
          StopDrawing()
          If imaged
            *imgbuffer = EncodeImage(imaged,#PB_ImagePlugin_PNG,#PB_Image_FloydSteinberg,8)
              MessageRequester("Test line","Memory : " + Str(*imgbuffer))
            If *imgbuffer
              DoSomething()
              ;             ShowMemoryViewer(*imgbuffer,MemorySize(*imgbuffer))
            EndIf
            SetGadgetState(*this\GdgtMachImage,ImageID(imaged))
          EndIf
        EndIf
      EndIf
    EndIf
  EndIf
			
			
									
									
						Encode image return 0 PB5.2 beta
Re: Encode image return 0 PB5.2 beta
Where is your " UsePNGImageEncoder() " ??
			
			
									
									
						- roslansalleh
 - User

 - Posts: 19
 - Joined: Fri Dec 21, 2012 3:45 am
 
Re: Encode image return 0 PB5.2 beta
already define above the code.
The code run fine using PB5.11. I confirm about it. But under PB5.2 beta 6 and 7 I tested
the result always 0. I mean encode image always return 0.
			
			
									
									
						The code run fine using PB5.11. I confirm about it. But under PB5.2 beta 6 and 7 I tested
the result always 0. I mean encode image always return 0.
Re: Encode image return 0 PB5.2 beta
Please post a "working" snippet which demonstrates the problem and Please use Code Tags.
cheers
			
			
									
									
						cheers
- roslansalleh
 - User

 - Posts: 19
 - Joined: Fri Dec 21, 2012 3:45 am
 
Re: Encode image return 0 PB5.2 beta
here simple test. Under PB5.11 I got and address for *imgbuffer.
But using PB5.2 beta 7 got 0 only.
			
			
									
									
						But using PB5.2 beta 7 got 0 only.
Code: Select all
UsePNGImageEncoder()
        imaged = CreateImage(#PB_Any,200,200,24) ;,$FFFFFF)
        If imaged
          StartDrawing(ImageOutput(imaged))
          Box(20,20,100,100,$FFFF00)
          StopDrawing()
          If imaged
            *imgbuffer = EncodeImage(imaged,#PB_ImagePlugin_PNG,#PB_Image_FloydSteinberg,8)
              MessageRequester("Test line","Memory : " + Str(*imgbuffer))
          EndIf
        EndIf- roslansalleh
 - User

 - Posts: 19
 - Joined: Fri Dec 21, 2012 3:45 am
 
Re: Encode image return 0 PB5.2 beta
Forgot to tell. I use PB5.11 and PB_5.2 beta7 OSX 64bit.
			
			
									
									
						Re: Encode image return 0 PB5.2 beta
returns a memory address on Windows x64 - PB 32 5.2 b7
			
			
									
									
						- roslansalleh
 - User

 - Posts: 19
 - Joined: Fri Dec 21, 2012 3:45 am
 
Re: Encode image return 0 PB5.2 beta
So the problem is only under OSX when using PB5.2 beta version.
			
			
									
									
						Code: Select all
UsePNGImageEncoder()
imaged = CreateImage(#PB_Any,200,200,24) ;,$FFFFFF)
If imaged
  StartDrawing(ImageOutput(imaged))
  Box(20,20,100,100,$FFFF00)
  StopDrawing()
  *imgbuffer = EncodeImage(imaged,#PB_ImagePlugin_PNG,#PB_Image_FloydSteinberg,8)
  MessageRequester("Test line","Memory : " + Str(*imgbuffer))
EndIf