.. role:: raw-html(raw)
    :format: html

.. |supported| image:: ../../_assets/images/green_circle.png

.. |na| image:: ../../_assets/images/grey_circle.png

.. |unsupported| image:: ../../_assets/images/red_circle.png

.. |partialsupport| image:: ../../_assets/images/gray_green_circle.png

##################
|HPSTHEN| 2025.2.0
##################


Technology Update
=================

Library Compatibility Information
---------------------------------

.. only:: not spatial

   .. csv-table::
      :header: "Library name", "Version", "Windows", "Linux", "OS X", "Android", "iOS", "Notes"
   
      "HOOPS Exchange", "2025.2.0", |supported|, |supported|, |supported|, |supported|, |supported|, "Android simulator support is limited. See this :ref:`explanation <prog_guide/0906_exchange_integration:Important note for Android developers>`."
      "HOOPS Publish", "2025.2.0", |supported|, |supported|, |unsupported|, |unsupported|, |unsupported|, "Requires SSSE3 instruction set support, Linux support is limited to C++"
      "|HCTHEN| HTML Sprocket", "2024.6.0", |supported|, |unsupported|, |unsupported|, |supported|, |supported|, "HC Sprocket only works with Visual Studio toolset 142."
      "|HCTHEN| Streaming Sprocket (HCA)", "2024.6.0", |supported|, |unsupported|, |unsupported|, |supported|, |supported|, "HC Sprocket only works with Visual Studio toolset 142."
      ".NET Framework", "4.8", |supported|, |unsupported|, |unsupported|, |unsupported|, |unsupported|, "Required for Visual Studio v14.2 libraries and samples."
      ".NET Standard", "2.0", |supported|, |unsupported|, |unsupported|, |unsupported|, |unsupported|, "Required for Visual Studio 2019 (toolset 142) and 2022 (toolset 143)."
      ".NET Core", "8.0", |supported|, |unsupported|, |unsupported|, |unsupported|, |unsupported|, "Required for Visual Studio 2022 (toolset 143)."
      "Parasolid", "35.1", |supported|, |supported|, |supported|, |unsupported|, |supported|, "For iOS platforms, support is limited to 64-bit platforms for the Parasolid Sprockets (hps_sprk_parasolid and hps_sprk_exchange_parasolid)."
      "RealDWG", "2019", |supported|, |unsupported|, |unsupported|, |unsupported|, |unsupported|, "RealDWG 2019 compatible only with Visual Studio toolset 142"
      "Qt", "5.12.7", |supported|, |supported|, |supported|, |unsupported|, |unsupported|, ""
      "SketchUp", "2023", |supported|, |unsupported|, |unsupported|, |unsupported|, |unsupported|, "VS2019 Redistributable required, and only x64 Sketchup is supported"

.. only:: spatial

   .. csv-table::
      :header: "Library name", "Version", "Windows", "Linux", "OS X", "Android", "iOS", "Notes"
   
      ".NET Framework", "4.8", |supported|, |unsupported|, |unsupported|, |unsupported|, |unsupported|, "Required for Visual Studio v14.2 libraries and samples."
      ".NET Standard", "2.0", |supported|, |unsupported|, |unsupported|, |unsupported|, |unsupported|, "Required for Visual Studio 2019 (toolset 142) and 2022 (toolset 143)."
      ".NET Core", "8.0", |supported|, |unsupported|, |unsupported|, |unsupported|, |unsupported|, "Required for Visual Studio 2022 (toolset 143)."
      "Parasolid", "35.1", |supported|, |supported|, |supported|, |unsupported|, |supported|, "For iOS platforms, support is limited to 64-bit platforms for the Parasolid Sprockets (hps_sprk_parasolid and hps_sprk_exchange_parasolid)."
      "RealDWG", "2019", |supported|, |unsupported|, |unsupported|, |unsupported|, |unsupported|, "RealDWG 2019 compatible only with Visual Studio toolset 142"
      "Qt", "5.12.7", |supported|, |supported|, |supported|, |unsupported|, |unsupported|, ""
      "SketchUp", "2023", |supported|, |unsupported|, |unsupported|, |unsupported|, |unsupported|, "VS2019 Redistributable required, and only x64 Sketchup is supported"


Features and Enhancements
=========================

Introducing the new ``CharacterAttributeKit`` feature, which allows for the configuration of individual character attributes, similar to the functionality of ``TextAttributeKit``. However, while ``TextAttributeKit`` applies to entire text blocks or segments, 
``CharacterAttributeKit`` is designed specifically for individual characters. This feature offers a distinct set of options, with some overlap, providing more granular control over character-level attributes, as follows:

* Color
* Font
* HorizontalOffset
* Invisible
* Omitted
* Rotation
* Size 
* Slant
* VerticalOffset
* WidthScale


API Changes
===========

* ``SetCharacterAttribute()`` and ``SetCharacterAttributes()`` have been added to provide the capability of controlling attributes of specific character(s) in a text string. ``SetCharacterAttributes()`` is overloaded to take either a  ``CharacterAttributeKit`` or a ``CharacterAttributKitArray``. 
* ``UnsetCharacterAttributes()`` removes per-character attributes from a text string. This is also overloaded to take either a ``CharacterAttributeKit`` or a ``CharacterAttributKitArray``.
* ``ShowCharacterAttributes()`` shows the per-character attributes set on a text string.


Fixed Bugs
==========

.. csv-table::
   :header: "Issue", "Description"
   
   "SDHV-20922", "Fix unexpected behavior when calling FitWorld"
   "SDHV-20902", "Fix performance loss when using OpenGL"
   "SDHV-20885", "Fix text display issue with TextHardwareAcceleration"
