Read Write SXC and FODS files with Aspose.Cells for .NET 19.6

Share on FacebookTweet about this on TwitterShare on LinkedIn
Aspose.Cells for .NET logoDo you need to process SXC and FODS file formats and want to have an API to handle these files? Aspose.Cells is the right library which will enable you to open or edit and save both OpenOffice/LibreOffice file types. You may also find other features and enhancements in the new Aspose.Cells for .NET v19.6. So let’s not wait another moment to review the release notes.  To get complete details of the public release (Aspose.Cells for .NET v19.6), I am giving you preview of the new features, enhancements and fixes available in it.

Support for SXC and FODS

We always try to provide features which are supported by other spreadsheet handling software. Many users demanded support of SXC and FODS file types which are very common. So, here we are with the support of these file types in the latest release. Following is a brief description of these types along with the detail of their support in Aspose.Cells.

SXC Files

Spreadsheet created by StarOffice Calc; supports formulas, functions, charts, and macros; also includes DataPilot tables, which can automatically extract and summarize data from raw data sets. SXC files are also compatible with Apache OpenOffice Calc and can be exported in Microsoft Excel or IBM Lotus 1-2-3 formats.

FODS Files

Spreadsheet saved in the OpenDocument format, but stored as a flat XML file instead of the ..ZIP container used by .ODS files; allows the spreadsheet information to be more human readable; also can be an easier alternative than the ODS format for generating spreadsheets automatically without needing a spreadsheet editor.

Features provided by Aspose.Cells

Generate file

You can generate SXC and FODS file using FileFormatType as argument in Workbook contructor i.e. use FileFormatType.SXC and FileFormatType.FODS as argument.

Load file

These files can be loaded using enumerator LoadFormat as follows: SXC File
FODS File

Save File

Saving file of these types is quite easy by using SaveFormat enumerator while calling the Workbook.Save() function with second argument as SaveFormat.SXC and SaveFormat.FODS.

Other enhancements and fixes

  • Draw Slicer while rendering Excel to PDF.
  • Export Comments while Saving Excel file to Html.
  • Embedded OOXML file as a package for XLSX.
  • Security warning after re-saving an XLS file format.
  • Problems with medium lines/thick lines when XLSX saved as ODS.
  • Detecting whether the object file is chart or oleobject for ODS.
  • Handled "System.InvalidCastException".
  • Handled "Shape to image error!" when converting XLSX to PDF.
  • Handled an exception "System.StackOverflowException" on rendering an Excel file to PDF file format.
To use these features and avail other enhancements and fixes, I recommend you to try the release Aspose.Cells for .NET v19.6. Moreover, I recommend you to browse Developers’ Guide for your complete reference on what you can deliver using the APIs. Also, you are always welcome to share your review, concerns or feedback on forums.
Posted in Aspose.Cells Product Family | Leave a comment

Handle SXC and FODS files with Aspose.Cells for Java 19.6

Share on FacebookTweet about this on TwitterShare on LinkedIn

A new version Aspose.Cells for Java 19.6 is released that handles file types SXC and FODS, contains a lot of enhancements and few bug removals. Support for handling file types SXC and FODS is added like you can generate, load and save these files. This release also contains improvements for handling files with large conditional formattings, enhancements in the process of saving Excel files with data formats, filters and chart rendering. You can get the details of all these enhancements and changes in the release notes. You might be curious about the new features, enhancements and exceptions handled in this release, so let us start to review this release in detail.

Support for SXC and FODS

We always try to provide features which are supported by other spreadsheet handling software. Many users demanded support of SXC and FODS file types which are very common. So, here we are with the support of these file types in the latest release. Following is a brief description of these types along with the detail of their support in Aspose.Cells.

SXC Files

Spreadsheet created by StarOffice Calc; supports formulas, functions, charts, and macros; also includes DataPilot tables, which can automatically extract and summarize data from raw data sets. SXC files are also compatible with Apache OpenOffice Calc and can be exported in Microsoft Excel or IBM Lotus 1-2-3 formats.

FODS Files

Spreadsheet saved in the OpenDocument format, but stored as a flat XML file instead of the ..ZIP container used by .ODS files; allows the spreadsheet information to be more human readable; also can be an easier alternative than the ODS format for generating spreadsheets automatically without needing a spreadsheet editor.

