Copy link to clipboard
Copied
Hi all,
I'm new in FDK and try to compare two ranges to define which of them is the first one in the document. But I didn't find any function in FDK.
Does anybody know ways to do it?
mdeg,
What do you mean by "range"? Do you mean a text range, and you want to know which range occurs before the other in the respective flow? If that's the case, I think you would need to do the following, assuming the ranges start in different paragraphs:
- Find the text frame for one of the paragraphs, likely with the InTextFrame property of the textrange.beg.obj object
- Get the parent flow object, likely with the textframe.Flow property
- Get the first paragraph in the flow, likely with flow.Fir
...Copy link to clipboard
Copied
Now why would you ask in the unstructured FM forum when there’s a whole forum devoted to Scripting?
Copy link to clipboard
Copied
Hi Jeff,
sorry, but I don't understand your question. I wrote my question in the All communities -> Framemaker -> Discussions, how there is related to the scripting only?
And how my question is related to unstructured FM? I work with the structured mode.
Copy link to clipboard
Copied
Try here - https://forums.adobe.com/community/framemaker/extendscript?view=overview
Copy link to clipboard
Copied
mdeg,
What do you mean by "range"? Do you mean a text range, and you want to know which range occurs before the other in the respective flow? If that's the case, I think you would need to do the following, assuming the ranges start in different paragraphs:
- Find the text frame for one of the paragraphs, likely with the InTextFrame property of the textrange.beg.obj object
- Get the parent flow object, likely with the textframe.Flow property
- Get the first paragraph in the flow, likely with flow.FirstTextFrameInFlow.FirstPgf
- Iterate over all paragraphs in the flow, likely with the pgf.NextPgfInFlow property
- The first one that you get to that matches one of your textrange.beg.obj objects means that textrange occurs first
If the two ranges start in the same paragraph, where textrange1.beg.obj = textrange2.beg.obj, you could just skip all that and compare the offsets.
If one or more of the ranges are in a table cell, footnote, etc, the whole process becomes significantly more complex. Too much to address here.
Russ
Copy link to clipboard
Copied
Thank you Russ.
Your answer is quite enough to start the implementation.