This is the file “history.txt” which is installed by WPTools 7
************ WPTOOLS 7 History ************
********** http://www.wpcubed.com *********
**** Copyright (C) 2014 J. Ziersch and ****
**** WPCubed GmbH, Munich, Germany ********
* - = bug fix
* + = new feature
* * = changed, expanded feature
* IMPORTANT: Please edit file WPINC.INC to
* activate WPREPORTER, WPSPELL, wPDF, TBX
* and GraphicEx / PNGImage support!
* Delphi 2009 and later as inbuilt PNGImage
* THE MANUAL (PDF) AND REFERENCE (HLP,CHM)
* ARE PROVIDED AS SEPERATE DOWNLOADS!
~~~~~~~~~~ Important Notes ~~~~~~~~~~~~
- With Delphi XE2 or later it is possible to compile WPTools into a 64 bit applications.
You need WPTools 7 PRO or WPTools 7 Premium for this.
- Localization and Inch/CM selection see
Also see demo\tasks\localization. There are the required XML files.
- if flag wpDontAddExternalFontLeading is active in property FormatOptionsEx
the text will be formatted more like WPTools4/MS-Word. You can alternatively
set global variable WPDoNotAddExternalFontLeading := TRUE and
select the Printer WYSIWYG mode: TWPRichText1.HeaderFooter.UpdateReformatMode(true)
- The FormatOption wpDisableAutosizeTables can be required for good
display of tables. wpNoMinimumCellPadding for narrow layout, too.
- If you plan to use DBWPRichText please check
- The reader/writer receive their options through "FormatStrings"
please see list at http://www.wpcubed.com/manuals/formatstrings.htm
- WPTools is configured using the file WPINC.INC,
here WPREPORTER is activated and the optional WPShared, WPSPell and wPDF
can be selected to be compiled into main WPTools package.
- also see FAQ: http://www.wpcubed.com/forum/viewforum.php?f=15
- and support forum: http://www.wpcubed.com/forum/
WPTools 7 is based on the WPTools 6 engine and we took great care that it behaves like it
and does not introduce any significant changes. However it is possible, that in the
way the component is used in Your application, some difference become apparent.
Please contact use, if You see such differencs so we can correct or document them.
wPDF V4, or PDF creator, is available now.
It offers file embedding, Type3 fonts and improved engine and much more.
You can upgrade here:
21.9.2014 - WPTools 7.16
+ function TextWidth(resolution : Integer) : Integer
+ function TextHeight(resolution : Integer) : Integer;
+ using the global var WPSpecialCharacterAttrOrder : array[TWPSpecialCharacterAttrKind] of TWPSpecialCharacterAttrKind
it is now possible to customize the order special attributes are applied to the text, i.e. to
also hightlight fields inside of protected text do this:
WPSpecialCharacterAttrOrder[wpInsertpoints] := wpProtectedText;
WPSpecialCharacterAttrOrder[wpProtectedText] := wpInsertpoints;
15.9.2014 - WPTools 7.15
+ the HTML writer understand the format option "-WriteNumbers" to convert the oulines and lists directly into text.
- RTF writer writes \pard before a table
+ add support for Delphi XE 7
+ you can add compiler symbol to project NOGDIPLUS to deactivate GDIPLUS
- TWPRichText property editor did not show manage header&footer dialog
- fix in HTML writer which to write style property of img tag
- fix auto capitalize mode.
- InternalHeight did not work for table rows correctly
- Cells with black background will be imported by RTF reader with white text automatically (Compatibility to MSWord)
- RTF reader did not read tables which did not use \intbl correctly
20.6.2014 - WPTools 7.14
+ The ANSI Text reader will now also read UTF8 text files with BOM (requires Delphi 2009 or later)
+ The ANSI Text reader will now also read UTF8 text text files with option "-utf8' (requires Delphi 2009 or later)
+ The ANSI Text writer will now also write UTF8 text text files with option "-utf8' (requires Delphi 2009 or later)
+ with wPDF V4 and Delphi XE PNG files can be exported to PNG including a transparency mask.
+ With Delphi <xe Please activate the compiler symbol EMBEDD_PNGJPG in in wpobj_image and, in case you use wPDF 4 PLUS
also add the unit WPPDFR_PLUS to the project
5.6.2014 - WPTools 7.13.1
* DecIndent now works better for numbered and outlined text
* improved PDF/A Tag creation in combination with wPDF V4
* Carriage Return now also triggers the AfterCompleteWordEvent
+ Memo._MeasureObjectCurrPage available in OnTextObjGetTextEx
(see example in manual, "Use TextObjects (i.e. page numbers, sum fields, dynamic chapter headlines)")
* C++Builder 2010 and later only: Memo.GetBlockAttr and TWPBlockAttribute has been modified to workaround a XE compiler problem.
* TWPCustomRichText.FontSelect has been optimized. It does not use GetBlockAttr anymore.
* The VCL will now use String instead of TFontname to get and set fonts.
* C++Builder 2010 and later only: the overloaded method
function TWPAbstractCharAttrInterface.GetFontName(var FontName: TFontName): Boolean;
has been renamed to TWPAbstractCharAttrInterface.GetTFontName(var FontName: TFontName) to avoid a type clash
21.5.2014 - WPTools 7.13
+ It is possible to select a column by moving cursor to top line of table and click (+ new mouse cursor)
+ select row by click on left side of table (+ new mouse cursor)
+ TextCursor.SelectThisRow and TextCursor.SelectThisColumn now accept optional cell parameter
+ new GetLineFromXY with added var parameters to react on click on table lines.
+ the old V4 function TWPCustomRichText.FastAddTable has new optional parameter ReplaceCurrentPar to create or work (extend)
with a table at current position.
+ StartNewSection can optionally allow Undo Opertion. (= Default for InputSection )
+ TWPOCustomImage.CompressEx can now resample images.
- headerfooter dialog does not disable the section button
- InputSection has an new optional property InputSectionMode
- updated TManageHeaderFooter
- fixed: par.IsEmpty
- fix problem with red section marker after Undo
- in case BrushStart is used with flag wpBrushParProp and text is selected, the paragraph properties
(and tabs) will be red from the start of the selection, not the active paragraph
- TWPOCustomImage.COntentsWidth and -height now uses stored DPI values for GDI+ managed images, i.e. PNG
* updated code for border selection
* updated RTF reader to ignore wrong codepage setting
5.5.2014 - WPTools 7.12
- WPT reader had problem with TH tag
+ This utility function replaces the font of characters which are not defined in the fontfile
selected for the character:
function FixFontsOfText( RelacementFonts : array of String; Charset : Integer = 0 ) : Integer;
+ added support for Delphi XE6
4.4.2014 - WPTools 7.11'
- Ignore empty formula fields in WPTblCalc unit
- fix problem with footnotes and margin mirror
* HTML writer will not save span and font tags around <a> tags anymore
+ ViewOptions: wpShowParNames - this will paint the name on the left side of a paragraph
(flag was there since wptools 4 but not used in V5 and V6)
25.3.2014 - WPTools 7.10'
+ FormatOptionesEx2: wpfIgnorePropertyNumberStart
* optimized JPEG export to PDF
13.3.2014 - WPTools 7.10
- DeleteTrailingSpace ignored the EmptyFieldsToo parameter. (was always expected to be true)
- fixed 3 possible issues with compatibility to 64 bit
* added some code to RTF reader to recover after inserted (garbage) RTF header codes
- certain paragraph attributes were not read correctly from RTF after a table
- Lines between cells were missing under certain circumstances
- hyphenated words were sometimes printed with character overlap
- fix problem in TWPToolbar and zoom combobox
17.1.2014 - WPTools 7.09
* improve compatibility with Delphi XE5
- fix problem with fonsize combo in TWPToolbar when property ButtonHeight is 0
- when GPP support was active BMPOs were not saved to RTF
- if ViewOptions wpCenterPaintPages was used, the horizontal scrollbar was always visible
- assigning a style did not reset the numberstyle of a paragraph or style
13.12.2013 - WPTools 7.08.01'
- wpOnlySelectInSameCell Code broke use with "CreateDynamic"
10.12.2013 - WPTools 7.08.01
+ use format string "RTF-ParAsNewLine" to let the RTF reader convert \par to \line. This is useful when using TParagraph.LoadFromFile.
- in seldom cases Reformat was not called after deleting a selection which caused an AV in the paint procedure
- When WPBRD_DRAW_Finish was used, the top padding was even applied when the previous cell was also bordered.
3.12.2013 - WPTools 7.08
+ EditOptionsEx2 wpOnlySelectInSameCell allows only selection inside same cell or whole table
+ added PrintParameter.PrintHeaderFooter settings: wprOnlyOnOddPages, wprOnlyOnEvenPages
+ TParagraph.CreateCopyList has new mode flag: wpParCopyStyles
* improved selection code for cell selection.
Works better when merged cells are used.
- when deleting a column the next column was not always resized correctly.
- Undo for DeleteColumn did not preserve style
- in WPTools Premium Edition Report templates were displayed incorrectly
17.11.2013 - WPTools 7.07.1
+ usually otline numbering works on a complete section. With FormatOptionsEx2 wpfRestartOutlineNumbersAfterRegularText it
will now be restarted after text which was not numbered. (Compatibility to HTML browser)
* HTML writer will not write margins in <li> elements due to compile symbol NOMARGINS_IN_LIST
- HTML reader created wrong paragraph nesting with some HTML files
- WPPremium: Footnotes were moved in X direction
+ WPPremium: added function InputTextbox to simplify Textbox creation
- WPPreviewDlg property ZoomMode was ignored
- RTF reader added the name "HYPERLINK" to hyperlink start objects
- if a moveable image does not fit on the page a new paragraph will be created
- when colored text was selected the first non selected character will be painted in paragraph color
1.11.2013 - WPTools 7.07'
- when exporting images to PDF they anti alias was applied. That has been changed.
* improvement to HTML reader
17.10.2013 - WPTools 7.07
* The Inc/Dec Indent actions will now, if applied to outline paragraphs, only change their
numbering level and not the indent (like MS Word)
Add compiler symbol INDENT_FOR_NUMS to WPINC.INC to get back the old behaviour
+ new event AfterExecuteAction is triggered after a toolbar button click or action was processed.
- WPT writer sometimes saved incorrect numbering style when only parts of an outline was used.
- fix problem with background of repeated header cells
- 2 fixes in CSS reader
- fixes one lost TBitmap in WPRTEPaint
- improvement to HTML reader
- hyphenation marker caused sometimes a space to appear
+ added support for Delphi XE5
- the property editor "Change Pagesize" did not show the current size but the default.
* at 100% zoom unscaled images are no longer interpolated when painted with GDI+ to avoid blurring
+ added chapter "Database, TDBWPRichText" to PDF manual
27.9.2013 - WPTools 7.06
- improvement to lists loading and saving in HTML mode
* TParagraph.IsLastPar now checks parent paragraphs as well.
+ ButtonDistance property in TWPToolbar
+ WPToolbarConfigurate now uses as initial button selection the old style "Sel_..." properties
if no ConfigString was specified. (BTW - ConfigString =";" shows an empty toolbar)
+ WPToolbarConfigurate can now add separators after selected elements. The width of the separator
is controlled by property WidthBetweenGroups
20.9.2013 - WPTools 7.05
- page area was painted incorrectly when layout mode was Normal in ruler
- zoom menu of default actions did not work
+ ClearSelection can now delete texts which use multiple, differently structured tables
30.8.2013 - WPTools 7.04''
* the "heal table" produced an exception
* autoscrolling did not always update the screen (depending on theme)
+ EditOptionsEx2: wpNoMiddleMouseBtnScroll to disable scrolling after pressing the middle mouse
- DecSize did not work correctly when text had no attribute (used feault size)
* (internal change) formatter now implemented as class instead of procedure
26.8.2013 - WPTools 7.04
* The wptools caret will blink in default system frequency. Add compiler define
NODEFAULTBLINK to WPINC.INC if you need the old non-blink behaviour
+ wpAlwaysLockTextHeight in EditOpionEx2 to lock all text box heights
+ OnTextObjGetTextEx will now also work for fields when ShowMergefiledNames = true
- fix in XA_FInsPageExecute in default actions
+ Clear of the completed body text (SelectAll, ClearSelection) also resets the
paragraph style and attributes (like MSWord)
This can now be disabled using the EditOpionEx2 flag wpClearSelectionDontRemoveParAttr
* clearing the complete text of a textbox preserves the attributes and style of first par
- save printed file caused underlying editor to be wrongly repainted
* minor changes to TWPImageList to detect programmer errors
- DecSize allowed font sizes as small as 0, this has been changed to 1
- fix problem with moving of TextBoxes with anchors being in table cells
27.7.2013 - WPTools 7.03
+ improvement to image compression code. Create event OnPrepareImageforSaving to use:
if TextObject.IsImage then TextObject.ObjRef.Compress;
+ toolbar style icons are disabled when editr is switched to readonly
+ SpellAsYouGo icon is initialized to current state
- missing DelayedReformat in method ReplaceTextMethod
- some untis were missing from the demo
* some improvements to editor
17.7.2013 - WPTools 7.02'
- WPTools Premium: Fix the problem that text boxes which were placed in header and footer were
not displayed and the frame was drawn at wrong position
12.7.2013 - WPTools 7.02
- images were not saved correctly when InsertGraphicDialog was used
+ the setup now installs the PNG images for the toolbar gylphs (full version only)
- fix problem when loading sections from RTF
- changed the resource string to remove the under scores.
String_meDefaultUnitINCHorCM --> wpSTmeDefaultUnitINCHorCM
- OPEN und NEW action will now set the modified flag in case they are used with the
data sensitive TDBWPRichText
* when copying a row which used span styles it was notz possible to insert it agaian
without creating a nested table.
4.6.2013 - WPTools 7.01"
- fix in GetXYPositionAtRTFTW to sometimes report 0 for position 1 in line of length 1
- some methodes in TWPRTFDataCollection had been marked protected instead of public
- change in WPIOWriteRTF to ignore colors with illegal index values
- some small changes to improve compatibility with C++Builder
- fix in CSS reader to improve "margin" propery
23.5.2013 - WPTools 7.01'
- fix some minor issues in installation script
* ConvertTableToText now handles nested tables
18.5.2013 - WPTools 7.01
+ ConvertTablesToText, convert all tables to text.
- the new GDI+ based image drawing code was not supported by printers
- fix minor drawing problem in Toolbar configuration
+ new component TWPCreatePDFDlg (can be used with wPDF V3 or later)
+ Toolbarbuttons to display color drop down: (property WPToolbar.StandardColorDropdowns=false)
+ Style and Paragraph Border dialog now used the new color selector
- paragraph colors was not working in footnotes
13.5.2013 - WPTools 7.00.1
+ TWPCustomRtfEdit.SaveToFile renames file before overwriting
+ EditOptionsEx2 wpSaveToFileCreatesBackupfile - create and keep ~N~ backup file
+ SaveToFile triggers the EWPNoWriterClassFound exception when no writer class was found
- rowmerge caused cells tu use wrong width in next column
* for consistency with Word the row padding is passed as value div 2 to the cells.
8.5.2013 - WPTools 7.00
+ Using the global variable WPDrawRectWithBitmap_bitmap the shading can be customized.
* AInc now uses default font size
- replaced OnTextNotFound with OnSearchReplaceMessage which not only
by the find method but also
bei the ReplaceMethod.
* TWPRTFEnginePaint -> TWPRTFEngineEdit, requires unit WPRTEEdit
* wpDefActions ---> wpDefActions7
+ visual Style Picker component (tiles with stylename and preview)
+ TRTFProps now component. Can be assigned to WPRTFPropsComponent
+ updated WPGutter to display style used by text
* InsertGraphic with parameter AsLink=true will trigger
the event OnRequestHTTPImage with Reader=nil
+ Paragraph.LoadFromString has new options
+ WPRichText1.FindTextBoxPar can create sub paragraphs
+ event: RTFData.AfterChangeTextBoxPar
+ Labelprinting: Caption and frame is not painted for empty labels. wpfLabelAllowSoftPagebreak
+ images can be embedded into HTML
+ ParStyles.SetCSS( ... )
+ Themed Gutter - use clNone as background color
+ CombineCellsVertically improved
+ Added API calls to TParagraph: ASetRecursive
+ save "variable" in WPIOWPtools
+ improved theme support (ruler, editor with scrollbars, toolbar, Gutter )
+ new Ruler Design and Symbols (Shaded)
+ internal FIND Dialog
+ internal Replace Dialog -- for better theming
formatting now done in
WPRTEReformatA - WPTools 6 formatting (old logic but adapted to use new datastructures)
WPRTEReformatB - WPTools 6 HTML formatting (old logic but adapted to use new datastructures)
- RTFDataCollection does not implement TextObjects anymore. It is implemented in
- TWPRTFDataCollectionBase is now the basis RTFDataCollection.
We moved edit parts to WPRTEEdit. There is also the merge code.
- new unit: WPRTEDefsConsts
- new unit: WPRTEPlatform
- new unit: WPRTEEdit
*** Changes to the Engine types and logic ***
type TWPVirtPageRTFDataRef was removed
This used to be a record. It has been replaced with TWPVirtPageRTFDataFrame class.
It is now stored in a list and not an array. This makes it possible to access and store more data.
TWPVirtPageRect was removed
This is now a class TWPVirtPagePrintRect. The instances are stored in a TList.
Several TWPVirtPage "RTFData" functions have been modified to work with the new object class. function ElementPage has been removed.
property DisabledDialogs: TWPCustomRtfEditDialogs was removed from the PreviewDialog and replaced by
property DisabledButtons : TWPPreviewButtons
ButtonHeight in Toolbar must be set. Default 22.
RTFDataBlock.InsertPar was replaced by InsertParEx.