Features provided by Aspose.Cells

Generate file

You can generate SXC and FODS file using FileFormatType as argument in Workbook contructor i.e. use FileFormatType.SXC and FileFormatType.FODS as argument.

Load file

These files can be loaded using enumerator LoadFormat as follows:

SXC File

FODS File

Save File

Saving file of these types is quite easy by using SaveFormat enumerator while calling the Workbook.save() function with second argument as SaveFormat.SXC and SaveFormat.FODS.

Improvements in this version

Handling Excel file with large conditional formatting

While converting Excel files having large conditional formatting to PDF, sometimes there was an “Out of memory” exception in JVM. This exception is handled successfully now.

Maintaining data format while saving Excel file

Excel files can have different data formatting settings along with the conditional formatting. An issue was reported about showing value with fraction instead of whole number. This type of issues are handled and now data formats are maintained while saving the Excel files.

Improve reading Excel 95 files

Excel 95 files are still very common and need to be handled error-free while using Aspose.Cells. Sometimes an exception was raised as java.lang.NullPointerException for these files. This issue is removed now and Excel 95 files can be loaded without any issue.

Enhance loading speed after deleting columns

A case was reported where after deleting the columns from an existing file and saving it on the disc, loading was quite slow for this modified file. It is suggested that always take care of the conditional formatting ranges. For these, you should merge them by setting SaveOptions.MergeArea to true before saving them. We have also improved the saving operation and now modified files do not take a long time to load.

Bugs and Exceptions

Users report bugs and exceptions which are resolved and enhancements are done which improves the usability of the library. Following are few bugs and exceptions which were handled in this release.

  • Conditional formatting can be obtained properly using Cell.getDisplayStyle() after setting different values in the cell containing these conditional formatting based on the cell value. Like foreground colour value which was not obtained correctly earlier in some case can be obtained now.
  • There was an issue where lines were not rendered in the PDF from an Excel file. This issue is resolved and lines are rendered fine. Following is the depiction of the issue for better understanding.
  • This is common to add images in the header of an Excel file. It was observed that in some cases, the output file after adding these images, was corrupted and could not be opened in Excel. This issue is resolved and now images can be added without any problem.
  • Filters should be maintained while opening and saving a file. A user faced an error that filter was lost after saving the file. Similarly in another case filters were changed. This is no more an issue now.
  • A chart was getting flattened in the saved file after loading it. This issue is resolved in the current release.
  • While loading an ODS file an exception “Invalid “‘””(“Based on Name “test_name) was observed. This issue is resolved.
  • A user reported that he is getting exception while calling Name.getRefersTo() function. This issue is resolved in this release.

For all the resources, documentation, examples and forum support please visit here.

Posted in Aspose.Cells Product Family | Leave a comment

Read Write Markdown Features in .md Format, Link TextBoxes using Aspose.Words for Java 19.7

Share on FacebookTweet about this on TwitterShare on LinkedIn

Hello guys, lets check out what’s new for you in Aspose.Words for Java 19.7release.

Added Support for Markdown Features

Markdown is a simple way to format plain text that can easily be converted to HTML. Markdown features currently supported by Aspose.Words are {Headings, Block quotes, Horizontal rules, Bold emphasis, Italic emphasis}. The Markdown feature implementation mostly follows the CommonMark specification in Aspose.Words API and all the features are represented as corresponding styles or direct formatting. Which means that:

  • Bold and Italic are represented as Font.Bold and Font.Italic.
  • Headings are paragraphs with Heading 1 – Heading 6 styles
  • Quotes are paragraphs with “Quote” in style name
  • HorizontalRule is a paragraph with HorizontalRule shape

For more details, please read the following article.
Working with Markdown Features

Linked TextBoxes in Word Document

TextBox class is used to specify how text is displayed inside Shape. It provides a public property Parent to get the parent Shape of the TextBox and to allow to find linked Shape from linked TextBox. Please check the following examples for more details:

Restart List Numbering Dynamically using LINQ Reporting

You can restart list numbering within your documents dynamically using restartNum tags. In particular, this feature is useful when working with a nested numbered list within a data band. Continue reading…
Restarting List Numbering Dynamically

Detect SmartArt Shape in Word Document

