Hi. 

I need some help. I've never written an FrameScript in my life, nor looked at 
the help until an hour ago, so have mercy if this is a simple question.

I need to apply the PgfLIndent of any paragraph that contains an AFrame to the 
imported graphic inside the frame.  I understand from the MIF file that the 
Para holds a pointer to the Aframe, but not the reverse. It seems that the 
Aframe has the information I have to change in a structure referred to in the 
MIF as ImportObject. 

If I understand correctly, the program flow would be to Loop ForEach(Pgf) 
In(ActiveDoc), save the PgfLIndent of the Pgf, get the AFrame (if any) in the 
paragraph, get the ImportObject of the AFrame and set the left indent.

My problem is that I can't identify the connections I see in the MIF file in 
the FrameScript Command and Object Reference. I don't see where the Pgf points 
to a contained frame. Given the AFrame, it looks like FirstGraphicInFrame will 
return the imported graphic. However, the  FirstGraphicInFrame returns 
"Object". What type object is it, and what property corresponds to the left 
insert?

Of course, it could be that I'm on the wrong track, and that the MIF doesn't 
represent the same object model that the API does. Perhaps I can loop through 
the graphics from FirstGraphicInDoc on down and get the attributes of the 
containing paragraph, but I don't see anything in the reference that hints at 
that.

Please throw life saver or flotation device of any type.

I'm pasting some relevant sections of the MIF, in case my description was 
muddled.

In this example, the anchor is in a paragraph tagged Indent, defined in the MIF:
<Pgf
  <PgfTag `Indent'>...
  <PgfLIndent  29.0 mm> ...

Therefore, I'd want to change the left placement of the graphic to 29. 
From:
<BRect  25.0 mm 4.0 mm 120.65022 mm 123.37138 mm>
To:
<BRect  29.0 mm 4.0 mm 120.65022 mm 123.37138 mm>

The paragraph that contains the imported GIF looks like this:
<Para
  <Unique 45371>
  <PgfTag `Indent'>
  <PgfNumString `'>
  <ParaLine 
   <TextRectID 53>
   <String `The Flight Finder page opens.'>
   <AFrame 10>
   <String ` '>
  > # end of ParaLine
 > # end of Para

The AFrame referred to in the Para element looks like this. The data I want to 
change is in the ShapeRect and/or BRect if the ImportObject:
<Frame
  <ID 10>
  <Unique 45498>
  <Pen 15>
  <Fill 15>
  <PenWidth  1.0 pt>
  <Separation 0>
  <ObColor `Black'>
  <DashedPattern 
   <DashedStyle Solid>
  > # end of DashedPattern
  <RunaroundGap  6.0 pt>
  <RunaroundType None>
  <Angle  360.0>
  <ShapeRect  15.00002 mm 23.52781 mm 150.0 mm 127.53365 mm>
  <BRect  15.00002 mm 23.52781 mm 150.0 mm 127.53365 mm>
  <FrameType Below>
  <Float No>
  <NSOffset  0.0 mm>
  <BLOffset  -87.53365 mm>
  <AnchorAlign Left>
  <Cropped No>
  <ImportObject 
   <Unique 45502>
   <Fill 7>
   <Separation 0>
   <ObColor `Black'>
   <RunaroundType Contour>
   <ImportObFileDI `<u\><u\><c\>graphics<c\>FLightFInder.gif'>
   <ImportObFile `../../graphics/FLightFInder.gif'>
   <ImportHint `0001FRAMGIF WIN3    '>
   <ImportObUpdater `GIF'>
   <ShapeRect  29.0 mm 4.0 mm 120.65022 mm 123.37138 mm>
   <BRect  29.0 mm 4.0 mm 120.65022 mm 123.37138 mm>
   <BitMapDpi 140>
   <FlipLR No>
  > # end of ImportObject
 > # end of Frame

Grateful for any tips.
Thanks.

Marta

Reply via email to