Improved Font Substitution Process, Supported Inline Syntax Error Messages, and Improved Warnings for Image Processing

Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn

Aspose.Words for .NET logoWe are pleased to announce our next version Aspose.Words for .NET 19.2. This month’s release contains over 69 useful new features, enhancements and bug fixes. Please check the release notes to get an idea about all new features, enhancements and fixes made in this release. If you are planning to upgrade from older version of Aspose.Words to the current version, we would strongly suggest you to check the Public API and Backward Incompatible Changes section to know what APIs are changed so far.

 

Improved Font Substitution Process When Rendering Documents

Aspose.Words requires TrueType fonts when rendering documents to fixed-page formats (PDF, XPS or TIFF). However, there are situations when the exact font cannot be found and Aspose.Words must substitute a similar font instead. We have improved the font substitution process in this release of Aspose.Words. Please read the complete detail from following article.

Font Availability and Substitution

Supported Inline Syntax Error Messages into Template for LINQ Reporting Engine

By default, LINQ Reporting Engine throws an exception when encounters a template syntax error. To make things easier, the engine supports the ReportBuildOptions.InlineErrorMessages option that enables inline syntax error message into a template document at an exact position where the error occurs during runtime. For more detail, please read the following article.

Inline Syntax Error Messages into Templates

Improved Warnings for Image Processing Issues When Saving to PDF

Previously there was one generic warning with text “Unsupported image format.”. Now there are a specific warning for OutOfMemoryException with text “Not enough memory to load the image.” and a generic warning with text “Image cannot be processed. Possibly unsupported image format.”.

Removed Deprecated Public Property TxtSaveOptions.ExportHeadersFooters

We have removed deprecated public property TxtSaveOptions.ExportHeadersFooters from Aspose.Words API. Please use TxtSaveOptions.ExportHeadersFootersMode property instead. Please read the following article.

Export Header and Footer in Output TXT

Other Improvements

There are 69 improvements and fixes in this regular monthly release. The most notable are:

  • Supported inline syntax error messages into templates instead of exception throwing for LINQ Reporting Engine.
  • Improved font fetching and substitution mechanism with corresponding API changes.
  • Improved warnings for image processing issues when rendering to PDF.
  • Improved font fallback rendering for full-width character Unicode ranges.
  • Metafiles with “HeaderPlaceable” structure is now rendering regardless of structure checksum. (MS Word behavior).
  • The width of the DrawingML outline is now normalized if it is below the minimum value while rendering. (MS Word behavior).
  • Fixed a bug with incorrect calculation of DrawingML TextBox shape bounds.
  • Fixed a bug with the calculation of the shape boundaries if the document contains the attribute.ShapeLayoutLikeWW8 (the behavior of MS WORD 97 should be emulated).
  • Fixed a bug that caused an exception when rendering ultra-small text boxes in GDI+.
  • Fixed a bug with the distorted filling of the DrawingML shape outline when rendering grouped shapes.
  • Fixed a bug causing creation of blank images with zero size while rendering into HTML.
  • Improved ordering of number in RTL list labels.
  • Improved check box size calculation when active form fields are exported to PDF.
  • Fixed issue when document has “printer metrics” enabled and Windows has no printer driver installed.
  • Fixed hang when table cell is broken across pages when there is a floating shape anchor in it.
  • Fixed issue when text which has borders is wrapped around a shape and does not fit.

Aspose.Words for .NET Resources

The following resources will help you work with Aspose.Words for .NET:

    • Home page of .NET API.
    • Install using NuGet Package
    • Documentation – up-to-date documentation containing Programmer’s Guide, Knowledge Base and much more.
    • API Reference Guide – detailing the publicly exposed classes, methods, properties, constants & interfaces.
    • Aspose.Words Product Family Forum – post your technical questions and queries, or any other problem you are facing while working with Aspose.Words APIs.
    • Enable Blog Subscription – do not limit yourself, you can keep yourself updated with the latest news on Aspose.Words APIs, new features, fixes and other API related topics by subscribing to Aspose.Words blog.
    • Examples – we have published our code examples on the social coding website GitHub.com. Anyone could explore the code examples for learning purposes.
