Topics   All   MacOS (Only)   Windows (Only)   Linux (Only, Not)   iOS (Only, Not)  
Components   Crossplatform Mac & Win   Server   Client   Old   Guides   Examples
New in version: 9.0   9.1   9.2   9.3   9.4   9.5   10.0   10.1   10.2   10.3    Statistic  

DynaPDF.FindText

Searches a text and returns position details.

Component Version macOS Windows Server FileMaker Cloud FileMaker iOS SDK
DynaPDF 4.1 Yes Yes Yes Yes Yes
MBS( "DynaPDF.FindText"; PDF; Text { ; CaseInsensitive } )   More

Parameters

Parameter Description Example value
PDF The PDF reference returned from DynaPDF.New. $pdf
Text The text to search. "Hello"
CaseInsensitive Optional
Optional, if 1, the case of the letters is ignored (also umlauts).
1

Result

Returns list of found positions.

Description

Searches a text and returns position details.
You need to have an open page. you can use DynaPDF.EditPage to edit an existing one.
The list of returned coordinates contains a rectangle for each found position defined by 4 coordinates. The coordinates (x1 y1 x2 y2 x3 y3 x4 y4) define the surrounding rectangle of the text area.

This function uses the parser interface in DynaPDF and needs a Lite license.

Examples

Find the text Apple on the current page:

MBS( "DynaPDF.FindText"; $PDF; "Apple"; 1 )

Example result: "96.001800 662.040000 168.307802 662.040000 168.307802 676.080000 96.001800 676.080000"

Find text and place weblink:

Set Variable [ $pos ; Value: MBS( "DynaPDF.FindText"; $pdf; Links::Text; 1) ]
If [ IsEmpty ( $pos ) ]
    # not found
Else
    # read positions
    Set Variable [ $pos ; Value: Substitute($pos; " "; ¶) ]
    Set Variable [ $x1 ; Value: MBS( "Math.TextToNumber"; GetValue($pos; 1)) ]
    Set Variable [ $y1 ; Value: MBS( "Math.TextToNumber"; GetValue($pos; 2)) ]
    Set Variable [ $x2 ; Value: MBS( "Math.TextToNumber"; GetValue($pos; 3)) ]
    Set Variable [ $xy ; Value: MBS( "Math.TextToNumber"; GetValue($pos; 4)) ]
    Set Variable [ $x3 ; Value: MBS( "Math.TextToNumber"; GetValue($pos; 5)) ]
    Set Variable [ $y3 ; Value: MBS( "Math.TextToNumber"; GetValue($pos; 6)) ]
    Set Variable [ $x4 ; Value: MBS( "Math.TextToNumber"; GetValue($pos; 7)) ]
    Set Variable [ $y4 ; Value: MBS( "Math.TextToNumber"; GetValue($pos; 8)) ]
    Set Variable [ $w ; Value: MBS( "Math.TextToNumber"; $x3-$x1) ]
    Set Variable [ $h ; Value: MBS( "Math.TextToNumber"; $y3-$y1) ]
    # place web link
    Set Variable [ $r ; Value: MBS( "DynaPDF.WebLink"; $pdf; $x1; $y1; $w; $h; Links::URL ) ]
End If

See also

Example Databases

Blog Entries

FileMaker Magazin

Created 18th August 2014, last changed 4th May 2020


DynaPDF.FindPattern   -   DynaPDF.FlattenAnnotOrField

Feedback: Report problem or ask question.




Links
MBS Xojo tutorial videos