TX Text Control is available in two versions: Classic and Core. Both editions share the same mission of delivering powerful document processing capabilities to .NET developers, but they are designed for different application scenarios. Depending on your platform, deployment model, and performance expectations, one version may be more suitable than the other. This article clarifies the differences between the two versions to help you decide which to use for your next project.
Classic vs Core: What's the Difference?
TX Text Control Classic is our original, mature document processing engine. It's a Windows-only library that leverages native Win32 APIs and GDI+ rendering. It supports .NET Framework and .NET on Windows and is ideal for desktop applications or Windows-based server environments. The rendering is based on the system's native Windows APIs and installed fonts.
TX Text Control Core, introduced in version 33.0, is a platform-independent version of the TX Text Control engine. Designed for .NET 8 and later, it is available as a NuGet package. Unlike Classic, Core is not tied to the Windows rendering engine. This allows it to run on Windows and Linux, including Docker containers, without requiring system fonts or GDI.
Deployment and Dependencies
Version 33.0 of TX Text Control Core offers a redesigned NuGet structure. The updated packaging minimizes dependencies and separates platform-specific functionality into dedicated folders. These changes improve clarity, reduce bloat, and simplify deployment.
For instance, Linux environments don't require Windows-specific components and can be deployed without platform-native DLLs. This modular approach also reduces Docker container image sizes and prevents the installation of unnecessary libraries.
In contrast, TX Text Control Classic requires a Windows environment and cannot be used in cross-platform scenarios or in containerized environments running on Linux.
When deploying created applications, the Windows-only version automatically includes all the necessary .NET assemblies and Windows-specific dependencies. In contrast, the new cross-platform version publishes all .NET assemblies compiled for .NET 8, as well as platform-specific dependencies. This ensures compatibility with win-x64 and linux-x64 environments.
Feature | TX Text Control Classic | TX Text Control Core |
---|---|---|
Platform | Windows only | Cross-platform (Windows, Linux) |
Rendering Engine | GDI-based | SVG-based |
Deployment Model | Windows applications, server environments | .NET 8+ applications, Docker containers |
NuGet Packaging | Single package with Windows dependencies | Modular packages with platform-specific dependencies |
Font Dependencies | Requires system fonts | Internal font rendering, deploy separate folder |
Rendering Engine: From GDI to SVG
One of the most significant changes in TX Text Control Core is replacing the GDI-based rendering engine with an SVG-based rendering model.
TX Text Control Classic relies on the Windows Graphics Device Interface (GDI) for all rendering tasks. This includes layout, pagination, and drawing text and graphical elements. Consequently, TX Text Control Classic depends on the availability of Windows system fonts and is tightly coupled to the Windows operating system.
TX Text Control Core uses a platform-independent rendering engine that converts all content to Scalable Vector Graphics (SVG). This change eliminates dependency on the Windows graphics stack, making rendering deterministic across platforms. The output is identical when running on Windows or Linux, and no system fonts are required.
The SVG rendering model provides full control over layout and visual output, ensuring pixel-perfect rendering in environments such as Docker containers where Windows-specific APIs and fonts are unavailable.
Performance Considerations
In a recent benchmark, we compared the performance of the new TX Text Control Core version with that of the classic Windows-only version. Using a C# console tool, we simulated real-world document processing tasks, including table and image insertion and text formatting. We executed these operations multiple times on both Windows 11 and in a Linux-based Docker container. Our goal was to measure processing times and evaluate the performance of the new Core version across platforms.
Learn More
With the release of the new core version of TX Text Control, we set out to benchmark its performance against the classic version on both Windows and Linux environments. This comparison provides valuable insights into speed, efficiency and cross-platform capabilities.
Benchmarking TX Text Control: Classic vs. Core on Windows and Linux
The performance results speak for themselves. Table insertion time dropped by 33.8% on Windows and by 35.2% on Linux. Image insertion, which previously took nearly a full second, now takes just 40 milliseconds on Windows and 34 milliseconds on Linux - an improvement of over 95%. Similarly, text formatting operations were optimized, reducing execution times from 1,783 milliseconds to under 100 milliseconds on both platforms. These results clearly demonstrate the performance advantages of TX Text Control Core, making it the ideal choice for modern, high-performance document processing applications.
The next figure shows how much faster the Core version is compared to the Classic version.
Summary: When to Use Which Version?
In short, TX Text Control Classic is ideal for traditional Windows applications requiring deep integration with the Windows operating system and its native APIs.
The introduction of SVG-based rendering in TX Text Control Core represents a significant advancement in cross-platform compatibility and performance. By eliminating reliance on Windows graphics APIs, Core facilitates document generation workflows that are faster, more consistent, and more portable.
Classic remains a solid choice for legacy applications that run exclusively on Windows. However, for modern .NET 8+ applications, TX Text Control Core is the future, offering higher throughput, platform flexibility, and a next-generation rendering engine.
Scenario | Recommended Version |
---|---|
Windows-only server distributions | Classic |
Cross-platform applications (Windows, Linux) | Core |
High-performance document processing | Core |
Legacy applications with existing Classic integration | Classic |
New .NET 8+ applications | Core |
Containerized deployments (Docker) | Core |