|
| |
OV Printing Pack - set of components for creating, previewing, printing and
saving printable documents
Description
Screen shot
Download
Purchase
What's new
The print preview ability is the must for all programs creating printable
documents. So, I was always wondered why VCL - being very good class library (in spite of written
in Pascal :) ) - almost passes by a problem of document creating, previewing and
printing.
Sure, there is TPrinter, but it is too basic for easy use, and there is no
simple way to preview the document. Sure, there is 3rd party reporting tools, but
they did not allow to draw all you need or like to draw.
So I decided to write my own components
for print preview. And I've succeeded in it! Because I liked the results I
decided to publish them.
With time OV Printing Pack ceased to be simple print preview and changed into
full-fledged enough print and report engine. It is not WYSIWIG, you should code
- instead, you get full freedom in any fine drawing. But it doesn't mean that
you are left alone with TCanvas methods. The Pack has power utilities to draw
formatted text, tables of complex structure etc.
The package includes the following components:
-
TCustomOVPrintout
- basic component for creating the reports. It introduces methods and properties
similar to TPrinter, but
presents some additional facilities:
-
set of
framework methods and events that help to code a report in C++ Builder IDE
or to create specialized derived classes.
-
easily
determine or set printer capabilities and settings: page size, margins, orientation, resolution
etc.;
-
units transformation functions;
-
page layout
control.
-
Drawing utilities. In addition to
methods and properties of TCanvas, that are presented by TCustomOVPrintout
component, the Pack contains a number of classes and functions to help
drawing:
-
powerful
methods for formatted text drawing (with various horizontal and vertical alignment
and justification, custom tabulations, text rotation, word
wrap);
-
rich text (RTF)
drawing;
-
TOVDrawTable
class to draw tables of complex structure with any content, with ability to
split large tables on pages;
-
etc.
When the
document is ready, you can preview it, print, save to file for subsequent
loading.
-
TOVPreview -
component for previewing documents created by TCustomOVPrintout and its
descendants. It has more powerful abilities than, for example, MS Word
preview has,
and may be compared with preview of CAD systems.
-
unrestricted zooming and
navigation using TOVPreview methods or by users
mouse
actions;
-
ability to
view more than one page at once; pages can be placed in matrix way, few pages
in row, that is very important when a document you create (for example, large table or
drawing) does not fit one page in width and is split.
-
ability to take
ownership on corresponding TCustomOVPrintout component that allows to show
documents modeless, so user can create and view a few documents at once. Of course, modal preview is supported as well.
-
TOVPreviewForm
- default preview form. It can show more than one TOVPreview component on
page control
at the same time, so user can create and analyze any
number of documents at once. The form has controls and keyboard shortcuts for
documents' navigation, zooming, printing and saving / loading, and supports
mouse wheel scrolling.
The OV Printing Pack user interface can be easily
localized by replacing a single little resource file (see help for details).
So far the pack has translations for Danish (thanks to Freddy Holst
Christensen), English, German and Russian . You are welcome to contribute
translations for other languages.
Please download help file and demo application below for more
information.
Please view screenshots
of default preview form.
Downloads
| Download trial version of OV Printing Pack. It
is quite functional but paints logo message in the top left
corner of each page. The zip file does not contain help and demo; please
download it separately. |
for BCB 2006 (compiled with patch 2) |
ovprinting2006eval.zip |
| for BCB 6 (compiled with patch 4) |
ovprinting6eval.zip |
| for BCB 5 (you need have got patch 1 applied) |
ovprinting5eval.zip |
| Download compiled HTML help for OV Printing Pack |
ovprintinghelp.zip |
| Download demo executable |
ovprinterdemoexe.zip |
| Download demo source code (you should as well download the
package itself) |
ovprinterdemosrc.zip |
| Translated resource files for Danish, English, German and
Russian |
localization.zip |
Purchase
You can buy full version of OV Printing pack with source
code for $59 online at
ShareIt!
(preferred way) or contacting me
directly by e-mail. Registered users get all
future versions for free.
Main new
features in version 1.4
- New powerful component TOVDrawTable to draw tables of complex structure.
- Support for non-horizontal text drawing (new
font management methods,
text output methods are enhanced).
- Drawing rich text format (RTF).
- Some handy drawing utilities for coordinate transformation,
GDI objects handling,
graphic primitives routines,
clipping output.
- Changes in TCustomOVPrintout
component:
- New protected virtual methods
DoBeginDoc,
DoEndDoc,
DoBeginPage,
DoEndPage,
DoPaintPage calling corresponding events. It makes creation of
TCustomOVPrintout
descendants more handy.
- New protected virtual method
DoFreeResources and corresponding event
OnFreeResources intended to allow freeing resources allocated
while drawing.
-
Read-only properties
MinMarginLeftMM,
MinMarginTopMM,
MinMarginRightMM,
MinMarginBottomMM added. They provide minimum values
of margins conditioned by printer restrictions.
- Method Print now returns
bool indicating that the printing really had
a place (was void).
- Changes in TOVPreview
component:
- Navigation methods IncrementUp,
IncrementDown,
IncrementLeft,
IncrementRight,
Wheel added.
- TDefaultPreviewForm:
- Added actions and keyboard shortcuts for new TOVPreview navigation
methods.
- Bug with incorrect current page indication fixed.
- Unstable bug with "live" preview deletion fixed.
- Resource file added with localizable strings for easier localization
and internationalization.
- Support for BCB 2006.
See help file for more details.
Back to VCL components |