Hello,

ExportImage works perfectly fine. The only thing you should do is to
set  your DISPLAY (Windows Control Panel) TO 24-bits or 32-bits (TRUE COLOR). 
You need true color display to be able to export 24-bit PNGs.

True color display is default for all new installation of Windows Vista and 7 
because it is required for some visual effects new Windows use.

Best regards,
Tomasz Janeczko
amibroker.com

  

--- In [email protected], Progster <progs...@...> wrote:
>
>    Hi,
> 
> Is is possible that the AB OLE Automation Object Model call 
> ExportImage() is broken in AB 5.30.4?
> 
> Despite everything I could think of to try, the images always come out 
> blank, like those attached.
> 
> Neither of the codes below work, and yet each was said to work on the 
> list in the past.
> 
> Operational attempts have included:
> 
> AB Open        Dbl-Click on script
> AB Open        Run script from command window
> 
> AB Closed        Dbl-Click on script
> AB Closed        Run script from command window
> 
> Results are always either:   server error, AB crash, or it runs and 
> produces the blank chart.
> 
> When AB is open, it doesn't matter what layout/chart is up.   Still no joy.
> 
> What could be (not) happening here???
> 
> - Progster
> 
> 
> -----------
> 
> //    ImageTest_01.js
> AB = new ActiveXObject("Broker.Application");
> AB.ActiveWindow.ExportImage( "test.gif", 640, 480 );
> 
> 
> //    ImageTest_02.js
> 
> iWatchList = 8;     ///    you can define watch list number here
> 
> AB = new ActiveXObject("Broker.Application");
> Qty = AB.Stocks.Count;   for( i = 0; i < Qty; i++ )
> {
>       Stk = AB.Stocks( i );
>       if( iWatchList < 32 )
>       {
>         if( Stk.WatchListBits & ( 1 << iWatchList ) )
>         {
>          Doc = AB.Documents.Open( Stk.Ticker );
>          WScript.Sleep( 4000 ); // 4 seconds delay
>           AB.ActiveWindow.ExportImage(Stk.Ticker + ".png")
>          Doc.Close();
>         }
>       }
>       else
>       {
>         if( Stk.WatchListBits2 & ( 1 << ( iWatchList - 32 )) )
>         {
>          Doc = AB.Documents.Open( Stk.Ticker );
>          AB.ActiveWindow.ExportImage(Stk.Ticker + ".png")
>          WScript.Sleep( 4000 ); // 4 seconds delay
>          Doc.Close();
>         }
>       }
> }
>


Reply via email to