Re: Using the FDK to manipulate Graphics in FrameMaker 7x...

2009-04-09 Thread Jeremy H. Griffith
On Thu, 09 Apr 2009 11:30:12 -0400, Dan Glover dglo...@opnet.com wrote:

We're trying to use the FDK to get at the contents of graphics in a 
document.  The graphics are pasted in the document, and have a facet 
type of OLE2.  

We do that in Mif2Go, but not in the FDK plugin.  We do it
while processing the MIF.  From Frame's FDK, a facet is an
opaque container.  But in MIF, you can see them all.

Unfortunately, the FDK docs don't give much 
information about facets.  I can get data out of a facet if I know 
its name.  For example, F_ApiGetUBytesByName() uses the docId and 
objId for the graphic object, and then the facet name to get the 
given data.  I manage to use OLE2 for a facet name, and that works 
for FrameMaker 7.2.  But it doesn't work for FrameMaker 7.0!  The FDK 
docs don't describe facet names anywhere, and I have no way to know 
why it works for one version and not another.  I can only assume that 
OLE2 wasn't supported in 7.0???  I tried OLE2, OLE1, and OLE with no 
luck.  I can get TIFF and DIB facets out of 7.0, though.

An OLE facet is really a little file system, using a
proprietary and undocumented Microsoft file system.
We reverse-engineered it before that became illegal
under the DMCA.  It was a long, nasty job.

The only Frame docs I know of on facets are in the
Integrating Applications with FrameMaker book
published by Frame Tech in December 1989.  Print
only.  I believe Adobe discontinued it.

A related issue...  I want to extract the bitmap representation of 
the OLE image, and create a separate file without the OLE 
information.  But since I have no idea what the facet data looks 
like, I don't know what to save to the file and what to throw 
away.  Is there any way to learn about what's actually inside an image facet?

An OLE facet contains several files in its system, and
at least one of them is WMF, used to provide the display
you see in Frame when you are not editing the object.
We scan the files and try to identify the correct WMF
(there may be several); as an option, we'll write out
*all* the WMFs we see in there.

There's one case where it's very simple, discovered by a 
customer of ours: Visio.  It turns out that Visio uses the
OLE format as its own native file type.  So if you export
the OLE facets with Mif2Go (which can be done using the
free demo version), you can rename them form .ole to .vsd
and they will work.

Thanks for any info or experiences...

HTH!

-- Jeremy H. Griffith, at Omni Systems Inc.
  jer...@omsys.com  http://www.omsys.com/
___


You are currently subscribed to Framers as arch...@mail-archive.com.

Send list messages to fram...@lists.frameusers.com.

To unsubscribe send a blank email to 
framers-unsubscr...@lists.frameusers.com
or visit 
http://lists.frameusers.com/mailman/options/framers/archive%40mail-archive.com

Send administrative questions to listad...@frameusers.com. Visit
http://www.frameusers.com/ for more resources and info.


Using the FDK to manipulate Graphics in FrameMaker 7x...

2009-04-09 Thread Dan Glover
Hello,

We're trying to use the FDK to get at the contents of graphics in a 
document.  The graphics are pasted in the document, and have a facet 
type of OLE2.  Unfortunately, the FDK docs don't give much 
information about facets.  I can get data out of a facet if I know 
its name.  For example, F_ApiGetUBytesByName() uses the docId and 
objId for the graphic object, and then the facet name to get the 
given data.  I manage to use "OLE2" for a facet name, and that works 
for FrameMaker 7.2.  But it doesn't work for FrameMaker 7.0!  The FDK 
docs don't describe facet names anywhere, and I have no way to know 
why it works for one version and not another.  I can only assume that 
OLE2 wasn't supported in 7.0???  I tried OLE2, OLE1, and OLE with no 
luck.  I can get TIFF and DIB facets out of 7.0, though.

A related issue...  I want to extract the bitmap representation of 
the OLE image, and create a separate file without the OLE 
information.  But since I have no idea what the facet data looks 
like, I don't know what to save to the file and what to throw 
away.  Is there any way to learn about what's actually inside an image facet?

Thanks for any info or experiences...

Dan Glover
OPNET Technologies, Inc
www.opnet.com



Using the FDK to manipulate Graphics in FrameMaker 7x...

2009-04-09 Thread Jeremy H. Griffith
On Thu, 09 Apr 2009 11:30:12 -0400, Dan Glover  wrote:

>We're trying to use the FDK to get at the contents of graphics in a 
>document.  The graphics are pasted in the document, and have a facet 
>type of OLE2.  

We do that in Mif2Go, but not in the FDK plugin.  We do it
while processing the MIF.  From Frame's FDK, a facet is an
opaque container.  But in MIF, you can see them all.

>Unfortunately, the FDK docs don't give much 
>information about facets.  I can get data out of a facet if I know 
>its name.  For example, F_ApiGetUBytesByName() uses the docId and 
>objId for the graphic object, and then the facet name to get the 
>given data.  I manage to use "OLE2" for a facet name, and that works 
>for FrameMaker 7.2.  But it doesn't work for FrameMaker 7.0!  The FDK 
>docs don't describe facet names anywhere, and I have no way to know 
>why it works for one version and not another.  I can only assume that 
>OLE2 wasn't supported in 7.0???  I tried OLE2, OLE1, and OLE with no 
>luck.  I can get TIFF and DIB facets out of 7.0, though.

An OLE facet is really a little file system, using a
proprietary and undocumented Microsoft file system.
We reverse-engineered it before that became illegal
under the DMCA.  It was a long, nasty job.

The only Frame docs I know of on facets are in the
"Integrating Applications with FrameMaker" book
published by Frame Tech in December 1989.  Print
only.  I believe Adobe discontinued it.

>A related issue...  I want to extract the bitmap representation of 
>the OLE image, and create a separate file without the OLE 
>information.  But since I have no idea what the facet data looks 
>like, I don't know what to save to the file and what to throw 
>away.  Is there any way to learn about what's actually inside an image facet?

An OLE facet contains several "files" in its system, and
at least one of them is WMF, used to provide the display
you see in Frame when you are not editing the object.
We scan the files and try to identify the correct WMF
(there may be several); as an option, we'll write out
*all* the WMFs we see in there.

There's one case where it's very simple, discovered by a 
customer of ours: Visio.  It turns out that Visio uses the
OLE format as its own native file type.  So if you export
the OLE facets with Mif2Go (which can be done using the
free demo version), you can rename them form .ole to .vsd
and they will work.

>Thanks for any info or experiences...

HTH!

-- Jeremy H. Griffith, at Omni Systems Inc.
http://www.omsys.com/