### Install FastReport via NuGet
Source: https://github.com/fastreports/fastreport.documentation/blob/master/CompilationInstallation.md
Adds the FastReport.OpenSource and FastReport.OpenSource.Web packages to a project using the NuGet Package Manager.
```powershell
Install-Package FastReport.OpenSource
Install-Package FastReport.OpenSource.Web
```
--------------------------------
### FastReport Start Method
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Export.ExportBase.html
API documentation for the Start method, which is called when the export process begins in FastReport.
```APIDOC
Start()
- This method is called when the export starts.
```
--------------------------------
### Compile FastReport on Windows
Source: https://github.com/fastreports/fastreport.documentation/blob/master/CompilationInstallation.md
Clones the FastReport repository, navigates to the directory, and executes the pack script for Windows.
```sh
git clone https://github.com/FastReports/FastReport.git
cd FastReport
Tools\pack.bat
```
--------------------------------
### C# Example for RegisterData with IBaseCubeLink
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Report.html
Demonstrates loading a report and registering an IBaseCubeLink object named 'Orders'.
```cs
report1.Load("report.frx");
report1.RegisterData(myCubeLink, "Orders");
```
--------------------------------
### MyRes Class Usage Example
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Utils.MyRes.html
Demonstrates how to use the MyRes class to access resource strings, comparing it to the direct usage of Res.Get. This example shows the benefit of initializing MyRes with a common resource branch.
```C#
using System;
using System.Windows.Forms;
// using the Res.Get method
// miKeepTogether = new ToolStripMenuItem(Res.Get("ComponentMenu,HeaderBand,KeepTogether"));
// miResetPageNumber = new ToolStripMenuItem(Res.Get("ComponentMenu,HeaderBand,ResetPageNumber"));
// miRepeatOnEveryPage = new ToolStripMenuItem(Res.Get("ComponentMenu,HeaderBand,RepeatOnEveryPage"));
// using MyRes.Get method
MyRes res = new MyRes("ComponentMenu,HeaderBand");
ToolStripMenuItem miKeepTogether = new ToolStripMenuItem(res.Get("KeepTogether"));
ToolStripMenuItem miResetPageNumber = new ToolStripMenuItem(res.Get("ResetPageNumber"));
ToolStripMenuItem miRepeatOnEveryPage = new ToolStripMenuItem(res.Get("RepeatOnEveryPage"));
```
--------------------------------
### StartNewPage Method
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Engine.ReportEngine.html
Forces the start of a new page in the report.
```C#
public void StartNewPage()
```
--------------------------------
### Compile FastReport on Linux
Source: https://github.com/fastreports/fastreport.documentation/blob/master/CompilationInstallation.md
Clones the FastReport repository, navigates to the directory, makes the pack script executable, and runs it for Linux.
```sh
git clone https://github.com/FastReports/FastReport.git
cd FastReport
chmod 777 Tools/pack.sh && ./Tools/pack.sh
```
--------------------------------
### Basic Expression Examples
Source: https://github.com/fastreports/fastreport.documentation/blob/master/Expressions.md
Demonstrates simple arithmetic and referencing report object properties.
```C#
2 + 2
```
```C#
Text1.Height
```
```C#
Report.FileName
```
```C#
Report.ReportInfo.Name
```
--------------------------------
### C# Example for RegisterData with DataView
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Report.html
Shows how to load a report and register a DataView named 'OrdersView'.
```cs
report1.Load("report.frx");
report1.RegisterData(myDataView, "OrdersView");
```
--------------------------------
### C# Example for RegisterData
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Report.html
Illustrates how to load a report from a file and register a DataTable named 'Orders' to be used within the report.
```cs
report1.Load("report.frx");
report1.RegisterData(dataSet1.Tables["Orders"], "Orders");
```
--------------------------------
### GraphicCache Usage Example
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.GraphicCache.html
Demonstrates how to use the GraphicCache to retrieve and utilize graphics objects like brushes and pens for drawing rectangles. It shows how to get a brush by color and a pen by color, width, and dash style.
```C#
public void Draw(FRPaintEventArgs e)
{
Brush brush = e.Cache.GetBrush(BackColor);
Pen pen = e.Cache.GetPen(BorderColor, 1, BorderStyle);
e.Graphics.FillRectangle(brush, Bounds);
e.Graphics.DrawRectangle(pen, Bounds);
}
```
--------------------------------
### Create and Run a Simple Report
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Report.html
Example demonstrating how to create a Report instance, load a report from a file, register application data, and display the report.
```C#
Report report = new Report();
report.Load("reportfile.frx");
report.RegisterData(application_dataset);
report.Show();
```
--------------------------------
### GetExpressions Method
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Base.html
Gets all expressions contained within an object. This method is called by FastReport before running a report to collect and compile expressions. It should not be called directly and can be overridden for custom components. For example, TextObject parses its text to return expressions.
```csharp
public virtual string[] GetExpressions()
Returns: System.String[] - Array of expressions or null if object contains no expressions.
```
--------------------------------
### SymbologyName Examples
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Barcode.BarcodeObject.html
Example of setting the SymbologyName for a barcode and configuring its compaction mode.
```C#
barcode.SymbologyName = "PDF417";
(barcode.Barcode as BarcodePDF417).CompactionMode = CompactionMode.Text;
```
--------------------------------
### Working with Report Component in C#
Source: https://github.com/fastreports/fastreport.documentation/blob/master/UsingReport.md
Demonstrates the basic workflow for using the Report component in C#. This includes creating a Report object, loading a report file ('report1.frx'), registering a DataSet named 'NorthWind', and displaying the report. Ensure the 'report1.frx' file and the DataSet are correctly set up.
```csharp
using (Report report = new Report())
{
report.Load("report1.frx");
report.RegisterData(dataSet1, "NorthWind");
report.Show();
}
```
--------------------------------
### FastReport Base Object - Parent Property Remarks and Example
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Base.html
Explains the importance of the Parent property for object hierarchy and provides an example of setting the parent for a ReportPage.
```C#
// Each report object must have a parent in order to appear in the report.
// Parent must be able to contain objects of such type.
// Another way (preferred) to set a parent is to use specific properties of the parent object.
// For example, the Report object has the Pages collection.
// To add a new page to the report, use the following code: report1.Pages.Add(new ReportPage());
Report report1;
ReportPage page = new ReportPage();
page.Parent = report1;
```
--------------------------------
### Configure FastReport.Web in Startup
Source: https://github.com/fastreports/fastreport.documentation/blob/master/WebReport.md
This C# code demonstrates how to register the FastReport.Web middleware in the Configure method of the Startup class in an ASP.NET Core application.
```csharp
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
...
app.UseFastReport();
...
}
```
--------------------------------
### BarcodePDF417 Configuration Example
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Barcode.BarcodePDF417.html
This example demonstrates how to instantiate and configure a BarcodePDF417 object for use with a BarcodeObject in FastReport. It shows setting the compaction mode for text data.
```C#
BarcodeObject barcode;
...
barcode.Barcode = new BarcodePDF417();
(barcode.Barcode as BarcodePDF417).CompactionMode = PDF417CompactionMode.Text;
```
--------------------------------
### FastReport Base Object - AssignAll Method Remarks and Example
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Base.html
Explains the AssignAll method, which copies object states including child objects, and provides a usage example.
```C#
// This method is similar to Assign(Base) method. It copies child objects as well.
Report report1;
Report report2 = new Report();
// copy all report settings and objects
report2.AssignAll(report1);
```
--------------------------------
### Plugin Configuration Example
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Utils.AssemblyInitializerBase.html
Demonstrates how to configure FastReport to load external plugin DLLs by specifying their paths in the configuration file.
```xml
```
--------------------------------
### Unit Conversion Examples
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Utils.Units.html
Demonstrates how to use the Units class constants to perform conversions between pixels and millimeters. These examples show the typical usage pattern for converting values.
```C#
// To convert pixels to millimeters:
// valueInMillimeters = valueInPixels / Units.Millimeters;
// To convert millimeters to pixels:
// valueInPixels = valueInMillimeters * Units.Millimeters;
```
--------------------------------
### FastReport Resources
Source: https://github.com/fastreports/fastreport.documentation/blob/master/COMPARISON.md
This section lists key resources for FastReport products, including links to the GitHub repository for FastReport Open Source and the official product pages for FastReport .NET and FastReport Online Designer.
```markdown
## Resources
[FastReport Open Source](https://github.com/FastReports/FastReport)
[FastReport .NET and FastReport Core home page](https://www.fast-report.com/en/product/fast-report-net/)
[FastReport Online Designer](https://www.fast-report.com/en/product/fast-report-online-designer/)
```
--------------------------------
### PolyLineObject C# Implementation Example
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.PolyLineObject.html
Example demonstrating how to use the PolyLineObject class in C# to create and manipulate a polyline, including setting properties and adding points.
```C#
using FastReport;
using FastReport.Data;
using System.Drawing;
// Assuming you have a report object and a page
Report report = new Report();
// ... load report or create components ...
// Create a new PolyLineObject
PolyLineObject polyline = new PolyLineObject();
// Set properties
polyline.Name = "MyPolyline";
polyline.CenterX = 100;
polyline.CenterY = 50;
// Add points (example)
// Note: The addPoint method is protected and intended for internal use or specific scenarios.
// For direct manipulation, consider using the Points collection if available and documented.
// polyline.addPoint(0, 0, 0); // Example of adding a starting point
// polyline.addPoint(50, 50, 1); // Example of adding another point
// Set border properties
polyline.Border.Width = 2;
polyline.Border.Style = FastReport.Border.Styles.Solid;
polyline.Border.Color = Color.Blue;
// Add the polyline to a report page (example)
// report.Pages.Add(page);
// page.ReportComponents.Add(polyline);
// Example of assigning properties from another PolyLineObject
// PolyLineObject anotherPolyline = new PolyLineObject();
// anotherPolyline.CenterX = 200;
// polyline.Assign(anotherPolyline);
// Example of using AssignAll to copy properties including child objects
// PolyLineObject polylineWithChildren = new PolyLineObject();
// polylineWithChildren.CenterX = 300;
// polyline.AssignAll(polylineWithChildren);
// Accessing points (if Points collection is public and usable)
// var points = polyline.Points;
// points.Add(new PolyLineObject.PolyPoint(0, 0, 0));
// points.Add(new PolyLineObject.PolyPoint(10, 10, 1));
```
--------------------------------
### PreparedPages Constructor
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Preview.PreparedPages.html
Initializes a new instance of the PreparedPages class with a specified Report object.
```APIDOC
Constructors
PreparedPages(Report)
Creates the pages of a prepared report
Declaration:
public PreparedPages(Report report)
Parameters:
Type
Name
Description
[Report](FastReport.Report.html)
report
```
--------------------------------
### FastReport Base Object - Assign Method Remarks and Example
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Base.html
Details the Assign method for copying properties from a similar object, excluding child objects, and provides a usage example.
```C#
// Call Assign to copy the properties from another object of the same type.
// The standard form of a call to Assign is destination.Assign(source);
// which tells the destination object to copy the contents of the source object to itself.
// In this method, all child objects are ignored. If you want to copy child objects, use the AssignAll(Base) method.
Report report1;
Report report2 = new Report();
// copy all report settings, do not copy report objects
report2.Assign(report1);
```
--------------------------------
### FRReader Deserialize Example
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Utils.FRReader.html
An example demonstrating the usage of FRReader methods like ReadProperties, ReadChildren, NextItem, and Read for deserializing report objects, including handling simple properties, complex properties, and collections.
```C#
public void Deserialize(FRReader reader)
{
// read simple properties like "Text", complex properties like "Border.Lines"
reader.ReadProperties(this);
// moves the current reader item
while (reader.NextItem())
{
// read the "Styles" collection
if (String.Compare(reader.ItemName, "Styles", true) == 0)
reader.Read(Styles);
else if (reader.ReadChildren)
{
// if read of children is enabled, read them
Base obj = reader.Read();
if (obj != null)
obj.Parent = this;
}
}
}
```
--------------------------------
### Create Report Programmatically
Source: https://github.com/fastreports/fastreport.documentation/blob/master/CreatingReportUsingCode.md
Demonstrates the process of creating a report object, registering a data source, setting up page elements such as ReportTitle, GroupHeaderBand, DataBand, and GroupFooterBand, and adding TextObjects to display data and totals.
```csharp
Report report = new Report();
// register the "Products" table
report.RegisterData(dataSet1.Tables["Products"], "Products");
// enable it to use in a report
report.GetDataSource("Products").Enabled = true;
// create A4 page with all margins set to 1cm
ReportPage page1 = new ReportPage();
page1.Name = "Page1";
report.Pages.Add(page1);
// create ReportTitle band
page1.ReportTitle = new ReportTitleBand();
page1.ReportTitle.Name = "ReportTitle1";
// set its height to 1.5cm
page1.ReportTitle.Height = Units.Centimeters * 1.5f;
// create group header
GroupHeaderBand group1 = new GroupHeaderBand();
group1.Name = "GroupHeader1";
group1.Height = Units.Centimeters * 1;
// set group condition
group1.Condition = "[Products.ProductName].Substring(0, 1)";
// add group to the page.Bands collection
page1.Bands.Add(group1);
// create group footer
group1.GroupFooter = new GroupFooterBand();
group1.GroupFooter.Name = "GroupFooter1";
group1.GroupFooter.Height = Units.Centimeters * 1;
// create DataBand
DataBand data1 = new DataBand();
data1.Name = "Data1";
data1.Height = Units.Centimeters * 0.5f;
// set data source
data1.DataSource = report.GetDataSource("Products");
// connect databand to a group
group1.Data = data1;
// create "Text" objects
// report title
TextObject text1 = new TextObject();
text1.Name = "Text1";
// set bounds
text1.Bounds = new RectangleF(0, 0,
Units.Centimeters * 19, Units.Centimeters * 1);
// set text
text1.Text = "PRODUCTS";
// set appearance
text1.HorzAlign = HorzAlign.Center;
text1.Font = new Font("Tahoma", 14, FontStyle.Bold);
// add it to ReportTitle
page1.ReportTitle.Objects.Add(text1);
// group
TextObject text2 = new TextObject();
text2.Name = "Text2";
text2.Bounds = new RectangleF(0, 0,
Units.Centimeters * 2, Units.Centimeters * 1);
text2.Text = "[[Products.ProductName].Substring(0, 1)]";
text2.Font = new Font("Tahoma", 10, FontStyle.Bold);
// add it to GroupHeader
group1.Objects.Add(text2);
// data band
TextObject text3 = new TextObject();
text3.Name = "Text3";
text3.Bounds = new RectangleF(0, 0,
Units.Centimeters * 10, Units.Centimeters * 0.5f);
text3.Text = "[Products.ProductName]";
text3.Font = new Font("Tahoma", 8);
// add it to DataBand
data1.Objects.Add(text3);
// group footer
TextObject text4 = new TextObject();
text4.Name = "Text4";
text4.Bounds = new RectangleF(0, 0,
Units.Centimeters * 10, Units.Centimeters * 0.5f);
text4.Text = "Count: [CountOfProducts]";
text4.Font = new Font("Tahoma", 8, FontStyle.Bold);
// add it to GroupFooter
group1.GroupFooter.Objects.Add(text4);
// add a total
Total groupTotal = new Total();
groupTotal.Name = "CountOfProducts";
groupTotal.TotalType = TotalType.Count;
groupTotal.Evaluator = data1;
groupTotal.PrintOn = group1.Footer;
// add it to report totals
report.Dictionary.Totals.Add(groupTotal);
// run the report
report.Prepare();
```
--------------------------------
### XmlDocument C# Example - Loading and Saving
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Utils.XmlDocument.html
Demonstrates how to use the XmlDocument class in C# to load an XML document from a file and save it to another file. This example illustrates basic file I/O operations with the class.
```C#
using FastReport.Utils;
using System.IO;
// Create an instance of XmlDocument
XmlDocument xmlDoc = new XmlDocument();
// Load XML from a file
try {
xmlDoc.Load("input.xml");
}
catch (FileNotFoundException) {
Console.WriteLine("Input file not found.");
return;
}
// Access and modify the document if needed
// For example, get the root node:
// XmlItem rootNode = xmlDoc.Root;
// Save XML to a file
try {
xmlDoc.Save("output.xml");
Console.WriteLine("XML document saved successfully.");
}
catch (Exception ex) {
Console.WriteLine($"Error saving XML document: {ex.Message}");
}
// Dispose the document to release resources
xmlDoc.Dispose();
```
--------------------------------
### StartNewPage Property
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.OverlayBand.html
Represents whether a new page should be started. This property is not relevant to the current class.
```APIDOC
StartNewPage:
public bool StartNewPage { get; set; }
Type: System.Boolean
Description: Not relevant to this class.
```
--------------------------------
### Custom Assembly Initializer Example
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Utils.AssemblyInitializerBase.html
Shows how to create a custom assembly initializer by inheriting from AssemblyInitializerBase and registering custom components such as wizards, export filters, and report objects.
```cs
public class MyAssemblyInitializer : AssemblyInitializerBase
{
public MyAssemblyInitializer()
{
// register own wizard
RegisteredObjects.AddWizard(typeof(MyWizard), myWizBmp, "My Wizard", true);
// register own export filter
RegisteredObjects.AddExport(typeof(MyExport), "My Export");
// register own report object
RegisteredObjects.Add(typeof(MyObject), "ReportPage", myObjBmp, "My Object");
}
}
```
--------------------------------
### Parameters Property
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Report.html
Gets the collection of parameters defined for the report.
```C#
public ParameterCollection Parameters { get; }
```
--------------------------------
### Component Initialization and Data Handling
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Data.DataSourceBase.html
This section covers methods for initializing components, loading data, and navigating through data rows within the FastReport framework. It includes InitializeComponent, InitSchema, LoadData, Next, and Prior methods.
```APIDOC
InitializeComponent()
public override void InitializeComponent()
Initializes the object before running a report.
Overrides: FastReport.Data.DataComponentBase.InitializeComponent()
Remarks: This method is used by the report engine, do not call it directly.
InitSchema()
public abstract void InitSchema()
Initializes the datasource schema.
Remarks: This method is used to support the FastReport.Net infrastructure. Do not call it directly.
LoadData(ArrayList)
public abstract void LoadData(ArrayList rows)
Loads the datasource with data.
Parameters:
Type: System.Collections.ArrayList
Name: rows
Description: Rows to fill with data.
Remarks: This method is used to support the FastReport.Net infrastructure. Do not call it directly.
Next()
public void Next()
Navigates to the next row.
Remarks: You should initialize the datasource by the Init method before using this method.
Prior()
public void Prior()
Navigates to the prior row.
Remarks: You should initialize the datasource by the Init method before using this method.
```
--------------------------------
### StartNewColumn Method
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Engine.ReportEngine.html
Initiates a new column in the report layout.
```C#
public void StartNewColumn()
```
--------------------------------
### Assembly Initialization and Compilation Helper
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Utils.html
Includes AssemblyInitializerBase for plugin assembly initialization and CompileHelper for compiling source code with specified assembly paths.
```C#
namespace FastReport.Utils {
public abstract class AssemblyInitializerBase { /* Base class for plugin initializers */ }
public class CompileHelper { /* Class helper for compiling source code */ }
}
```
--------------------------------
### WidthRatio Property
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Utils.AdvancedTextRenderer.html
Gets the width ratio for the text. This is a read-only property.
```C#
public float WidthRatio { get; }
```
--------------------------------
### Instantiate and Show Report Class
Source: https://github.com/fastreports/fastreport.documentation/blob/master/StoringLoadingReport.md
Demonstrates how to create an instance of a report that has been saved as a C# or VB.NET class file and then display it. This approach allows for debugging and direct manipulation of the report object.
```csharp
SimpleListReport report = new SimpleListReport();
report.Show();
```
--------------------------------
### GlassFill Class Overview
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.GlassFill.html
Provides documentation for the GlassFill class, including its inheritance, namespace, and assembly information. It outlines the constructors, properties (Blend, Color, Hatch), and methods (Clone, CreateBrush, Draw, Equals, GetHashCode, Serialize) available for managing glass fill effects.
```APIDOC
Class GlassFill
Inheritance:
System.Object
[FillBase](FastReport.FillBase.html)
GlassFill
Namespace: FastReport
Assembly: FastReport.OpenSource.dll
Syntax:
public class GlassFill : FillBase
Constructors:
GlassFill()
Initializes the [GlassFill](FastReport.GlassFill.html) class with default settings.
GlassFill(Color color, float blend, bool hatch)
Initializes the [GlassFill](FastReport.GlassFill.html) class with given color, blend ratio and hatch style.
Parameters:
color: Color.
blend: Blend ratio (0..1).
hatch: Display the hatch.
Properties:
Blend
Gets or sets the blend value.
Declaration:
public float Blend { get; set; }
Remarks:
Value must be between 0 and 1.
Color
Gets or sets the fill color.
Declaration:
public Color Color { get; set; }
Hatch
Gets or sets a value determines whether to draw a hatch or not.
Declaration:
public bool Hatch { get; set; }
Methods:
Clone()
Creates exact copy of this fill.
Declaration:
public override FillBase Clone()
Returns:
[FillBase](FastReport.FillBase.html)
Copy of this object.
Overrides:
[FillBase.Clone()](FastReport.FillBase.html#FastReport_FillBase_Clone)
CreateBrush(RectangleF rect)
Creates the GDI+ Brush object.
Declaration:
public override Brush CreateBrush(RectangleF rect)
Parameters:
rect: Drawing rectangle.
Returns:
Brush
Brush object.
Overrides:
[FillBase.CreateBrush(RectangleF)](FastReport.FillBase.html#FastReport_FillBase_CreateBrush_RectangleF_)
Draw(FRPaintEventArgs e, RectangleF rect)
Fills the specified rectangle.
Declaration:
public override void Draw(FRPaintEventArgs e, RectangleF rect)
Parameters:
e: Draw event arguments.
rect: Drawing rectangle.
Overrides:
[FillBase.Draw(FRPaintEventArgs, RectangleF)](FastReport.FillBase.html#FastReport_FillBase_Draw_FastReport_Utils_FRPaintEventArgs_RectangleF_)
Equals(Object obj)
Declaration:
public override bool Equals(object obj)
Parameters:
obj:
Returns:
System.Boolean
Overrides:
System.Object.Equals(System.Object)
GetHashCode()
Declaration:
public override int GetHashCode()
Returns:
System.Int32
Overrides:
System.Object.GetHashCode()
Serialize(FRWriter writer, string prefix, FillBase fill)
Serializes the fill.
Declaration:
public override void Serialize(FRWriter writer, string prefix, FillBase fill)
Parameters:
writer: Writer object.
prefix: Name of the fill property.
fill: Fill object to compare with.
Overrides:
[FillBase.Serialize(FRWriter, String, FillBase)](FastReport.FillBase.html#FastReport_FillBase_Serialize_FastReport_Utils_FRWriter_System_String_FastReport_FillBase_)
Remarks:
This method is for internal use only.
```
--------------------------------
### Operation Property
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Report.html
Gets the current report operation being performed by the report engine.
```C#
public ReportOperation Operation { get; }
```
--------------------------------
### NeedRefresh Property
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Report.html
Gets or sets the flag that indicates whether a refresh is needed.
```C#
public bool NeedRefresh { get; set; }
```
--------------------------------
### CapSettings Constructor
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.CapSettings.html
Initializes a new instance of the CapSettings class with default settings.
```APIDOC
CapSettings()
Initializes a new instance of the CapSettings class with default settings.
```
--------------------------------
### VertAlign Property
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Utils.AdvancedTextRenderer.html
Gets the vertical alignment setting for the text. This is a read-only property.
```C#
public VertAlign VertAlign { get; }
```
--------------------------------
### Paragraphs Property
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Utils.AdvancedTextRenderer.html
Gets the list of paragraphs in the text renderer. This is a read-only property.
```C#
public List Paragraphs { get; }
```
--------------------------------
### Remarks about FastReport Core
Source: https://github.com/fastreports/fastreport.documentation/blob/master/COMPARISON.md
This section provides remarks regarding the availability of FastReport Core sources and nupkg files. It clarifies that FastReport Core is included in specific editions of FastReport .NET and its demo nupkg files are available in trial and web editions.
```markdown
## Remarks about FastReport Core
FastReport Core sources and nupkg files are included in FastReport .NET Professional and Enterprise editions. FastReport Core Demo nupkg files are included in FastReport .NET Trial, Win, Win+Web editions.
```
--------------------------------
### TabSize Property
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Utils.AdvancedTextRenderer.html
Gets the size of a tab character in the text. This is a read-only property.
```C#
public float TabSize { get; }
```
--------------------------------
### TabOffset Property
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.Utils.AdvancedTextRenderer.html
Gets the offset for tab characters in the text. This is a read-only property.
```C#
public float TabOffset { get; }
```
--------------------------------
### ReportInfo Constructors
Source: https://github.com/fastreports/fastreport.documentation/blob/master/ClassReference/api/FastReport.ReportInfo.html
Provides documentation for the constructor of the ReportInfo class, which initializes a new instance with default settings.
```APIDOC
Constructors
ReportInfo()
Initializes a new instance of the ReportInfo class with default settings.
Declaration:
public ReportInfo()
```