Font Encoder Object for FileMaker Pro | GoGS1 Data Matrix HRI object

  • Generate barcodes from IDAutomation Barcode Fonts in FileMaker Pro and FileMaker Go.
  • Easy to use copy and paste font encoder object.
  • Cross-platform compatibility with Windows, Mac, and iOS.
  • Supports GS1 DataBar, QR Code, GS1-QRCode, Data Matrix ECC 200, GS1-DataMatrix, and PDF417.
  • The object stays embedded in the database when distributed.
  • Includes advanced support for GS1, ISBT, and HIBC with tilde options.

Overview | Compatibility

This product supports FileMaker Pro and FileMaker Go 12 & up; previous versions of FileMaker must use the Font Encoder Plugin. This product may require FileMaker Pro Advanced to embed the object within the database. The Font Encoder Object displays text within a form or report that is formatted to the selected barcode font. Once installed, no other components or plugins need to be installed except the required barcode font; it is the complete font encoder.


This tutorial is for the 2017 and later versions of the font encoder object. Users of previous versions or other products should refer to one of the following:

  1. Extract or decompress the files from the developer tools downloaded package which is provided with all Developer Licenses for the associated font product.
  2. Open the example file included in the zip file and go to Layout mode, click on the barcode object in the example and copy, then go to the layout mode of your file and paste the barcode object into your database.

    In layout view, copy & paste the barcode object.
  3. While still in Layout mode, open the barcode object by right-clicking and selecting Web Viewer Setup and choosing Specify Calculation. Notice that the DataToEncode line is set to static text within parentheses. For example: DataToEncode = GetAsText( ProductTable::WebAddress ) ;
    Choose Specify Calculation
  4. Modify the DataToEncode line to equal the table and field that is to be encoded, eliminating the parentheses. This will allow dynamic information from the field to be encoded as text within the symbol.

    Choosing the Field for the Encoder
    • Text may also be appended, for example, to encode "~1" before the field:
      DataToEncode = "~1" & ProductTable::GS1Number
    • Multiple fields may also be encoded in the same symbol, for example,    the following encodes two fields placing a tab function between them:
      DataToEncode = ProductTable::Field1 & "~d009" & ProductTable::Field2
  5. Other parameters may be changed as necessary; refer to the appropriate font FAQ for more information about the options. If necessary, change the Font line to the font that will generate barcodes. If multiple fonts are listed, the first one takes precedence over the others. The point size may be changed by modifying the number in the FontSize line.
  6. Change to browse mode and verify the object updates dynamically with the data field. If it does not, verify the table and field are accurate and remove comment characters "*/" if they were added to the beginning and end of the code. These comment characters are sometimes added after pasting the object into a new database when the specified field does not exist.

    Change DataToEncode and remove comment characters.
  7. Change to browse mode and verify the object updates dynamically with the data field.
  8. In some cases, information on a form may be blocked out because of the automatic auto-sizing of the object. To resolve this, switch to Layout mode, choose the object, and View - Inspector or CTRL-I. Locate the Autosizing section to disable the offending auto-sizing areas.

    Disable oversizing of the font encoder.
  9. If necessary, change the parameters at the top section of the code; "1" is True, and "0" is False.
  10. To automatically format and show GS1 HRI in 2D symbols, open the GS1 version of the product and paste the HRI object into the database in the same way as the barcode object. If necessary, refer to the example provided in the download. The HRI object should not be used with GS1 DataBar because of the way GS1 DataBar generates the check digit within the scanner. For GS1 DataBar, use separate text fields to reflect the data encoded.

    GS1 Data Matrix HRI object

Parameters | Options

DataToEncode is the only required parameter in the functions provided.

Optional parameters may be changed by modifying the top section of the code as demonstrated in Step 4 above.

The following is an explanation of popular parameters:

  • Font - The font to use when displaying the data within the object. If multiple fonts are defined, the first one that is installed will be used.
  • FontSize - Changes the point size of the font within the object.
  • ApplyTilde - Processes the tilde character for special functions such as encoding functions, encoding ASCII characters directly,  or generating GS1-128, GS1-DataMatrix, or GS1-QRCode symbols.
    • GS1 Encoding Options - The FNC1 may be encoded with ~1 in GS1-DataMatrix or GS1-QRCode when the tilde option is enabled. The FNC1 may also be encoded by surrounding the AI in parentheses.
    • HRI Options - When using the HRI object, multiple GS1 fixed-length element strings are automatically displayed.
      GS1-128 encoding: ~20201095011010209171719050810ABCD1234

      GS1-128 Example

      GS1-DataMatrix encoding: ~101095011010209171719050810ABCD1234

      GS1-DataMatrix Example

    • Tilde Options - enabling ApplyTilde or ProcessTilde will allow the following calculation options where ?? is the number of digits before the tilde to include in the calculation:
      • ~m?? calculates a MOD10 check character, commonly used for GS1.
        Example: ~2020000801234999999999~m17  HIBC Example
        Encodes: (00) 008012349999999997
      • ~f?? calculates a MOD43 check character, commonly used for HIBC.
        Example: +A123BJC5D6E71~f14
        Encodes: +A123BJC5D6E71G
      • ~i?? calculates a MOD37-2 check character, commonly used for ISBT.
        Example: G123412654321~i13
        Encodes: G123412654321L
      • ~k?? calculates a MOD37-2 check character in brackets, commonly used for ISBT manual entry. This option will not encode the check character within the barcode.
        Example: G123412654321~k13
        Encodes: G123412654321 [L]

Technical Support

Free support is provided by searching in the support forumPriority phone, email, and forum support is provided up to 30 days after purchase. Additional support may be obtained if the Priority Support and Upgrade Subscription is active.

Common Problems and Solutions:

  • Blurry printing of small barcodes may occur with FileMaker 12 and a few other versions. According to FileMaker support, this issue was resolved with the release of FileMaker 13. If the latest update does not resolve the issue, try changing the point size of the font to 12, 16, or 24. This issue was caused by improper rendering of the web viewer object.
  • If the barcode is truncated, looks corrupted, or does not appear completely, resize or increase the width or height of the barcode object.
  • If the object shows text instead of a barcode, ensure the correct barcode font is installed and make sure that font is listed in the font= line as described in Step 6 of the tutorial.
  • If the barcode is not changing, ensure the DataToEncode line is connected to a field in the database as described in Step 3 of the tutorial.
  • If barcodes do not scan at the default settings, check to make sure that the barcode type is enabled in the scanner and that there is sufficient white space surrounding the barcode. Additional solutions are provided in the Barcode will not scan KB article.

Popular Forum Post Resolutions:

Video Tutorial

Related Information: