Translate metadata to field content
Mark Waddingham
mark at livecode.com
Mon Feb 17 19:25:53 EST 2020
There’s the formattedStyledText property which is like the formattedText but in the form of a style array. If you sum the number of chars in each run up until you find your tag, then you can should be able to use the formattedheight of char 1 up to the summed index to get the vscroll you need.
Warmest Regards,
Mark.
Sent from my iPhone
> On 17 Feb 2020, at 22:50, J. Landman Gay via use-livecode <use-livecode at lists.runrev.com> wrote:
>
> Thanks, I'll save that for someday. In this case though, the text is wrapped and there are anchors scattered around inside paragraphs. Unless someone else has an idea it looks like I'm going to have to extract lookup tables. That's going to be quite a job.
>
>> On 2/17/20 3:59 PM, Richard Gaskin via use-livecode wrote:
>> J. Landman Gay wrote:
>>> I'm still working on htmltext in a field. There are anchors that indicate positions elsewhere in the file. A browser will automatically find and scroll to the right place in the text. I need to reproduce that.
>>>
>>> Is there a way to translate an anchor like "#12345" to the location in the visible field text it links to?
>>>
>>> I've thought of a couple of alternate ways to do it involving lookup files, but it would be better to do a direct translation to avoid the extra overhead.
>> The closest I have doesn't account for softwraps, but FWIW:
>> function fwAnchorTagLine pFldObj, pTag
>> local tA
>> local tLastLine
>> local tNumRuns
>> put the styledText of pFldObj into tA
>> put item 2 of extents(tA) into tLastLine
>> repeat with i = 1 to tLastLine
>> put item 2 of extents(tA[i]["runs"]) into tNumRuns
>> repeat with j = 1 to tNumRuns
>> if pTag is in tA[i]["runs"][j]["style"]["linkText"] \
>> AND "link" is not in \
>> tA[i]["runs"][j]["style"]["textStyle"] then
>> return i
>> end if
>> end repeat
>> end repeat
>> end fwAnchorTagLine
>
>
> --
> Jacqueline Landman Gay | jacque at hyperactivesw.com
> HyperActive Software | http://www.hyperactivesw.com
>
>
> _______________________________________________
> use-livecode mailing list
> use-livecode at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
More information about the use-livecode
mailing list