What's New in Documents for Imaging v3
GcImaging v3.2 - August 13, 2020
New Samples for Image Comparison
Compare images for software testing, image manipulation detection, or even different frames of security footage. Perform fuzzy image comparisons and generate different images. This sample provides an effective way of comparing images (full source code is provided as with all demos).
Have a look at these samples:
Find Differences | Invisible Text | PNG vs JPEG | Font Hinting
GcImaging v3.1 - March 26, 2020
Render Special CJK Characters
s GcImaging adds GrapeCity.Documents.Text.TextFormat.EnableFontHinting and GrapeCity.Documents.Text.Font.EnableHinting properties to enhance support for rendering specific CJK characters on Images.
To support CJK glyphs, GcImaging adds support for special true-type features (called hinting for drawing glyphs). This feature is helpful for the far-east Asian audience, using CJK text in PDF files. While hinting instructions can also help to improve the general text on the PDF files, these instructions can be used (especially in CJK fonts) to reuse some glyph parts in different glyphs, regardless of the font size. The feature is also supported when converting PDF documents to images (through GcPdf).
GcImaging v3
Render HTML Content to Images
Saving web pages directly as HTML may not give the same rendering results as the original HTML, especially when viewing the page on different devices. When browsing the web, some content may need to be used in other formats, (Word, Excel, PowerPoint, or another documents). It's best to have the content as images, so you make edits like re-sizing, formatting or annotating through standard image editors.
GrapeCity Documents for HTML
The new GrapeCity Documents for Html package will help you render HTML content to Images. It is a utility package available with the GcPdf/GcImaging packages. A platform independent package, GcHtml can convert HTML content to images (PNG, JPEG, and PDF documents). To learn more, see what's New in GrapeCity Documents for PDF.
It also provides a set of convenient extension methods - DrawHtml() to render HTML content on the graphics. HTML rendering is done using the industry standard Chromium web browser engine working in headless mode, offering the advantage of rendering HTML to images on any platform (Windows, Linux, and macOS).
Users can additionally set various image settings while converting HTML to images. You do not need an additional license required to run GcHtml.
The package, GrapeCity.Documents.Html, includes the GcHtmlRenderer class, the main class that can render HTML content to Images. Internally, it uses one of three system-dependent HTML engine packages:
- GrapeCity.Documents.Html.Windows.X64
- GrapeCity.Documents.Html.Mac.X64
- GrapeCity.Documents.Html.Linux.X64
GcHtml will automatically select the correct system-dependent engine package at runtime. That package must be referenced by your project so that GcHtml can find it. You can add references to all three platform packages to your project, or if you only target one or two platforms. Just add the relevant packages for the target platforms.
Key Features
- Multi-platform package to render HTML content on Windows, macOS or Linux
- Render HTML string/page/URI source to JPEG, PNG Images
- Supports:
- Images
- CSS
- JavaScript
- HTML5
- SVG
- HTML Tables
- Split long HTML content into multiple pages
- Specify Page Margins
- Specify JPEG Settings, PNG settings
- DefaultBackgroundColor
- WindowSize
- Viewport
- Specify JPEG Compression Quality (0%-100%)
- Specify HtmlToImageFormat - formatting attributes for rendering HTML on GcGraphics
Read more about how to convert HTML content to images using GcImaging.
Help | GcHtml Architecture | Demo
Bitmap Glyphs Support
GcImaging now supports glyph bitmaps specified by the EBDT (Embedded bitmap data) table. With the new release, two new properties -AllowFontSbits and UseBitmapCache are added for rendering small text with low resolution in images.
Sbits are embedded bitmaps present in OpenType fonts for rendering complex glyphs at very small sizes. Such bitmaps usually appear in CJK fonts. If such bitmaps are provided in the font, the Font use these bitmaps when rendering the glyphs. Enlarge the two images below. The first one is before applying the bitmaps and the second one is after applying the AllowFontSBits and UseBitmapCache properties which looks much sharper.
Before applying bitmaps:
After applying bitmaps: