Extensions & Plugins
Apps & Tools
This rendering machinery is powerful, portable, lightweight, flexible, fast and resolution independent. Verdict: ideal for high quality e-books, forms, charts, maps, splash pages, user interface and all sorts of resolution-independent electronic documents and multi-media presentations.
D-Type PowerDoc Engine is a high-performance cross-platform C/C++ rendering library and API for professional high-quality resolution independent and scalable 2D presentations consisting of text, bitmap and vector graphics. This powerful library is suitable for all types of applications that create, manipulate, display and store information. While D-Type PowerDoc Engine relies on D-Type Font Engine and D-Type Rasterizer to render text and shapes, this engine has several distinct features:
D-Type PowerDoc Engine's primary goal is to render entire pages and documents. This includes e-books, large amounts of text, forms, charts, maps, CD/DVD and multi-media presentations, splash pages, user interface and all types of similar electronic documents.
D-Type PowerDoc Engine automates and streamlines the entire process of creating, manipulating, displaying and storing visual information. This allows programmers to concentrate on other, more important tasks of their application. In other words, programmers can now focus on structure while allowing D-Type PowerDoc Engine to deal with the complex task of rendering and display.
With D-Type PowerDoc Engine, objects to be rendered are created in accordance with predefined object design specifications. By following these specifications, developers can easily create objects that PowerDoc Engine will rendered very quickly and efficiently. Consequently, PowerDoc Engine does not need a complex parsing machinery to process and render its documents (which is not the case with technologies such as PostScript or PDF). Still, PowerDoc Engine is capable of rendering virtually anything that PostScript can, except that it will usually do this much more quickly.
D-Type PowerDoc Engine provides comprehensive support for advanced rich text layout and is therefore extremely well suited for rendering complex text. It supports unidirectional and bidirectional text, complex scripts such as Arabic, Indic or Thai, horizontal and vertical writing direction, inline objects that can be anchored anywhere in text, advanced typography and much more.
Although D-Type PowerDoc is a powerful technology, it's quite easy to master and suitable for both beginners and professionals. D-Type PowerDoc Engine features a clean, intuitive and versatile API. It also includes the PowerDoc Editor, a simple to use visual application designed to assist with the creation of complex PowerDoc documents that can be later manipulated through code.
As with D-Type Font Engine and Rasterizer, the rendering quality is excellent. Crisp, smooth, anti-aliased type and graphics are standard. On top of this, D-Type PowerDoc Engine adds support for alpha-masking and high-quality bitmap resampling and filtering.
Finally, D-Type PowerDoc Engine includes D-Type Font Engine and D-Type Rasterizer as a subset of its core API. This means that by licensing D-Type PowerDoc Engine, developers not only get access to D-Type PowerDoc Engine API, but also all of the D-Type Font Engine and Rasterizer functionality.
D-Type PowerDoc Engine excels at rendering high-quality electronic documents and works well on all types of output devices, monitors, LCD and TV screens. The engine generates exactly the same result, down to the pixel, on any platform your application will run on — whether this is Windows, macOS, Linux, iOS, Android or your own custom embedded system.
D-Type PowerDoc is a powerful, portable, high-quality and high-performance resolution independent rendering technology. Its primary purpose is to create and render entire pages and documents in a device, resolution and platform independent manner. This includes e-books, large amounts of text, forms, charts, maps, CD/DVD and multi-media presentations, splash pages, user interface and all types of similar electronic "documents".
D-Type PowerDoc Engine is a high-level scalable graphics library featuring a rich set of 2D graphics primitives. The term scalable means that all graphics primitives (e.g. text, shapes, bitmap images) are interpreted as vectors rather than bitmaps. This allows applications to scale the output to virtually any desired size without compromising the quality. Additionally, this approach makes it possible to apply various mathematical transformations to any rendered objects, including compression, expansion, rotation, skew, perspective or any combination. Finally, the term high-level indicates that D-Type PowerDoc Engine is not just a collection of routines for drawing graphics primitives, but a technology for creating and rendering entire pages and documents in an object oriented manner.
Documents created by D-Type PowerDoc technology can be stored on disk for later use or appended to another document in order to create more complex documents. Documents stored on disk in D-Type PowerDoc format are device, resolution and platform independent and fully portable across applications and different platforms (e.g. Windows, Mac, Linux). D-Type PowerDoc API is also fully cross platform which means that applications that utilize D-Type PowerDoc API are usually cross platform too — they are typically written once and compiled on many different platforms without any modifications. Therefore, D-Type PowerDoc is a portable document and rendering technology.
D-Type PowerDoc is not a vector based drawing application or a desktop publishing application. However, D-Type PowerDoc is very suitable as the rendering engine in these types of applications. This is because D-Type PowerDoc provides all the infrastructure necessary to build complex text and graphical objects that are typically used in vector based drawing programs and desktop publishing applications.
Also, D-Type PowerDoc is not a language or technology for describing the logical structure of documents. In other words, D-Type PowerDoc Engine is not designed to directly process structural content in documents (e.g. chapters, headings, subheadings, paragraphs, lists, data tables, table of contents etc). The representation and handling of structural content, when desired, is the responsibility of your application. But once again, D-Type PowerDoc Engine provides all the infrastructure necessary to render complex structured documents quickly and efficiently and can be very suitable as the primary rendering engine in applications that process and manipulate structured documents.
D-Type PowerDoc unifies text, vector and bitmap graphics in its clean, intuitive and advanced object oriented rendering model. With D-Type PowerDoc Engine documents are constructed using PowerDoc objects. PowerDoc objects are the building blocks of any document, regardless of how complex it is.
D-Type PowerDoc Engine provides applications with advanced graphics capabilities, including high quality, true color 24-bpp anti-aliased rendering with 8-bpp alpha channels, alpha-masking and blending and high quality bitmap resampling filters. D-Type PowerDoc renders vector and bitmap graphics equally well.
D-Type PowerDoc Engine provides text layout and text rendering capabilities that few other products can offer. Bidirectional text with arbitrary nesting depths, support for complex scripts such as Arabic, Indic or Thai, horizontal and vertical writing direction, inline objects that can be anchored anywhere in text, advanced typographical properties and incredible text processing and rendering speed are just some of the features that D-Type PowerDoc Engine is known for.
D-Type PowerDoc Engine provides built-in infrastructure for "live" text editing. This means that D-Type PowerDoc applications can easily get precise information about the position and extent of each glyph rendered on the screen, obtain an index that maps that glyph back into the input text and get some other useful information about the result of text layout operations. This then allows D-Type PowerDoc applications to very easily support highlighting blocks of selected text, implement cursor movement, hit testing etc. All this functionality is made possible through the use of Frames, which are special PowerDoc objects representing arbitrary quadrilaterals (i.e. 4-point polygons) enclosing every glyph rendered on the screen. Frames are described more thoroughly in the technical documentation provided with the evaluation libraries. The great thing about Frames is that they work reliably regardless of how complex the text is, whether it is unidirectional or bidirectional, whether it is rendered horizontally, vertically, transformed, in perspective etc.
Affine and 2D perspective transformations (i.e. a full 3x3 transform matrix) can be applied to any PowerDoc object, whether text, bitmap or vector based. This allows D-Type PowerDoc applications to easily transform objects (e.g. stretch, rotate, skew) and even render them in perspective, much like 2D objects are rendered in 3D space. Of course, the text remains fully editable (via Frames) even when rendered in perspective.
A typical D-Type PowerDoc document consists of one or more pages. The term page is very generic and, depending on the application, can have different meanings: a page in a book, a layer, a worksheet, a computer screen or any other 2D surface.
Each page consists of one or more PowerDoc images. By definition, images are visual representations of PowerDoc objects. Typical PowerDoc objects include characters, text lines, text areas, rectangles, circles, custom shapes, gradients, bitmap images and other primitives. Before a PowerDoc object can be drawn, an image specifying its position on the page must be created. Later, images can be moved, copied to another page, multiplied etc. However, not all PowerDoc objects have images. For example, some objects simply hold data and have no visual representation.
Every object has one or more properties. For example, color and transparency (pdRGBT) are the properties of the Surface object, while font (pdFontIndex) and font size (pdFontDw and pdFontDh) are the properties of the Typography object.
More complex objects are built on simpler ones. This is achieved by linking. For example, the Shadow object is built by linking to the Surface object and supplying two additional properties: pdShadowDx and pdShadowDy. Similarly, the Character object is built by linking to the Typography object and supplying an additional pdCode property. In this way, an object hierarchy is established.
Once all the properties are set and the object hierarchy established, a D-Type PowerDoc document can be drawn or stored on disk for later use. This is achieved by a single call to the appropriate function.
D-Type PowerDoc Engine API also allows applications to create and embed custom objects into PowerDoc Engine documents. Since these documents can be permanently saved on disk, an application can use the PowerDoc file format to store its own data.
Click the thumbnail to see a larger version of the image.