Release Notes WPTools 9

<< Click to Display Table of Contents >>

Navigation:  »No topics above this level«

Release Notes WPTools 9

clip218

 

*** WPTools 9.2.009' - 25.10.2021 ***

- fix in ClearTextBetween method

+ wpHidePageFrames in ViewOptionsEx2 to hide frames which may be defined in the loaded RTF data

* improved editing of bookmarks, esspecially bookmark protection and open/close consistency preservation

* avoid calling object destrcutor if moved to a new line by pressing enter

 

 

*** WPTools 9.2.008 - 29.9.2021 ***

+ Support for Delphi 11 - Alexandria

 

*** WPTools 9.2.007 - 11.9.2021 ***

- the AfterCompleteWordEvent did not work after a . when wpAutoDetectHyperlinks  was used

- when overwriting selected text the char attribute of the first selected character is beeing used.

+ Use wpOverwriteTextUseAttrAtInsertionPoint in EditOptionsEx2 to always reset the char attribute

+ Use wpDontInheritAttributeBeforeSpace in EditOptionsEx2 to not inherit the character attribute used before a space character

 

*** WPTools 9.2.006 - 28.8.2021 ***

* WPTools tries to no separate - and numbers. This can be switched off in PRO version with compiler symbol DONTKEEPMINUSWITHNUMBER

 In case there is text (no number or space) before the - it will now break the line

- fix format problem when typing in paragraph with images

+ optional parameter to WPRichText.ParStyles.LoadFromFile to load CSS stylesheets instead of lists in WPCSS format

+ better word wrap in reformat for ' and numbers

+ improved indention when activation bullets and numbers

- fix in HTML reader to add space after <div>

+ new format string option -WritePXValues makes the HTML writer write Pixel instead of Inch Values.

 Please note the pixel values are calculated on a basis of fixed resolution which is 96 by default.

 

*** WPTools 9.2.005 - 18.5.2021 ***

* improved redo support

* improved undo after load from stream / paste from clipboard

 

*** WPTools 9.2.004 - 7.5.2021 ***

- added unit WPRTEFormatH to PRO and Premium setup

* improved message handling in WPCtrMemo.pas

- fixed NODB switch in package source

 

*** WPTools 9.2.003 - 8.4.2021 ***

 

+ Option in RTF reader -callrequesthttpimage enables call of event OnRequestHTTPImage

+ Many additions to the XML Interface to better support XMP data (see wpXMLInt.pas)

* HTML export now embeds BMP and WMF as PNG - although using smale width(height matching to

 size of object in text. This also works for images which have been embedded using the GDI++

 support in TWPObjImage

- fix problem when saving EMF embedded into HTML as JPEG compressed images

- fix in DocX reader to un-inherit character styles in paragraphs to text

+ function LockRichtext : Boolean; - Check wethere a scrolling opertaion takes place at this moment

 

*** WPTools 9.2.002 - 15.1.2021 ***

 

+ new demo G) Technology\ResizeDynamic

- improvment for calculation of size of image in table cell

- fix resource problem in WPEval

- improvment for moving objects with touch

- fix selection markers in normal layout mode

 

 

*** WPTools 9.2.001 - 13.12.2020 ***

 

+  Images can now be alignbed to the bottom of a line. Use ViewOptionsEx2: wpAlignAllImagesToLinebottom

*  Images in lines with no other text bwere aligned to the top. This has been made more consistent and they

  are alignbed to the baseline. To get the old behavior back set the global variable WPAlignAllObjectToBase := false.

+++ WPTools now comes with SVG support

  + HTML files can now be loaded with linked SVG images.

    to activate this mode define the compiler symbol SUPPORTSVG in WPINC.INC

  + new component TWPSvgImage which is a TGraphic control which to display a SVG file

  + new component TWPSvgGDIRenderComponent to render SVG data to a Canvas

    The source code for the SVG rendering is provided also iun standard edition!

+++ Improved hirarchical format algorith - implemented in WPRTEFormatH.pas

