Components All New MacOS Windows Linux iOS
Examples Mac & Win Server Client Guides Statistic FMM Blog Deprecated Old

DynaPDF.ExtractDocumentText

Extracts the text of all pages.

Component Version macOS Windows Linux Server iOS SDK
DynaPDF 6.0 ✅ Yes ✅ Yes ✅ Yes ✅ Yes ✅ Yes
MBS( "DynaPDF.ExtractDocumentText"; PDF )   More

Parameters

Parameter Description Example
PDF The PDF reference returned from DynaPDF.New. $pdf

Result

Returns text or error.

Description

Extracts the text of all pages.
This is like extracting page by page, but plugin may do it faster than a loop in a FileMaker script and puts a newline between pages.
Use DynaPDF.ExtractText is you need text from just one page.

For Mac only solutions, you can also try PDFKit.GetPDFText.

Needs DynaPDF Lite license.
Please use DynaPDF.SetCMapDir to define the CMap folder to handle encodings better.

Examples

Load PDF and extract text:

Set Variable [$pdf; Value:MBS("DynaPDF.New")]
Set Variable [$r; Value:MBS("DynaPDF.OpenPDFFromContainer";$pdf; Test::data)]
Set Variable [$r; Value:MBS("DynaPDF.ImportPDFFile";$pdf)]
Set Field [Test::PageText; MBS("DynaPDF.ExtractDocumentText"; $pdf)]
Set Variable [$r; Value:MBS("DynaPDF.Release"; $pdf)]

Full script to get text with error checking:

If [MBS("DynaPDF.IsInitialized") ≠ 1]
    Perform Script [“InitDynaPDF”]
End If
Set Variable [$pdf; Value:MBS("DynaPDF.New")]
If [MBS("IsError")]
    Show Custom Dialog ["DynaPDF Fehler"; $pdf]
Else
    Set Variable [$r; Value:MBS("DynaPDF.OpenPDFFromContainer";$pdf; Test::data)]
    If [MBS("IsError")]
        Show Custom Dialog ["DynaPDF Fehler"; $r]
    Else
        Set Variable [$r; Value:MBS("DynaPDF.ImportPDFFile";$pdf)]
        If [MBS("IsError")]
            Show Custom Dialog ["DynaPDF Fehler"; $r]
        Else
            Set Field [Test::PageText; MBS("DynaPDF.ExtractTextOld"; $pdf)]
            Commit Records/Requests [No dialog]
        End If
    End If
    #Cleanup
    Set Variable [$r; Value:MBS("DynaPDF.Release"; $pdf)]
End If

See also

Release notes

Example Databases

Blog Entries

This function checks for a license.

Created 8th December 2015, last changed 29th January 2023


DynaPDF.ExchangePages - DynaPDF.ExtractImages