OptiRas ships as a native Win32 DLL with a C-compatible interface, with C header files included. The library can be used from any language that supports C-style DLL calls via the standard calling convention.
OptiRas is accompanied by several different wrapper libraries. Currently we provide C++, Delphi and .NET wrappers, with their 100% full source code available to registered users. These object-oriented wrappers are much easier and safer to use than the low-level native C API, and their use does not require the knowledge of the C language. Note that all the wrappers do is translate calls directly back to the DLL.
OptiRas is a low-level non-visual imaging library. It offers no directly usable GUI widgets. However, it helps you tremendously in creating visual controls such as an image viewer, editor, or thumbnail viewer.
The specialty of this library is displaying, editing, converting and batch processing scanned documents, with an extraordinarily high performance, especially with B&W and JPEG images. Without trying to be complete, here are a few typical operations that OptiRas offers:
- Loading and saving images. Converting from one file format to another. Splitting and merging pages. If the compression type does not change, these operations do not require the decompression and recompression of the image.
- Support for in-memory image files. Stream support.
- Displaying images on the screen, or off-screen, such as memory DCs or printers. B&W images are scaled to gray for displaying.
- Generating good quality thumbnail images very quickly. B&W images are scaled to gray for thumbnailing.
- Cropping and resizing images.
- Rotating, turning, mirroring.
- Placing a sub-image onto another one, with or without transparency. Stamping an image.
- Creating an image with a device context, so you can paint GDI primitives on it (lines, shapes, text, stamps).
- Inverting. Changing brightness, contrast, or apply a look-up table (transformation) to each pixel.
- Changing the color space of an image.
- Counting colors.
- Extracting connected components from B&W images, which can be used in morphological algorithms, such as detecting page content.
- Painting a semi-transparent color highlight. Filling an area inside or outside with a specific color.
- Clipboard operations.
- Access to the raw pixels in a very efficient way. Access to the palette.