Starting from this release, you can detect SmartArt shape in Word document. You need to simply use the Shape.HasSmartArt property. This property returns true if this Shape has a SmartArt object. Continue reading…
Detect SmartArt Shape

Get Revision Group Details

The Revision.Group property in Revision class can be used to get details if the revision belongs to any group. Its value will be null if the revision does not belong to any group. If revision type is RevisionType.StyleDefinitionChange or if the revision no longer exists in document context (accepted/rejected) then it means that Revision has no group.

See also Useful Links

Keeping the Aspose tradition, you are welcome to shape the upcoming releases of Aspose.Words for Java API by posting your suggestions and concerns in the Aspose.Words for Java Support Forum.

Posted in Aspose.Words Product Family | Leave a comment

LZMA BZip2 Compressions within ZIP Archive Supported by Aspose.ZIP for .NET 19.6

Share on FacebookTweet about this on TwitterShare on LinkedIn

Guys, lets check out what’s new for you in Aspose.ZIP for .NET 19.6 release.

LZMA Compression within ZIP Archive

The Lempel–Ziv–Markov chain algorithm (LZMA) is an algorithm used to perform lossless data compression. LZMA uses a dictionary compression algorithm, the compressed stream is a stream of bits. LZMA compression within ZIP archive allows ZIP container to contain LZMA compressed entries. The following code examples shows the implementation of LZMA compression using Aspose.ZIP for .NET API.

BZip2 Compression within ZIP Archive

BZip2 compression settings allow ZIP container to contain BZip2 compressed entries. The following code examples shows the implementation of BZip2 compression using Aspose.ZIP API.

See Also Useful Links

The resources, you may need to accomplish your tasks:

Keeping the Aspose tradition, you are welcome to shape the upcoming releases of Aspose.ZIP for .NET API by posting your suggestions and concerns in the Aspose.ZIP for .NET support forum.

Posted in Aspose.ZIP Product Family | Leave a comment

Support of OpenType Fonts, Restart List using LINQ Reporting, Improved SmartArt and Linked Textboxes

Share on FacebookTweet about this on TwitterShare on LinkedIn
Aspose.Words for .NET logo

Hi guys! We are gratified to announce the new version of Aspose.Words for .NET i.e. 19.7. You will be happy to know that we have added interesting features in this release e.g. restart list number using LINQ Reporting, working with linked textboxes, detect SmartArt in Word document etc. This release is available for download and to be used where .NET is installed.

Download Aspose.Words for .NET 19.7

Let’s check out what are the new features and how they work.

Support of OpenType Fonts and Kerning Feature

OpenType is a font format for scalable computer fonts and introduced to provide better support for languages and writing systems as compared to PostScript and TrueType. We have added TextShaperFactory property in LayoutOptions class. This property is used to get or set ITextShaperFactory implementation used for Advanced Typography rendering features.

How does this feature work? It’s very simple. Please check the code example and detail in the following article.

How to Use OpenType Features

Detect SmartArt Shape

Starting from this release, you can detect the SmartArt shape in the Word document. You need to simply use the Shape.HasSmartArt property. This property returns true if this Shape has a SmartArt object. Sounds good?

Restart List Numbering using LINQ Reporting

With LINQ Reporting Engine, you can build reports using an extended set of reporting features. You can create lists using LINQ Reporting. In some cases, it is needed to restart the list numbers. Now, you can achieve it using Aspose.Words. We have added this exciting feature in this release.

How does it work? It is well explained in the following article. Please read it.

Restarting List Numbering Dynamically

How awesome is that? I hope you have liked it.

Dealing With Linked Textboxes

This is another amazing feature that has been added in this release. Now, you can create link between textboxes, check linked textboxes sequence, and break the link between them. We have added IsValidLinkTarget, Next, Previous, BreakForwardLink, and Parent properties in TextBox class. For more detail, please read the following article.

Working with Linked TextBoxes

Keep reading…

Work with Revision Group

A new property Revision.Group has been added in this release to get the revision group. It is used to get detail if the revision belongs to any group. For more detail and code example, please read the following article.

Revision Group Details

Implemented Basic Reader and Writer for Markdown Features

Markdown is a simple way to format plain text that can easily be converted to HTML. In this release we have added support of headings, block quotes, horizontal rules, bold emphasis, and italic emphasis Markdown features. For complete detail, please read the following article.

Working with Markdown Features