Posted in Aspose.Words Product Family | Leave a comment

Render documents using enhanced splitting algorithms in Aspose.HTML for .NET

Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn

We are pleased to announce February release of Aspose.HTML for .NET 19.2 which can be downloaded from NuGet Gallery to be used in your .NET Applications. This version is basically a maintenance release which includes few internal improvements along with some bug fixes. We have improved page splitting algorithms which results in enhanced rendering of supported format documents. Few exceptions including ArgumentException and ApplicationException have also been resolved in latest version of the API. An overview of public API changes and improvements can be found in Release Notes of the API.

Aspose.HTML for .NET Resources

Please visit the following links for information regarding Aspose.HTML for .NET 19.2 and Release Notes section.

Posted in Aspose.HTML Product Family | Leave a comment

Create Barcodes with parenthesis in CodeText with Aspose.BarCode for Android via Java 19.1

Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn

We are pleased to announce the release of Aspose.BarCode for Android via Java 19.1. This release enhanced the BarCodeGenerator API to support parenthesis in the CodeText. For a detailed note on what is new and fixed, please visit the release notes page for information of API documentation.

Support for parenthesis in CodeText

This release of Aspose.BarCode enhanced the BarCodeGenerator API to allow the CodeText to contain parenthesis. You may generate barcodes with parenthesis in the CodeText as shown below in the code example. 

com.aspose.barcode.generation.BarCodeGenerator generator = 
new com.aspose.barcode.generation.BarCodeGenerator(EncodeTypes.PDF_417);

generator.setCodeText("Sample.Code.Text(Example).20181203_150435");
generator.save(TestDirectory + "barcodeTest2.png", BarCodeImageFormat.PNG);

Aspose.BarCode for Android via Java Resources

As Aspose.Barcode for Android via Java is based on Aspose.BarCode for Java, the following API resources can be of help to you in getting started with Aspose.BarCode:

Posted in Aspose.BarCode Product Family | Leave a comment

Create Barcodes with parenthesis in CodeText with Aspose.BarCode for JasperReports 19.1

Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn

Aspose.BarCode for JasperReports We are pleased to announce the release of Aspose.BarCode for JasperReports 19.1. This release enhanced the BarCodeGenerator API to support parenthesis in the CodeText. To view a complete list of fixes, please visit Aspose.Barcode for JasperReport 19.1 release notes page.

Support for parenthesis in CodeText

This release of Aspose.BarCode enhanced the BarCodeGenerator API to allow the CodeText to contain parenthesis. You may generate barcodes with parenthesis in the CodeText similar to the string given below. 

"Sample.Code.Text(Example).20181203_150435"

You can download the latest release of Aspose.BarCode for JasperReports from the following link: Download Aspose.BarCode for JasperReports 19.1.

Aspose.BarCode for JasperReports Resources

The following API resources can be of help to you in getting started:

Posted in Aspose.BarCode Product Family | Leave a comment

Create Barcodes with parenthesis in CodeText with Aspose.BarCode for Reporting Services 19.1

Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn

We are pleased to announce the release of Aspose.Barcode for Reporting Services 19.1. This release enhanced the BarCodeGenerator API to support parenthesis in the CodeText. For a detailed note on what is new and fixed, please visit the release notes page for information of the API documentation.

Support for parenthesis in CodeText

This release of Aspose.BarCode enhanced the BarCodeGenerator API to allow the CodeText to contain parenthesis. You may generate barcodes with parenthesis in the CodeText as shown below in the code example. 

Aspose.BarCode.Generation.BarCodeGenerator generator = new
Aspose.BarCode.Generation.BarCodeGenerator(
Aspose.BarCode.Generation.EncodeTypes.Pdf417);

generator.CodeText = "Sample.Code.Text(Example).20181203_150435";

