This major update combines our core products for Delphi and Lazarus into a single ecosystem.
The Recompile utility has been removed. The functions of package rebuilding are now performed by the installer.
❗️To download the update, we recommend you uninstall all products through the old installer and then use the new one (installer). ❗️
There are new Core, Core Graphics, and Core Localization packages combining products into one ecosystem.
The product localization system has been changed. Now it does not require rebuilding packages: it is enough to install language packs during installation, add the TfrLocalizationController component, and select the desired language.
The system for editing and using styles in the report designer has been revised. The new mode allows you to: create, edit and assign styles during report design.
The created styles copy the formatting of the object by default. Changing a style affects all objects that have been assigned this style.
The new Style Table tool allows you to customize the appearance of a report using styles and switch between them on the fly.
You can:
Select style table mode;
Create new custom styles and color schemes that would fit your report;
Change already created styles of report objects to your taste;
Switch almost instantly between ready-made solutions.
Style tables are supported in a rendered report and allow you to change the report style without rebuilding. These styles are saved to the rendered report file to allow report distribution to other users. Each user can choose their style.
We have added a new container object for composite barcodes. The object has ready-made settings for composite barcodes: EAN 8+2, EAN 8+5, EAN 13+2, and EAN 13+5. The object editor offers functionality for quick compilation of your compound barcodes.
An example of barcodes used when printing price tags.
For the efficient work of multi-threaded applications, we have added the ability to print in multiple threads. Each thread can print to the printer without blocking others. This approach is efficient for applications running in print service mode.
We have improved the digital signature object for PDF export. Now you can supplement the signature with the current signed date, name, and other additional information.
The ability to override and replace the standard export dialog has been added to export filters without changes in the FastReport source codes.
Example:
uses frxExportPDFDialog; type TfrxCustomPDFExportDialog = class(TfrxPDFExportDialog) protected procedure InitControlsFromFilter(ExportFilter: TfrxBaseDialogExportFilter); override; end; procedure TfrxCustomPDFExportDialog.InitControlsFromFilter(ExportFilter: TfrxBaseDialogExportFilter); begin inherited; SignaturePage.TabVisible := False; end; procedure SetDialogClass; begin frxPDFExport1.CustomExportDialogClass := TfrxCustomPDFExportDialog; end;
We have improved and fixed the bugs in export filters. PDF export has received support for handling translucent SVG images.
Report compatibility between Lazarus and Delphi versions has been improved. The transfer of report variables between versions has been fixed.
For FastCube VCL and FastCube FMX products, we have added integration with FastScript, which we moved to a separate package. For FastScript support, it is enough to install one additional package and not rebuild all the others. We also paid attention to fixing errors in highlighting and editors.
FastCube VCL gets HiDPI support for high-resolution monitors. It supports all available RAD Studio development environment modes.
FastQueryBuilder gets package support for the latest RAD Studio versions.
RAD Studio 11 compatibility bugs have been fixed in FastReport FMX. Product optimization and performance have been improved, and internal architectural changes have been made.
Сore library
---------------
+ Added new core package with a shared code for all products
+ Added a new graphics core package with a shared code for all products
+ Added new localization packs
* Changed product localization system
Fast Report VCL
---------------
[Designer]
- Fixed Int64 support in Object Inspector
- Fixed filter behavior in the data selection dialog
- Fixed TfrxRichView frame borders in the designer
- Fixed a bug when the dropdown code completion did not copy styles from Syntax Memo
[Engine]
+ Added support for style tables and improved work with styles in the report designer
+ Added the option of simultaneous multi-threaded printing
- Fixed form scaling for additional display for Delphi 10.1 and later
- Fixed bug with parent container component interactive events
- Fixed error handling in CrossView events
- Fixed printing of current page mode
- Fixed Duplex printing for multiple copies of documents with collation enabled
[Exports]
+ Added new CustomExportDialogClass property for export filters, which allows you to override the export dialog for standard export filters
* Improved translucent SVG export in PDF export via EMF
- Fixed memory leak with embedded files in PDF export
- Fixed progress dialog in HTML export when entering the wrong page number
- Fixed export of TfrxLineView and TfrxShapeView in PPTX export
[Lazarus]
+ Added support for variable portability in templates (Delphi <--> Lazarus)
- Fixed behavior of empty TfrxPictureView in Lazarus
[Preview]
- Fixed button order in the preview
[Report object]
+ Added composite barcodes (EAN 8+2, EAN 8+5, EAN 13+2, EAN 13+5)
+ Added TfrxPictureView.LoadFromStream method
+ Added handling of Hint property (similar to TagStr)
- Fixed placement of SVG pictures in TfrxPictureView
[Resources]
* Updated Portuguese resources
* Updated Polish resources
FastReport FMX
---------------
- Fixed integer overflow error in gradient fill object
- Fixed crosstab editor bug in RAD Studio 11
FastQueryBuilder
---------------
- Added packages for new Delphi versions (RAD Studio 10-11)
FastCube
---------------
+ Added HiDPI support for high-resolution monitors
+ Added integration package with FastScript (integration does not require rebuilding of the main packages)
- Fixed bugs in highlighting rules
- Fixed Access violation error when using the component in some editors