We suggest you please check the release notes of Aspose.Words for .NET 19.7 for complete detail of API changes.

When time allows you can check Aspose.Words’ API examples at Github, talk about this release and other API related issues in our forum.

Posted in Aspose.Words Product Family | Leave a comment

Enhancements for DataMatrix barcode using Aspose.BarCode 19.5

Share on FacebookTweet about this on TwitterShare on LinkedIn

Here comes the new release Aspose.BarCode 19.5 for Java and .NET containing a lot of enhancements. This time we have targetted the DataMatrix barcode reading and IMB barcode recognition. For detailed information about the enhancements in this release follow the release notes for Java and .NET. Let us have a look at what is new there in this release.

Enhancements in this release

As usual we have put lot of effort for bringing our product to exceed the customer satisfaction. There were few shortcomings which were observed while working with the library. Enhancements are done to tackle all these shortcomings and new version is far better for handling these situations.

Upgradations while reading the DataMatrix barcode

Reading a barcode is quite tricky and sometimes the minutest dots can result into wrong values. Similarly we observed issues in reading the DataMatrix barcode from a 200 DPI TIFF image. This issue was investigated in detail and all the issues are handled now as follows:

  • We have supported the recognition if invasion in the quite zones of data matrix.
  • Resolved the issues incurred due to low scanner resolution which produces lot of errors.
  • Effort is made to recognise black dots around the barcode.
  • Irregular grids were also causing issues. We have identified them and these are no more an issue now.
  • There were some problems in the bits in the data matrix recognition which is sorted out and results are amazing now.

Barcode recognized on low-resolution TIFF

This is very common that we come across barcodes in tiff formats which have very low resolutions. In this case sometimes we may get garbled data out of these barcodes. An indepth investigation is done in this regard and a new public property AllowOneDWipedBarsRestoration has been added to the QualitySettings. It allows engine for 1D barcodes to recognize barcodes with single wiped/glued bars in pattern. Property is enabled by default in HighQuality, MaxBarCodes modes. Currently the property is used for Code128, GS1Code128, SCC14, EAN14, SSCC18, AustralianPosteParcel, SwissPostParcel barcode types. To use this feature, just set this property to true while reading the barcode from TIFF image as follows:

reader.QualitySettings.AllowOneDWipedBarsRestoration = true;

Other enhancements

  • IMB barcodes were failing sometimes to be recognized. Enhancements are done to overcome this issue.
  • There was a need to enhance the recognition capability in .NET Core environment, which is also done successfully.

Aspose.BarCode for Java/.NET Resources

You may visit following links for documentation, source code, API reference and other details of this product.

Similarly, for downloading this version using NuGet package manager visit here and for Java user it is available on Maven also.

Posted in Aspose.BarCode Product Family | Leave a comment

Aspose.Page is launched with the features of Aspose.XPS and Aspose.EPS

Share on FacebookTweet about this on TwitterShare on LinkedIn
This image has an empty alt attribute; its file name is aspose_page-150x150.png

It has already been announced in pre-release blog post of Aspose.Page API that it will be a merger of both Aspose.XPS and Aspose.EPS APIs. Well, Wait is over now. Aspose.Page has been rolled out and available to be used in .NET and Java Applications. It is loaded with the features set earlier offered by Aspose.EPS and Aspose.XPS. Since both Aspose.EPS and Aspose.XPS have been merged as one Aspose.Page API, they will be discontinued and removed from APIs’ catalog offered by Aspose. They will no longer be part of Aspose.Total package and no updates or revisions will going to be released for them.

You may use Aspose.Page for .NET/Java to work with both XPS and EPS documents. Using the API you can create, edit and save existing as well as new XPS documents. Furthermore, you can convert XPS and EPS documents into PDF and Images. Let’s dive into further information which will be helpful setting up the API and replace it with Aspose.XPS and Aspose.EPS in your existing applications.

Using The API Classes

Aspose.Page offers similar classes earlier offered by Aspose.XPS and Aspose.EPS. You can simply add reference to Aspose.Page in your .NET or Java project and include following namespaces. You would not need to change much lines of code in your program to get it working without any error.

[.NET]

[Java]

Furthermore, API Reference section can be visited in order to get full details of classes offered by the API:

Code Samples and Documentation