generator.Save(TestDirectory + "barcodeTest.png", BarCodeImageFormat.Png);

You can download the latest version of Aspose.BarCode for Reporting Services by visiting the Aspose.BarCode for Reporting Services 19.1 page in the downloads section.

Aspose.BarCode for Reporting Services Resources

You can get started with Aspose.BarCode for Reporting Services by making use of information available in the following:

Posted in Aspose.BarCode Product Family | Leave a comment

Create Barcodes with parenthesis in CodeText with Aspose.BarCode for Java 19.1

Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn

We are pleased to announce the release of Aspose.BarCode for Java 19.1. This release enhanced the BarCodeGenerator API to support parenthesis in the CodeText. For a detailed note on what is new and fixed, please visit the release notes page of API documentation.

Support for parenthesis in CodeText

This release of Aspose.BarCode enhanced the BarCodeGenerator API to allow the CodeText to contain parenthesis. You may generate barcodes with parenthesis in the CodeText as shown below in the code example. 

com.aspose.barcode.generation.BarCodeGenerator generator = 
new com.aspose.barcode.generation.BarCodeGenerator(EncodeTypes.PDF_417);

generator.setCodeText("Sample.Code.Text(Example).20181203_150435");
generator.save(TestDirectory + "barcodeTest2.png", BarCodeImageFormat.PNG);

Aspose.BarCode for Java Resources

The following API resources can be of help to you in getting started with Aspose.BarCode:

Posted in Aspose.BarCode Product Family | Leave a comment

Create Barcodes with parenthesis in the CodeText

Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn

We are pleased to announce the release of Aspose.BarCode for .NET 19.1. This release enhanced the BarCodeGenerator API to support parenthesis in the CodeText. For a detailed note on what is new and fixed, please visit the release notes page for information of API documentation.

Support for parenthesis in CodeText

This release of Aspose.BarCode enhanced the BarCodeGenerator API to allow the CodeText to contain parenthesis. You may generate barcodes with parenthesis in the CodeText as shown below in the code example. 

Aspose.BarCode.Generation.BarCodeGenerator generator = new
Aspose.BarCode.Generation.BarCodeGenerator(
Aspose.BarCode.Generation.EncodeTypes.Pdf417);

generator.CodeText = "Sample.Code.Text(Example).20181203_150435";

generator.Save(TestDirectory + "barcodeTest.png", BarCodeImageFormat.Png);
Result:
Correct PNG image.

Aspose.BarCode for .NET Resources

You can get started with Aspose.BarCode for .NET by making use of information available in the following:

Posted in Aspose.BarCode Product Family | Leave a comment

Enable show report filter pages options and get support for MS Excel 95 using Aspose.Cells for PHP via Java 19.1

Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn

We are pleased to announce the first public release of Aspose.Cells for PHP via Java v19.1 for the users. This release includes new features, enhancements and bug fixes which further improve the overall stability and usability of the API. Aspose.Cells for PHP via Java has full functionality of Aspose.Cells for Java with a few limitations, minor API changes and additional requirements. Please notice Product features comparison page for your reference. See the following release notes on major features for your reference.
Aspose.Cells for PHP via Java 19.1 release notes.

Enable show report filter pages option while managing pivot table

Excel supports creating pivot tables, adding report filters and enable “Show Report Filter Pages” option. Aspose.Cells has also provided this support now to enable the “Show Report Filter Pages”option on created pivot table. As a result of this option the created workbook will contain more worksheets. It will split every possible value of report filter in a separate worksheet.

For a working example refer to the following article:

Support for legacy Excel 95/5.0

Excel 95 support was not available earlier which was causing issues in using legacy Excel 95/5.0 files. Aspose.Cells has provided the support for this old file format now. For this purpose FileFormatType.EXCEL_95 is introduced which can be used for creating new workbook and LoadFormat.Auto can be used to open these file formats.

For a working example refer to the following article:

Specify how to cross string in output PDF and image

