Updated file management plug-in for FileMaker Pro 19 offers new functionality and is compatible with macOS 11.0.
Lienden, the Netherlands, January 26, 2021–Troi today announced the immediate availability of Troi File Plug-in 12.1 for FileMaker 19. This is a maintenance update in which we tested and improved the compatibility with macOS 11.0 (Big Sur), added and improved several functions and fixed a number of issues.
New functionality in Troi File Plug-in version 12.1
Troi File Plug-in 12.1 has the following new functionality:
Added new function TrFile_GetFileKind, which will return a (localized) description of what kind of file this is. For example a .fmp12 file will return “FileMaker Document” and a .zip file will return “ZIP Archive”. NOTE The resulting description will be returned in the current system language and can be slightly different depending on platform, installed applications and OS version. Improved the TrFile_GetFileHash function: you can now use a container (or a variable with container data) as the source parameter, for example a JPEG in a container field. Added switch “-AllowNonLocalCloudItems” to the TrFile_SelectFileDialog function. This will allow you to select files that are not downloaded to the local disk. Improved the TrFile_GetMetaData function: added support for FujiFilm Raw image files (.raf) when using the switches “-GetEXIF” and “-GetXMP”. Improved the TrFile_CreateThumbnail function for .CRW (RAW) files, when using the switch “-GetFullSizeRawThumbnail” switch, the function now returns the full size thumbnail embedded in the RAW file. Added new switch “-DontAddDS_Store” to the TrFile_CreateZIP function. When you add this switch hidden .DS_Store files will not be added to the ZIP file (.DS_Store files can be added to folders by the macOS Finder). Added new switch “-AddMacOSXAttributes” to the TrFile_CreateZIP function. When you add this switch Extended attributes and resource forks are added to the zip file. If there are extended attributes (or files with resource forks) this will be stored in a “__MACOSX” folder at the top level. Improved compatibility, bug fixes and other changes and improvements
Troi File Plug-in 12.1 also has the following changes and improvements:
Tested and made compatible with Claris FileMaker Pro 19, up to and including FileMaker Pro 19.2. Tested and made compatible with macOS 11.0 (Big Sur). Tested and made compatible with Windows 10 version 20H2 (October 2020 Update) and Windows 10 version 2004 (May 2020 Update). Fixed a problem while using the encoding switch -Encoding=ASCII_Windows (Windows-1252) : the plug-in no longer crashes when an incorrect or corrupt text with undefined character codes (like for example 0x81) is read. In this case the Unicode replacement character is returned. (macOS) Fixed a problem with the functions TrFile_Substitute, TrFile_SetMetadata and TrFile_InsertContents functions: in some cases (with the source and destination file being equal) these functions would work but incorrectly return an error code $$-47. (Windows) Fixed a problem with creating thumbnails with the Create Thumbnail script step or the TrFile_CreateThumbnailfunction, the plug-in would not honor the EXIF orientation tag for some JPEG images. Fixed a bug in the TrFile_GetMetaData function: when using the switch “-GetPDFDescription” the plug-in no longer truncates text when it contains a slash. Fixed a problem in the Set MetaData of Image File script step and the TrFile_SetMetaData function. The GPS Altitude Reference can now be set correctly (0 = Above Sea Level and 1 = Below Sea Level). Renamed the Delete File script step to Delete file (note the lower case f), making its name different from the FileMaker native Delete File step. This ensures that when you copy and paste script steps the correct step is pasted. (macOS) Modernized several functions and script steps. They now use a more modern framework. (macOS) Improved compatibility when running FileMaker Pro 19 in dark mode, the flash dialog is now more visible. Improved several example files. Several other minor bug fixes. More detailed information on all changes and improvements can be found on the File Plug-in page.
You can download the new version there.
Upgrading to version 12.1 is free for all customers with a valid subscription for the Troi Developer License Bundle and for users of version 12.0. You don’t need a new registration code.
Upgrades from older versions are available from US $ 59. You can order upgrades from our shop.
By Nick Lightbody
My new piece on Medium - with an in depth performance analysis between different types of deployment for FileMaker Server.
Deployment in a Docker Container on a powerful cloud server comes out as a standout option.
It will be fascinating to hear your own experience - does it differ from what my testing reveals?
It will also be fascinating to hear from Wim how the results he gets from his new Punisher performance tool compare with what we get with dsBenchmark?
Nickenich, Germany - (January 19th, 2021) -- MonkeyBread Software today is pleased to announce MBS FileMaker Plugin 11.0 for macOS, iOS, Linux and Windows, the latest update to their product that is easily the most powerful plugin currently available for FileMaker Pro. As the leading database management solution for Windows, macOS, iOS and the web, the FileMaker Pro Integrated Development Environment supports a plugin architecture that can easily extend the feature set of the application. MBS FileMaker Plugin 11.0 has been updated and now includes over 6400 different functions, and the versatile plugin has gained more new functions:
This release adds more Drag & Drop support to our plugin. For both macOS and Windows you can now attach a drop area to a whole window with our new DragDrop.AttachToWindow function. Every item dropped will trigger the script, so you can process the drop as you like, e.g. import the files into container fields. Beside accepting drops you can now use the control as a drag source. Just pass a list of files to DragDrop.SetFilePathsToDrag function to let the user drag those files to the desktop or other applications. Use DragDrop.SetDragImage function to provide a picture to show while drag runs.
DynaPDF got updated to newer version and we now include a DynaPDF.SaveAndSignFileExt function to sign PDF files with digital keys with 2048 or 4096 bits in addition to 1024 bits. With a page break expression set using DynaPDF.SetPageBreakExpression function you can define what happens if DynaPDF.WriteFText or DynaPDF.WriteStyledText filled the text rectangle and need a new text rectangle. This allows to continue text output in a new column or a new page. To set color values instead of color components, you can now use DynaPDF.SetFillColorValue and DynaPDF.SetStrokeColorValue functions and pass a value you got from DynaPDF.Lab, DynaPDF.CMYK or DynaPDF.RGB functions. You can now specify a line spacing (leading) when converting styled text from FileMaker to DynaPDF syntax.
Our ListDialog functions go upgraded with a new filter field. It allows the user to search within the list and filter to the entry they look for. You decide whether the filter field is shown and what is the text and placeholder for it.
The SyntaxColoring functions got improved with newer color set for dark mode. You may need to use SyntaxColoring.FactoryDefaults to reset the colors. Our if/loop highlighting can better find matching exit loop even if it is within an If block. The bracket highlight and syntax highlighting got tuned for Big Sur.
You can now control the toolbar style ad display mode for Big Sur. With SystemInfo.IsiOSAppOnMac you can detect whether your FileMaker iOS SDK app runs on macOS. QuickList.SortWith can now sort by number. The EmailParser.HTMLToPlainText function is improved to better convert HTML to text.
Finally we updated SQLite library to version 3.34.0, curl to 7.74.0, DynaPDF to 126.96.36.199, LibXL to 3.9.3, SQLAPI to 5.1.3 and Xcode to version 12.3.
See release notes for a complete list of changes.
More details in the release notes. Please take the time to check our 600 example databases and check where you can use our plugin features in your solutions.
* macOS 10.9 or later, including macOS 11.0 Big Sur
* Windows 7 and newer, including Windows 10 and Windows Server 2020
* FileMaker Cloud for AWS (64-bit Linux)
* FileMaker Pro 7 to 19.2
* FileMaker iOS SDK 16 to 19
* FileMaker Server for Linux, Windows oder macOS
Pricing and Availability:
MBS FileMaker Plugin is available directly from the MonkeyBread Software website with licenses starting at just $149 (USD). You can just download and try the plugin without a license or request a trail license. Not all functions are available in all platforms, please check specifications. Please join us on the next conferences and visit our booth.
MBS FileMaker Plugin Website:
Download Free Trial:
Events and conferences:
Located in beautiful Nickenich, Germany, MonkeyBread Software is a privately held company founded in 2000 by Christian Schmitz. MonkeyBread Software focuses on the Macintosh, Linux and Windows platforms. With over twenty years as a software developer, Christian's aim is developing unique and useful utilities, complemented by first-class customer support.
Copyright 2000-2020 Christian Schmitz Software GmbH.
MonkeyBread Software is a registered trademark of Christian Schmitz, Nickenich. All Rights Reserved. Apple, and the Apple logo are registered trademarks of Apple Computer in the U.S. and/or other countries. FileMaker Pro and FileMaker are trademarks of Claris International, Inc. Other trademarks and registered trademarks may be the property of their respective owners.
As you may know we have a great Optimize command for DynaPDF. You can use it on PDF documents in both FileMaker and Xojo plugins. Over time the command got more and more powerful and we like to write here about some of the features.
In general the function rebuilds the content stream of all pages, templates, patterns, annotations, and form fields. This may remove errors in the content stream and produce a consistent document.
When you specify the flags, the default flag value (0) just rebuilds the content stream and fixes errors. You may specify "InMemory" to have changes made in a way, that the PDF is in memory and not flushed to the current output. Normally you may not notice the difference, but if you like to continue writing to the PDF, the memory flag is needed.
The Optimize function can reduce the file size of PDF files. You can pass the ScaleImages flag and then all images are checked. You can define a minimum and target resolution for images. All pictures with at least the minimum resolution are checked. This avoids that we look on icons for example and only process pictures with a significant resolution. DynaPDF scales the images down to the target resolution and compresses them with the compression algorithm you specify, usually JPEG. If the final picture is smaller in size, we store it, otherwise we keep the original image. The reason is that often one bit tiff images can be smaller than a reduced resolution JPEG file.
You can pass flag SkipMaskedImages to skip masked images as JPEG compression may not work well with pictures, where a specific color is used to mark transparency. The check whether new picture is smaller than original image can be disabled via NoImageSizeCheck flag.
If you like to get images compressed with JBIG2, you can use CompressWithJBIG2 flag. This can drastically reduce the file size since JBIG2 compression achieves much higher compression rates than any other 1 bit image filter that PDF supports. The JBIG2 compression filter in DynaPDF is lossless, that means the original image quality will be preserved. Great to combine with ConvertGrayTo1Bit flag discussed below.
The names for links in the PDF may often have names from the original content. For example our documentation uses the function names there as link names. But this can be optimized with the NewLinkNames flag and rename the internal link names with a running counter. This saves a few bytes for each link, which can sum up with thousands of link names.
Some drawing paths have an no-op operator on the end. Instead of defining a path and not using it, we can remove the definition. This usually happens in a lot of tools to create PDFs, as paths are defined automatically. e.g. you may have a rectangle to group items on the layout and the rectangle is not visible as it has no stroke and no fill. The resulting path is there, but has no output.
If you pass FlattenLayers flag, all the layers may get flattened and non visible layers may get removed. As some layers may have content behind other layers, the invisible paths check above may kick in and remove content.
See also FlattenAnnots and FlattenForm functions.
The PDF may contain additional things, which can safely be removed. This includes private data from applications like Indesign or Adobe Illustrator. Those store details for editing of the PDF with the PDF as a BLOB. We can skip this data and get a smaller PDF size. Usually a PDF viewer will ignore any item it doesn't understand.
We can remove thumbnails embedded in the pictures as those will be generated in the viewer if needed. Same for alternative representations of images. For example an application may include a CMYK and a RGB representation and we can remove one (the one marked as alternative).
Convert to colorspace
Beside optimization, we can do some extra operations like converting colors to other color spaces. This includes converting to grayscale, RGB or CMYK. If you like to convert a PDF to grayscale, converting colors here may be useful. Otherwise if you have to send a PDF to a printer, you can convert to CMYK. Usually you don't need this as the printer will raster the PDF in CMYK color space. Converting CMYK content to RGB may reduce size as images have only 3 instead of 4 color spaces.
The flag ConvertAllColors allows to convert separation, DeviceN and NChannel color spaces to RGB/CMYK colors. This usually means you loose color information as the alternative colors will be used and those are specified in RGB, CMYK or LAB color spaces. For example a printer may have cyan, magenta, yellow, black and a special colors like gold and silver colors. An area marked with a Device color like gold will be printed with the gold ink to produce the shiny effect on the paper. Replacing those colors with their alternative CMYK color will remove that and the color is then printer with a mixture of yellow.
Finally the flag ConvertGrayTo1Bit can be used to convert colors to black and white. For this you can pass UseOtsuFilter flag to request to use Otsu filter.
Convert Text to Outlines
Recently added in the last weeks, DynaPDF can now convert text to outlines. This removes fonts and text information from the PDF and leaves the content as vector graphics. You can still read it as human, but a computer needs OCR to get back text.
Optionally you can pass ConvNonEmbFontsOnly flag to limit the conversion of text to outlines only for non embedded files. This way a PDF referencing fonts on your computer can convert those to outlines. Great to email your PDF to printer shop, where they don't have the required font and you can still get your PDF printed well.
Annotations and form fields are not affected by the conversion. In order to consider these objects too it is possible to flatten all annotations and form fields before calling Optimize. See FlattenAnnots and FlattenForm functions.
The flags above can be combined in various ways. In general Optimize should be called at the end of your PDF processing just before outputting the PDF document. Our plugin may render preview and close the PDF file.
To use the Optimize function, you need a DynaPDF license with Pro or Enterprise level. Starter or Lite versions are not enough.
Without a license key you can test this feature and see how it works.
For more details, please check the DynaPDF manual on the Optimize function. For FileMaker specific notes, please check DynaPDF.Optimize function in our documentation. For Xojo specific things, please check Optimize function in DynaPDFMBS class.
Check also DuplicateCheck flag for SetImportFlags2 function to enable duplication check. This helps to reduce the file size as duplicate font, image, templates and extended graphics state are replaced with references to first one.
Please do not hesitate to contact us with your questions.
Updated internet plug-in is compatible with FileMaker 19 and macOS 11.0
Lienden, the Netherlands, December 18, 2020–Troi today announced the immediate availability of Troi URL Plug-in 7.0 for FileMaker Pro 19. This is a maintenance update which is tested and made compatible with Claris FileMaker Pro 19 and macOS 11.0.
Improvements in Troi URL Plug-in version 7.0
Troi URL Plug-in 7.0 has the following changes and improvements:
Tested and made compatible with Claris FileMaker Pro 19, including FileMaker Pro 19.1.3 and 19.2. Tested and made compatible with macOS 10.15 (Catalina) and macOS 11.0 (Big Sur). Tested and made compatible with Windows 10 version 20H2 (October 2020 Update), version 1909 (November 2019 Update) and version 2004 (May 2020 Update). Added new switch “-ImageFileName” to the TURL_GetLastProperties function, which will return the filename of the last image downloaded. (macOS) Improved compatibility when running FileMaker Pro 19 in dark mode, the flash dialog is now more visible. (macOS) Improved loading the plug-in with runtime apps created with FileMaker Pro 18. (macOS) Modernized the plug-in. It now uses a more modern framework. (macOS) Improved error reporting when there is a problem loading the plug-in. (macOS) If the plug-in can’t load a bundle at start-up, the plug-in will now write a detailed error to the system.log. See the Console.app in this case (search for FileMaker in the system.log). IMPORTANT (macOS only) The minimum supported FileMaker version is now FileMaker Pro 15. Also the minimum supported Mac OS version is now macOS 10.13 (High Sierra). Several other bug fixes and further (security) improvements. Fixed a bug in the TURL_Get function, when getting images a slash could be added at the start of the name of the image, when storing the image in a container. Improved the FillForm.fmp12 example. Modernized the OAuthWebService.fmp12 example. Small cosmetic improvement of the Regifunc.fmp12 example. More detailed information on all changes and improvements can be found on the URL Plug-in page.
You can download the new version there.
Version 7 needs a new registration string. Upgrading to version 7 is free for all customers who bought a license for version 6 on or after March 20, 2019. Eligible users will be sent a new registration code.
Upgrades from older versions are available from US $ 49. You can order upgrades from our shop.
Who Viewed the Topic