+++ The HTML reader can now load HTML files with the html nested structure kept intact. This requires the WPRTEFormatH algorithm to render

 

+  Touch can now be used to move an image

+  The dialogs now have a property "RestorePosition". If this is ture (or the global variable WPAllDialogsRestorePosition)

  the position will be restored when they are opened the next time in the same instance of an application.

 

*  improved UNDO support

*  improved cursor control

*  some improvements to editor

 

 

*** WPTools 9.2.000 - 5.11.2020 ***

 

+ TWPRichText.EnumText to enumerate all characters and/or text objects

+ TParagraph.CharAtIs(p,c) to quickly check for a certain character at a certain position (also handles invalid values for p)

+ [...] in Color drop down selector to add custom color

+ TWPFormatOptionsEx3

wpfDisableScaleImagesToTableCells   // if false - Adjust an image in a table cell to the macimum width

wpfOnImageScaleUseMaximumRowHeight  // if true - Adjust an image in a table cell to the maximum height

* enhanced HTML loaded (UTF8 href and src)

+ improvement to HTML writing

    - table background

    - line-height

    - unicode entities

+ wpTokenToTextObjects flag in procdure ReplaceTokens

* improved readonly handling

- improve TParagraph.DeleteParagraphKeepChildren

+ EditOptionsEx2 wpNeverMoveTextToUndoButCopy - useful if you need TWPTextObj.OnDestroy after an object was deleted

* Ruler for better functionality in normal layout mode

* improvement with cursor position after UNDO

* improvement undo handling with table actions

* Some text formatting fixes

*** several enhancements in the RTF engine and object rendering

 

 

Lauch of WPtools 9.2 - with support until 31.12.2021

 

 

*** WPTools 9.1.900 - 3.8.2020 ***

* Modification in reader to load image objects cosistntly

* some fixed in RTF engine

 

*** WPTools 9.1.820 - 21.7.2020 ***

+ ppProtectSelectedTextToo protected selected text UNLESS the whole text is selected. With the new

 ppProtectSelectedWholeTextToo you can also protect text if the uses presses Ctrl+A to select all text

+ RTFDataBlock.IsEmpty( IgnoreWhiteSpace : Boolean = false; IgnoreEmptyPars : Boolean = false )  

     function checks for a text which consists of white space only

- fix right border after table split in last cell of row

* FIX in DocX units

* FIX nested table loading in RTF

 

*** WPTools 9.1.801 - 20.6.2020 ***

- restored functionality of TParagraph.ParentParentTable

+ new property TParagraph.IsNestedTable

- fix broken undo for table operation

- small fix in SymbolDialogEx

 

*** WPTools 9.1.800 - 17.6.2020 ***

+ Support for Delphi 10.4 Syndey

* the concept of the "Default Actions" has been slightly modified to avoid frequent installation problems:

 The image lists are now created in code and filled from a resource file. This reduces the size of the DFM file.

+ AddToImagelistFromResource utility function since ImageList.ResourceLoad does not work correctly

- bookmarks were not closed correctly when document was ending with a table

- AllowMultiView was not working

- fix problem with image in cell when par uses right alignment

+ when writing tagged PDF file (PDF/A) wptools can add tags for each element. Certain validators

 are not prepaired to find table/tr/td tags so it is not possible to set a flag

  WPRichText.Memo._WPDFOnlyWriteP := true to only write the "P" tag.

* changed type of WPToUnicodeW from WideChar to Word to fix unexpected codepage conversion

- improvement of base64 decoder for embedded images in HTML

- fix rare case in which RTF writer did not write corrrect line spacing

- fix for HTML reader - ignore unit img width/height

+ compiler symbol {$DEFINE CTRLTAB_EDITFIELDMOVE} // ON: Ctrl+Tab moves backwards in form, otherwise Shift+Tab

+ Forms can use a global font / size

+ wpUseAttributeEvenIfSingleParagraph