When a cell contains text or string but it is larger than the width of the cell, then the string overflows if the next cell in next column is null or empty. While saving Excel file into PDF/Image, we can control this overflow by specifying the cross type using the TextCrossType enumeration. It has the values TextCrossType.DEFAULT, TextCrossType.CROSS_KEEP, TextCrossType.CROSS_OVERRIDE and TextCrossType.STRICT_IN_CELL. This feature will create similar output as Excel while rendering sheets to PDF and images.

    For a working example refer to the following article:

    Sorting data based on cell background color

    Excel provides feature to sort data based on background color. Same feature was required by users while using Aspose.Cells. This feature is provided now by using DataSorter where SortOnType.CELL_COLOR can be used in addKey() to sort data based on background color. All the cells which contain specified color in the addKey() function are placed on top or bottom according to the SortOrder setting and order of the rest of the cells is not changed at all.

    For a working example refer to the following article:

    Using custom functions from Add-in  

    There is a common scenario when there are custom formulas which we want to include as an excel add-in. While setting the cell.setFormula value to some function, built-in functions work fine however there is a need to set the custom functions or formulas using the add-in functions. Aspose.Cells provides features to register add in functions using Worksheets.registerAddInFunction(). Afterwards when we set cell.setFormula(anyFunctionFromAddIn), the output Excel file will contain the calculated value from the Add-In function. This feature is available now where an add-in can be registered and function from the newly added add-in can be called.

    For a working example refer to the following article:

    Other Enhancements and Fixes

    There are some other enhancements included and a few exceptions handled in the new release for the users. A few of the worth mentioning features and other improvements are as follows.

    • Bug removal for change in text color while converting ODS to XLSX
    • Support for preserving the strikethrough font while ODS to XLSX
    • Problem with strikethrough text in generated HTML file format
    • ODS to XLSX – Text box dimensions changed
    • ODS -> XLSX – Hyperlink is functional but shown as plain text
    • ODS to XLSX, Percentages are lost in bar graph chart
    • Some styles are not rendered in HTML input

    In Aspose.Cells 19.1, we fixed several important bugs and other issues. For example, CellsException while converting files, Exception “java.lang.ArrayIndexOutOfBoundsException: -32768” when loading an XLSX file format and ArrayIndexOutOfBoundsException when loading a workbook.

    Changes to the Public API

    The following is a list of any changes made to the public API such as added, renamed, removed or deprecated members as well as any non-backward compatible change made to Aspose.Cells for Java:

    • Adds PivotTable.ShowReportFilterPageByName (string fieldName) method, shows all the report filter pages according to PivotField’s name, the PivotField must be located in the PageFields.
    • Adds PivotTable.ShowReportFilterPageByIndex(int posIndex) method , shows all the report filter pages according to the position index in the PageFields.

    • Adds PivotTable.ShowReportFilterPage(PivotField pageField) method, shows all the report filter pages according to PivotField, the PivotField must be located in the PageFields.
    • Adds DataSorterKey and DataSorterKeyCollection class , represents the key of the data sorter.
    • Adds DataSorter.AddKey(Int32,SortOnType,SortOrder,Object) method, adds the sort key such as cell’s background color, font color.
    • Adds Aspose.Cells.DataSorter.Keys property, gets all keys of the data sorter.
    • Adds SortOnType enum, represents the type of sorted data.
    • Adds ODSLoadOptions class, represents the options of loading ODS file.
    • Adds HTMLLoadOptions.ProgId property, gets the program id of creating the file. used only for MHT files.
    • Adds PdfSaveOptions.TextCrossType property, gets or sets displaying text type when the text width is larger than cell width.
    • Adds TextCrossType enum class, Enumerates displaying text type when the text width is larger than cell width.
    • Adds WorksheetCollection.RegisterAddInFunction() methods, replacement of Cell.SetAddInFormula(), a more convenient and efficient way for users to add and use addin functions.
    • Deletes Obsoletes Cell.SetAddInFormula() method, register the addin functions firstly by WorksheetCollection.RegisterAddInFunction() and then setting the formula for Cell by Cell.Formula/Cell.SetFormula() instead.

     

    Aspose.Cells for PHP via Java Resources

    Following are the links to some useful resources you may need to accomplish your tasks.

     

    Posted in Aspose.Cells Product Family | Leave a comment

    Enable show report filter pages options and get support for MS Excel 95 using Aspose.Cells for JavaScript via Java 19.1

    Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn

    We are pleased to announce the release of Aspose.Cells for JavaScript via Java 19.1. This release includes new features, enhancements and bug fixes which further improve the overall stability and usability of the API. Since Aspose.Cells for JavaScript is a subset component, so it includes all the important and useful features present in its native Aspose.Cells for Java, please visit features comparison page for your reference. Aspose.Cells for JavaScript via Java has almost full functionality of Aspose.Cells for Java with a few limitations, minor API changes and additional requirements. See the following release notes on major features and other improvements for your reference

    Enable show report filter pages option while managing pivot table

    Excel supports creating pivot tables, adding report filters and enable “Show Report Filter Pages” option. Aspose.Cells has also provided this support now to enable the “Show Report Filter Pages”option on created pivot table. As a result of this option the created workbook will contain more worksheets. It will split every possible value of report filter in a separate worksheet.

    For a working example refer to the following article:

    Support for legacy Excel 95/5.0

    Excel 95 support was not available earlier which was causing issues in using legacy Excel 95/5.0 files. Aspose.Cells has provided the support for this old file format now. For this purpose FileFormatType.EXCEL_95 is introduced which can be used for creating new workbook and LoadFormat.Auto can be used to open these file formats.

    For a working example refer to the following article:

    Specify how to cross string in output PDF and image

    When a cell contains text or string but it is larger than the width of the cell, then the string overflows if the next cell in next column is null or empty. While saving Excel file into PDF/Image, we can control this overflow by specifying the cross type using the TextCrossType enumeration. It has the values TextCrossType.DEFAULT, TextCrossType.CROSS_KEEP, TextCrossType.CROSS_OVERRIDE and TextCrossType.STRICT_IN_CELL. This feature will create similar output as Excel while rendering sheets to PDF and images.

      For a working example refer to the following article:

      Sorting data based on cell background colour

      Excel provides feature to sort data based on background color. Same feature was required by users while using Aspose.Cells. This feature is provided now by using DataSorter where SortOnType.CELL_COLOR can be used in addKey() to sort data based on background color. All the cells which contain specified color in the addKey() function are placed on top or bottom according to the SortOrder setting and order of the rest of the cells is not changed at all.

      For a working example refer to the following article:

      Using custom functions from Add-in  

      There is a common scenario when there are custom formulas which we want to include as an excel add-in. While setting the cell.setFormula value to some function, built-in functions work fine however there is a need to set the custom functions or formulas using the add-in functions. Aspose.Cells provides features to register add in functions using Worksheets.registerAddInFunction(). Afterwards when we set cell.setFormula(anyFunctionFromAddIn), the output Excel file will contain the calculated value from the Add-In function. This feature is available now where an add-in can be registered and function from the newly added add-in can be called.

      For a working example refer to the following article:

      Other Enhancements and Fixes

      There are some other enhancements included and a few exceptions handled in the new release for the users. A few of the worth mentioning features and other improvements are as follows.

      • Bug removal for change in text color while converting ODS to XLSX
      • Support for preserving the strikethrough font while ODS to XLSX
      • Problem with strikethrough text in generated HTML file format
      • ODS to XLSX – Text box dimensions changed
      • ODS -> XLSX – Hyperlink is functional but shown as plain text
      • ODS to XLSX, Percentages are lost in bar graph chart
      • Some styles are not rendered in HTML input

      In Aspose.Cells 19.1, we fixed several important bugs and other issues. For example, CellsException while converting files, Exception “java.lang.ArrayIndexOutOfBoundsException: -32768” when loading an XLSX file format and ArrayIndexOutOfBoundsException when loading a workbook.

      Changes to the Public API

      The following is a list of any changes made to the public API such as added, renamed, removed or deprecated members as well as any non-backward compatible change made to Aspose.Cells for Java:

      • Adds PivotTable.ShowReportFilterPageByName (string fieldName) method, shows all the report filter pages according to PivotField’s name, the PivotField must be located in the PageFields.
      • Adds PivotTable.ShowReportFilterPageByIndex(int posIndex) method , shows all the report filter pages according to the position index in the PageFields.

      • Adds PivotTable.ShowReportFilterPage(PivotField pageField) method, shows all the report filter pages according to PivotField, the PivotField must be located in the PageFields.
      • Adds DataSorterKey and DataSorterKeyCollection class , represents the key of the data sorter.
      • Adds DataSorter.AddKey(Int32,SortOnType,SortOrder,Object) method, adds the sort key such as cell’s background color, font color.
      • Adds Aspose.Cells.DataSorter.Keys property, gets all keys of the data sorter.
      • Adds SortOnType enum, represents the type of sorted data.
      • Adds ODSLoadOptions class, represents the options of loading ODS file.
      • Adds HTMLLoadOptions.ProgId property, gets the program id of creating the file. used only for MHT files.
      • Adds PdfSaveOptions.TextCrossType property, gets or sets displaying text type when the text width is larger than cell width.
      • Adds TextCrossType enum class, Enumerates displaying text type when the text width is larger than cell width.
      • Adds WorksheetCollection.RegisterAddInFunction() methods, replacement of Cell.SetAddInFormula(), a more convenient and efficient way for users to add and use addin functions.
      • Deletes Obsoletes Cell.SetAddInFormula() method, register the addin functions firstly by WorksheetCollection.RegisterAddInFunction() and then setting the formula for Cell by Cell.Formula/Cell.SetFormula() instead.

      Aspose.Cells for JavaScript via Java Resources

      Following are the links to some useful resources you may need to accomplish your tasks.

      Posted in Aspose.Cells Product Family | Leave a comment

      Read MapInfo TAB and MapInfo Interchange file formats with Aspose.GIS

      Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn

      We are pleased to announce the release of Aspose.GIS for .NET 19.2. This release gives you the ability to work with MapInfo TAB and MapInfo Interchange file formats. For a complete list of what is new and fixed, please visit the release notes section of the API documentation.

      Read MapInfo TAB and MapInfo Interchange file formats

      This release of Aspose.GIS for .NET has added support for reading MapInfo TAB and MapInfo Interchange file formats as shown below in the code example.

      Read MapInfo TAB File

      string TestDataPath = RunExamples.GetDataDir();
      using (var layer = Drivers.MapInfoTab.OpenLayer(Path.Combine
      (TestDataPath, "data.tab")))
      {
      Console.WriteLine($"Number of features is {layer.Count}.");

      var lastGeometry = layer[layer.Count - 1].Geometry;
      Console.WriteLine($"Last geometry is {lastGeometry.AsText()}.");

      foreach (Feature feature in layer)
      {
      Console.WriteLine(feature.Geometry.AsText());
      }
      }

      Read MapInfo Interchange File

      string TestDataPath = RunExamples.GetDataDir();
      using (var layer = Drivers.MapInfoInterchange.OpenLayer(
      Path.Combine(TestDataPath, "data.mif")))
      {
      Console.WriteLine($"Number of features is {layer.Count}.");

      var lastGeometry = layer[layer.Count - 1].Geometry;
      Console.WriteLine($"Last geometry is {lastGeometry.AsText()}.");

      foreach (Feature feature in layer)
      {
      Console.WriteLine(feature.Geometry.AsText());
      }
      }

      The following API resources can be of help to you in getting started with Aspose.GIS:

      API Resources

      Posted in Aspose.GIS Product Family | Leave a comment