Like other Aspose APIs, Aspose.Page has been released with fully fledged code samples in C#.NET and Java which will help you understand and implement the API functionality easily and efficiently. Code samples and example projects have been hosted over GitHub and they are free to access:

Every offered feature is elegantly documented and code samples have been showcased with full details of functionality in documentation section of Aspose.Page for .NET Java. In order to make exploring better for documentation, following is the list which is categorized on the basis and Aspose.XPS and Aspose.EPS features which are now offered by Aspose.Page:

XPS Features:

EPS Features:

Installation and Use of Aspose.EPS and Aspose.XPS Licenses

Installation or setting up the API to work with is quite similar to other .NET and Java APIs offered by the Aspose. As far as license of the API is concerned, existing users of Aspose.EPS and Aspose.XPS APIs have been offered with best deal i.e. they will be able to use Aspose.Page with their existing licenses. Please note that Aspose.Page will support existing licenses (i.e. of Aspose.XPS and Aspose.EPS) until they are expired. You will have to renew your license and get new Aspose.Page license to keep using API without any limitation.

While using the API first time and in case you do not have license either for Aspose.XPS or Aspose.EPS, it will require a valid license to use it without any limitation. You can also apply for a 30-days temporary license in order to evaluate the API without any limitation.

Release Notes and Downloads

Since Aspose.Page for .NET/Java has been published, you can download it and use it in your environment. As always recommended, please go through following release notes pages of the API before using.

API can be downloaded using following links:

We really hope that you have found every detail to set up this new API and work with it. In case we have missed something or your have any inquiry about Aspose.Page, please feel free to reach us over Aspose.Page Support Forum. Stay tuned with us in order to keep yourself updated with latest news about Aspose APIs.

Posted in Aspose.Total Product Family, Aspose.Page Product Family, Asad Ali | Leave a comment

Upcoming Release of Aspose.PSD for Java

Share on FacebookTweet about this on TwitterShare on LinkedIn
Aspose.PSD for Java logo

We are pleased to share that Aspose.PSD API is coming soon to Java platforms with the name of Aspose.PSD for Java. It will be soon available soon for download and to be used in applications. Aspose.PSD (written in Java) is designed to be used with Java language in variety of platforms like Windows, Linux, MAC and UNIX. Aspose.PSD can be used with any kind of application from console based to web based applications. The documentation shall provide fully featured demos and working examples written in Java for a quick start of API. The demos help developers gain a good understanding of the component’s features quickly.

Features offered by Aspose.PSD for Java

Aspose.PSD for Java is product that allows an extensive manipulation of PSD file formats. The product does not require Adobe Photoshop to be installed. Aspose.PSD for Java allows editing the PSD files, updating layer properties, adding watermarks, performing graphics operations or converting one file format into another. This product allows different automation scenarios that help developers on their way.

Currently Aspose.PSD for Java supports PSD and PSB file formats for loading and manipulation. Future versions will allow loading of more PSD file formats. Aspose.PSD for Java allows export to various raster file formats such as Tiff, Jpeg, Jpeg2000, Png, Gif, Bmp and more file formats supported for export will be added. The product uses algorithms which allow performing editing of PSD files in efficient way and maintains good performance. The product is actively developed and many useful features will be added to support the market demands.

  • Load and save PSD and PSB File formats.
  • Data processing for PSD and PSB File formats.
  • PSD Compression.
  • Managing raster image formats.
  • Conversion from Photoshop file formats to raster images.
  • Drawing Features.
    • Large images.
    • Rotate.
    • Flip.
    • Scale.
    • Cache system.
    • Custom user images.
    • Read/Write Exif data.
    • Dithering.
    • Crop.
    • Vector to raster export .
    • Brightness, contrast, gamma update.
    • Xmp data support.
    • Clipping to rectangular region.
    • Matrix transformations.
    • Drawing and filling of basic shapes (Line, Polygon, Rectangle, Cubic Bézier, Curve, Arc, Ellipse, Pie, Path).

Initial Release Availability

We are currently working over finalizing the API release process and intend to share this publically soon. So, stay tuned for further news about this new upcoming API. You can reach us on Aspose.PSD forum for your queries/inquiries related to the API and we will be more than happy to assist you in this regard.

Posted in Aspose.PSD Product Family | Leave a comment

WMF/EMF cropping and adding Raster image to Vector image support available in Aspose.Imaging