+ TWPRTFDataBlock.RtfText.LoadFromFile now implemented

+ event RTFData.OnReacalcText (must be assigned in code to allow custom recalculation of fields and cells)

+ new component TWPRTFBalloonHint to shae a RTF formatted hint. (Assign the string to propetrty "Text")

* some improvements to TWPPaintEngine

* check for font 'Segoe UI Emoji' to enable color emoji printing

+ The TWPSelectedTextAttrInterface now has a propetry CharAttr to quickly read and assign CharAttr index values.

* disable Ctrl+Enter in header/footer (cannot create new page there)

 

 

*** WPTools 9.1.020 - 2.3.2020 ***

+ new event OnDrawUnderline. This powerful event makes it possible to customize background and underline of

 hyperlinks, i.e to draw a background for hyperlinks, record the position

 of hyperlinks on the canvas. Since this event is triggered for all kind of underlines, it can also be

 used to dynamically change the underline color.

- the WPT loader didn't handle NumStyle=0 as undefined like WPTools 7

- fix problem with DeleteHyperlink

* improvements in colspan handling

* changed the way grid lines are painted to avoid deletion of the previously painted borders

 

*** WPTools 9.1.019 - 19.1.2020 ***

* GetSelectionAsString was ignoring TextSaveFomat property

+ The save format string '-alwaysembed' now works consisterntly to embed images in WPT, RTF and HTM format

 usage:  s := WPRichText1.AsANSIString('HTML-alwaysembed,-nobinary');

 

*** WPTools 9.1.018 - 9.12.2019 ***

* Save EURO Sign in RTF code with selected codepage 1252 in old way as '80

- fix format problem while typing in center/right aligned text when soft line break was used.

- fix wrong cursor position when soft line breaks were used.

* improved column resizing

* improved ruler

- TParagraph.AMerge sometimes cleared tabstops

 

 

*** WPTools 9.1.017 - 25.11.2019 ***

* AppendAsSection: use wpDontSetPageBreak to avoid page break

* update preview in ParagraphPropDialog

* LayoutPageGap now also supports left and right margin lines (see ViewOptions)

* improvement to DocX reader

 

*** WPTools 9.1.016 - 25.10.2019 ***

- fix problem with Overflow in MulDiv

- fix problem with Ruler.Heigh was not persistent

 

 

 

*** WPTools 9.1.015 - 21.10.2019 ***

+ wpDontDrawLineForSoftPageBreak in ViewOptionsEx

* improved UTF8 handling in XML Interface TWPXMLTree

- improve display of "normal" layout in vertical ruler

- improved theme support in ruler components

 

   NO MORE BLURRY ICONS WITH ANY RESOLUTION

    WITHOUT THE USE OF MULTIRES-BITMAPS:

  integrated SVG render engine for toolbar and ruler images (WPSvgLight)

   requires Delphi XE2 and later.

    wptools_windows_dark_theme_large

    For general SVG support and more options and tools,

    please get our optimized product WPSVGPro. (available in 11/2019)

 

*** WPTools 9.1.012 - 8.10.2019 ***

* Please see the notice about how to use speech recognition software

+ TWPTextObj.SelectEmbeddedText

* fix problem with TWPTextObj.StartTag / EndTag

* changes to use generics

* DocX reader now show the cause of an reading error.

 

*** WPTools 9.1.011 - 22.9.2019 ***

* removed abstract ancestor of TWPCustomAttrDlg and replaced with interface

* make sure the OnChange is triggered after object and table resize

- fix problem with Emoji dialog to require 2 returns to add icon after search

- improve Emoji width calculation

* SetZoomMode now resets double page view if user selects FullWidth or FullPage

+ TextCursor.InsideSelection makes it easy to check if the cursor is currently located within a selection.

* several changes to make release of WPTools for FireMonkey possible

* DocX writer - fix image problem

 

 

*** WPTools 9.1.010 - 5.9.2019 ***

- improve D2D draw so all Emoji are now drawn correctly

