These forums are now Read Only. If you have an Acrobat question, ask questions and get help from one of our experts.

Is it possible to open PDF Portfolio in Flash ActiveX (Visual C++ project)

Jeka
Registered: Feb 8 2011
Posts: 8

Is there any way to open PDF Portfolio's SWF file in Flash ActiveX (Visual C++ project)? How to implement communications between them?

UVSAR
Expert
Registered: Oct 29 2008
Posts: 1357
Don't understand what you're trying to do...

The Flex SWF(s) within a PDF Portfolio navigator only work from within Acrobat, as they rely on the API. You can't use them anywhere else, and the Acrobat SDK doesn't expose them for runtime access by plugins.
Jeka
Registered: Feb 8 2011
Posts: 8
http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/external/ExternalInterface.php
by this link you can read the following:

The ExternalInterface class is the External API, an application programming interface that enables straightforward communication between ActionScript and the Flash Player container– for example, an HTML page with JavaScript. Adobe recommends using ExternalInterface for all JavaScript-ActionScript communication.
Flash Player container is also Flash Player based on Flash ActiveX.

http://livedocs.adobe.com/flash/9.0/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00000340.php by this link you can read the following:If the container is some other ActiveX container, this method causes the Flash Player ActiveX control to dispatch its FlashCall event. The specified function name and any parameters are serialized into an XML string by Flash Player. The container can access that information in the request property of the event object and use it to determine how to execute its own code. To return a value to ActionScript, the container code calls the ActiveX object's SetReturnValue() method, passing the result (serialized into an XML string) as a parameter of that method. For more information about the XML format used for this communication, see The external API's XML format.

In my case I receive several following reguests by function FlashCall:

invoke name="debugPort" returntype="xml"
arguments
array array
arguments
invoke

invoke name="GetProperty" returntype="xml"
arguments
number 0 number
number 1002 number
string logInfo string
arguments
invoke

invoke name="GetProperty" returntype="xml"
arguments
number 0 number
number 1002 number
string modelDropManager string
arguments
invoke

invoke name="GetProperty" returntype="xml"
arguments
number 0 number
number 1002 number
string applicationFontName string
arguments
invoke

invoke name="GetProperty" returntype="xml"
arguments
number 0 number
number 1002 number
string applicationPalette string
arguments
invoke

............etc.

I want to know, how to respond to this request, how to pass some contents, structure of contents to Flash ActiveX.
And finally You can open any PDF portfolio file in “Nuance PDF Reader” (http://www.nuance.com/) . Please inspect the window which is opened by SPY++.This window is “MacromediaFlashPlayerActiveX” !!!

Perhaps I have misunderstood something. How can I do the same thing that is done in Nuance PDF Reader which opens PDF Portfolio in MacromediaFlashPlayerActiveX?

UVSAR
Expert
Registered: Oct 29 2008
Posts: 1357
Nuance Reader simulates a PDF Portfolio navigator within the application by handing off some of the Flash elements to the external player, as Nuance do not have access to the code used by Acrobat and Reader, but it does not fully support PDF Portfolios. A consequence of this is that the external player intercepts internal commands which should be flowing between the embedded player and the host (Acrobat/Reader), which are handled by Acrobat's API. The host requests you are seeing are not documented, as they are not supposed to be intercepted.

Adobe Acrobat and Adobe Reader do NOT use an external runtime, and instead use a fully-embedded copy of Flash Player 10 for all Flash rendering within a PDF Portfolio (both the layout and any SWF/FLV files in the contents). There is no exposed access to the embedded player, and any SWF layouts created by users must be authored in Flex and compiled into a .NAV file using the component libraries supplied within the Acrobat SDK, so they can interface correctly with Acrobat/Reader.

If you need more information, you should post your question to the Acrobat SDK forum where the product engineers might respond.