Share on FacebookTweet about this on TwitterShare on LinkedIn

Hello readers, in this blog I would like to introduce you with new features included in Aspose.Imaging 19.6. The good thing about Aspose team is that it releases both .NET and Java based APIs simultaneously every month. This way both API user remain recurrent with changes being made in APIs every month.

In subsequent sections, I am going to give you a walk through of what new features have been included in API.

Cropping EMF/WMF Images

Image cropping usually refers to the removal of the outer parts of an image to help improve the framing. Cropping may also be used for to cut out some portion of an image to increase the focus on a particular area. The EmfImage\WmfImage class provides Crop method that accepts an instance of the Rectangle class. One can cut out any portion of an image by providing the desired boundaries to the Rectangle object.

The following examples demonstrate cropping of a rectangular region in EMF and WMF images.

The similar Java based implementation is like as under:

Drawing Raster Images on SVG, EMF and WMF

Now, Aspose.Imaging supports drawing Raster(JPEG, GIF, TIFF, BMP) images to Vector (SVG, EMF, WMF) images. Raster images are based on pixels and thus lose clarity when scaled, while Vector based images can be scaled indefinitely without degrading quality. Using Aspose.Imaging you can draw a raster or vector image on another vector image.

Adding Vector Image on another Vector Image

In following example, I have shared the mechanism for adding a Vector image on another Vector image.

The similar Java based implementation is like as under:

Adding raster Image on SVG

Using Aspose.Imaging, you can draw raster image on SVG. In following example, I have shared the mechanism for adding a raster image on another SVG image.

The similar Java based implementation is like as under:

Adding raster Image on EMF

Using Aspose.Imaging, you can draw raster image on EMF. In following example, I have shared the mechanism for adding a raster image on another EMF image.

The similar Java based implementation is like as under:

Adding raster Image on WMF

Using Aspose.Imaging, you can draw raster image on WMF. In following example, I have shared the mechanism for adding a raster image on another WMF image.

The similar Java based implementation is like as under:

Improved image processing

In this new release we have improved the API performance in terms of adding support for multi-threading to manipulate the images along with options for optimize memory usage during rendering

Image processing using multi-threading

Aspose.Imaging is multi-thread safe as long as only one thread works on a Document at a time. It is a typical scenario to have one thread working on one document. In the following example, we have demonstrated use of parallel DJVU images processing using multi-threading.

The similar Java based implementation is like as under:

Optimizing Memory Usage

When reading a big PNG file, the total amount of RAM the process will take is always a concern. There are measures that can be adopted to cope with the challenge. Aspose.Imaging provides some relevant options and API calls to lower, reduce and optimize memory use. Moreover, it can help the process work more efficiently and run faster.

The following example shows how to read a large PNG file in optimized mode.

The similar Java based implementation is like as under:

Wait, there’s many other features, enhancement, and bug fixes included in this release. Here you can get the detail!

When time allows you can check out API examples at Github, talk about this release and other API related issues in our forum.

Posted in Aspose.Imaging Product Family | Leave a comment

Merge Templates using Aspose.HTML for .NET

Share on FacebookTweet about this on TwitterShare on LinkedIn

Of all the miracles Po had seen in the time and space of its death, Po thought this–the absorption of another, the carrying of it–was the most bewildering and remarkable of all.


– Lauren Oliver, Liesl & Po

Many great things in the world are the result of merging. Nature, animal, people, and technology merge together to produce unmatchable results.

At Aspose we merge templates to produce robust documents. HTML is the standard markup language for creating web pages and XML and JSON are data sources for storing and transporting user data. By merging HTML with the user data source, you can get highly effective dynamic HTML documents.

Using Aspose.HTML for .NET you can create HTML Templates and Merge them with data sources using ConvertTemplate method in a single line of code.

ConvertTemplate(HTMLDocument, TemplateData, TemplateLoadOptions, outputPath)

HTML Template

You can create a simple HTML template for working with user data:

JSON Data

For the given HTML template you can have the following JSON data:

Output

By merging the given JSON and HTML using Aspose.HTML for .NET, you’ll have the following resultant HTML file:

For further details about template merging using Aspose.HTML for .NET, please feel free to visit this documentation article.

Posted in Aspose.HTML Product Family | Tagged , , , , , | Leave a comment