* draw cache for emoji when the same are used in a row

- fHasShadingType in RTF reader - load RTF from Excell

- skip ansi char in emoji dialog

- emoji dialog closed after each symbol

* some enhancements to API and fixes for older Delphi versions

 

 

*** WPTools 9.1.004 - 27.7.2019 ***

 

+ TWPRTFEngineBasis.Assign(Source) to copy text and special text attributes

+ support for ViewOptionsEx wpDontClearPageBackground in RTFLabel

+ TWPRichTextLabel  now has CPPosition property

+ RTFLabel now supports different LayoutModes

+ RTFLabel paints page frame in Transparent mode

+ RTFLabel has new event: OnMeasureTextPage

+ RTFLabel has new properties:

   HighLightColor

   HighLightCellShading

   HighLightTextColor

   TextColor

   XOffset

   YOffset

   XBetween

   YBetween

 

*** WPTools 9.1.003 - 18.7.2019 ***

 

+ TWPTableProducer now has a property editor to navigate block and column templates.

+ The TWPTableProducer can now sum values in selected columns

- Emoji painting did not respect paragraph and page color

+ experimental mapping of "blonde female person" to just "female person" since

 the blone woman is not displayed by Windows. Activate this mode

 with WPRichText1._EnableEmojiMapping := true.

- fix some UTF8 characters which got into some of the source units.

- fix problem with Self.ClassType.Create as ... which requires new compiler

* some improvements to support dark theme better

 

 

*** WPTools 9.1.002 - 16.7.2019 ***

 

+ Support for combined emoji, such as symbols for families and couples.

+ function InputSymbol can now be used with a unicode string to insert one or more emoji

+ The UNICODE text writer now also writes the unicodes for symbols

+ Emoji Dialog now directly inserts the glyphs. (This mode is activated by $DEFINE DIRECT_IME)

 

*** WPTools 9.1.001 - 13.7.2019 ***

 

++ support for emoticons with skin tone modifier

++ support for Windows Insert Emoticon Dialog (Windows Keys + '.')

+ Load Emoji from DocX files

+ Save Emoji to DocX

* Improvements to position of IME Editor

++ Saving and loading of emoticons in RTF and HTML in compatible way

* update SymbolDialogEx - show much more emojis

* improvement to Emoji reading from RTF - detect more emojis

* improvement to SYMBOL writing - Emojis will now be saved as dual unicodes

- fix to unicode writing: write high unicodes as negative numbers

- ParentParentTable was called in CombineCellsVertHorz insetad of ParentTable

- fixed some references to System.ImageList (thanks to Delphi IDE to add it all the time)

- fixed problem with CombineCell procedure

- fix loading color from DocX styles (rgb instead og bgr)

- improved button display in case PNGImage was not loaded.

- fixed issue with Delphi 5 - compiler did not handle * command

- fixed an issue with C++Builder, use of reserved name for variable

* updated description on how to install in C++Builder

+ added C++Builder package project under "Demos/H) C++\Package"

 

*** WPTools 9.1.000 - 9.7.2019 ***

 

A) General

 

* updated and revised manual

* new sample code

* may code improvements, stability and handling enhancements

 

B) Installation

 

* we gave up the separation in runtime (RT) and design time (DS) packages to simplify the installation

  because the dependency to the RT package caused some trouble in the past.

  If you work with a WPTools 8 package, you can compile it with WPTools 9. Just make sure the compiler symbol

  WP9 is defined.

 

B) GUI improvements

 

++ we provide all new glyphs are various resolutions and with the PRO version the SVG vector source

++ much enhanced WPImageList. It now also supportes vertical and horizontally arranged gylphs.

  Using the property editor (doubleclick) multiple files can be loaded into the Images collection.

  Also supported now are overlay rectangles for colors.

++ improved InsertSymbol dialog

* The WPTools property editor now also supports the dark

  style in the Delphi IDE ($define DARKTHEME in package options)

* Using the global variable WPDrawRectWithBitmap_bitmap the shading can be customized (BMP or PNG)

+ improved glyph drawing code for TWPToolButtons

+ ViewOptionsEx2: wpNoBlueRectsAroundHeaderFooterWhileEditing

+ ViewOptionsEx2: wpNoBlueRectsAroundTextboxWhileEditing

+ ViewOptionsEx2: wpPaintSymbolTextObjectsUsingD2D (for Emoji)

+ EditOptionsEx2: wpDontEnterHeaderOnClick

+ EditOptionsEx2: wpDontEnterFooterOnClick

- improvement of auto hyperlink creation

 

+++ included GLYPH files

 

C) API

+ TParagraph.SetText now returns the paragraph itself for nested assignments

+ TParagraph.Append (3 overloads) now return the paragraph itself for nested assignments

+ TParagraph.SetProperty(WPAT_Code: Byte; Value: Integer) : TParagraph;

+ function InputTextbox

+ GotoBody - to leave editing a layer, such as text box

+ new colspan parameter in TParagraph.AppendNewCell

      function TParagraph.AppendNewCell(DontCopyStyle: Boolean = FALSE;colspan:Integer = 1): TParagraph;

+ TWPRTFDataBlock.LoadFromString

* TWPRTFDataBlock.LoadFromStream now also has FormatString paramater

+ function GetSelStartEnd

 

+++ many improvements to make API more intuitive.

 

D) TableProducer

+ improved data access code

+ easier creation of template in code (for scripted creation)

+ new sample application

+ property AutoSelectEditMode in TWPBlockTemplateDB

 

E) SYMBOLS

+ support for chars>$FFFF

+ support for Emoji painting

+ improved HTML reading and writing

+ improved RTF reading and writing

++ function InputSymbol

 

F) Formatting

 

* Usually vertical alignment only works in cells which are not separated by a page break.

 Now vertical bottom alignment in table rows which span 2 pages is supported if the larger cell(s)

 are positioned left to the aligned cell and if the aligned cell only contains one paragraph.

 

+ FormatOptionsEx2: wpfAutomaticHeaderOnEachPage;

+ FormatOptionsEx2: wpfNeverLookForInheritedHeaderFooterInSections

+ TWPPagePropertyRange: wpraOnGivenPageNr

 

- Improvement in selection inherited section header/footer

 

 

G) Property Grids

++ AppendPropertyGrid

++ AppendPropertyRow

++ checkbox inplace editors

 

H) Compatibility enhancements

 

+ copy HTML format to clipboard - this makes it possible to paste formatted text inside Chrome

  Requires activation in property ClipboardOptions: wpcoAlsoCopyHTML

+ RTF reader converts many Emoji codes to Symbols

* the HTML reader now reads 'target' property of links

* improved compatibility when saving RTF with nested tables

* improved RTF reading when loading section properties

 

 

**** CHANGED BEHAVIOUR ****

 

* TWPToolBar.DrawOptions now defaults to [wptPaintThemed]

 

* SelectionAsString does not modify DefaultFont anymore

 

* Clicks on TextObjects are ignored if they are inside a hyperlink and

 OneClickHyperlink = true and object selection was not activated in EditOptions

 

* InsertGraphic sets the property StreamName if InsertLink=true. (Previously this property was set to

  '' if the image could be loaded right away with the OnRequestImage event)

 

* ViewOptionsEx - wppNoBlueRectsAroundFootnotesWhileEditing now only works for footnotes as intended.

 

* when loading RTF with nested table empty paragraphs after a nested table will be ignored

 (can be switched off with $define DONT_IGNORE_PAR_AFTER_NESTED_TABLE)

 

 


Do you need to read and write MS Word DocX files?

 You can order the DocX addon - it works with Delphi 7, too, but we recommend Delphi 2009 or later.

http://www.shareit.com/product.html?productid=300653646

 Also see: http://www.wpcubed.com/pdf/_delphi/_wptools/wptools-file-formats/