Inicio Proyectos NRtfTree Library NRtfTree Changelog

NRtfTree Changelog

por admin

Version 0.3 Final (0.3.3503)

New features

  • New test project (NUnit).

Updated

  • Version numbering scheme updated to «major.minor.build.revision».
  • SimpleDemo project updated to console application.

Bugfixes

  • Removed redundant code in RtfLex.
  • ImageNode ScaleX and ScaleY properties returned incorrect values.
  • RtfTreeNode.Rtf property inserted incorrect blank spaces when MergeSpecialCharacters property is true.
  • RtfTree.Text property returned non-document-text characters in images, objects and field nodes.
  • New method RtfTreeNode.SelectSingleChildGroup().

Version 0.3.0 beta 2

New features

  • Performance greatly improved.
  • New class RtfMerger.
  • New class RtfDocFormat.
  • New class RtfParFormat.
  • New enum TextAlignment.
  • New class RtfStyleSheetTable.
  • New class RtfStyleSheet.
  • New class RtfStyleSheetType.
  • Class RtfTree:
    • New method CloneTree().
    • New property MainGroup.
    • New method GetStyleSheetTable().
  • Class RtfTreeNode:
    • New property Index.
    • New method SelectGroups(string keyword).
    • New method SelectSingleGroup(string keyword).
    • New method SelectChildGroups(string keyword).
    • New method FindText(string txt).
    • New method ReplaceText(string txt).
    • New indexer this[int childIndex].
  • Class RtfNodeCollection:
    • New method IndexOf(string keyword).
    • New method IndexOf(RtfTreeNode node, int startIndex).
    • New method IndexOf(string keyword, int startIndex).
  • Class RtfDocument:
    • New method UpdateDocFormat(RtfDocFormat fmt).
    • New method UpdateCharFormat(RtfCharFormat fmt).
    • New method UpdateParFormat(RtfParFormat fmt).
    • New methods SetFormatXXX().
    • New method AddNewLine(int n).
    • New method AddNewParagraph().
    • New method AddNewParagraph(int n).
    • New method ResetFormat().
    • New method ResetCharFormat().
    • New method ResetParFormat().
  • Class ImageNode:
    • New property Bitmap.
  • New demo projects:
    • New folder Examples.
    • New demo application: Rtf2Html.

Updated

  • GetColorTable() and GetFontTable() updated. Now they return RtfColorTable y RtfFontTable objects.
  • Use of public properties in RtfTextFormat class.
  • Renamed RtfTextFormat class to RtfCharFormat.
  • RtfTreeNode.children field remains null if node hasn’t child nodes.

Bugfixes

  • Corrected initialization of StringBuilder object to avoid out of memory exception.
  • RtfFontTable class now uses internally a Dictionary. It must access fonts by \f keyword parameter, not by index.
  • Updated RtfTreeNode.getRtfInm() method. It inserted an incorrect blank space after GROUP nodes.
  • Characters ‘{‘, ‘}’ and ‘\\’ aren’t prefixed with ‘\\’ in RtfTreeNode.AppendEncoded() method.

Version 0.3.0 beta 1

New features

  • New license: LGPL.
  • New classes to create RTF documents (basic support in beta): RtfDocument, RtfColorTable, RtfFontTable and RtfTextFormat.
  • RtfTree class:
    • New property MergeSpecialCharacters. When it is set to true, if special character is found (\’) it is converted to Text node and eventually merged to adjacent text nodes.
    • New property Text. Returns plain text from the RTF document.
    • New method GetEncoding(). Returns document encoding.
  • RtfTreeNode class:
    • New property Tree. Returns a reference to owner RTF tree.
    • New method To String(). – New method InsertChild(). Inserts a new node at the specified location.
    • Methods SelectXXXByType have been replaced by SelectXXX() overloads.
    • New methods SelectSibling() (3 overloads).
  • RtfNodeCollection class:
    • New method Insert(). Inserts a new node at the specified location.
    • New method RemoveRange(). Remove a range of nodes from the list.
  • InfoGroup class:
    • New method ToString().

Updated

  • Group and Root node types initialization with «ROOT» and «GROUP».
  • NRtfTree.Rtf property didn’t include last ‘}’ in a group node RTF code.
  • NRtfTree does not treat correctly special characters ‘\’, ‘{‘ and ‘}’ as part of the text.
  • Methods RtfTreeNode.AppendChild() and InsertChild() should update Root and Tree properties recursively.

Version 0.2.1

Bugfixes

  • Bug in SaveRtf() [Hex numbers with 1 digit].
  • New personal home page and file headers.

Version 0.2.0

New features

  • New namespaces
    • Net.Sgoliver.NRtfTree.Core –> Base classes
    • Net.Sgoliver.NRtfTree.Util –> Special classes (ImageNode, ObjectNode, InfoGroup)
  • Class RtfTreeNode:
    • New properties: LastChild, NextSibling, PreviousSibling y Rtf.
    • New private methods: getRtf() y getRtfInm() [Se han pasado desde RtfTree a RtfTreeNode].
    • New public methods: CloneNode(), HasChildNodes(), SelectSingleNode(), SelectSingleChildNode(), SelectChildNodes(), SelectNodes(), SelectSingleChildNodeType()
    • Rtf property is now implemented using StringBuilder class [efficiency].
    • New indexer to access child nodes. [ = SelectSingleChildNode() ]
  • Class RtfTree:
    • Removed private methods: getRtf() y getRtfInm() [ moved to RtfTreeNode class ]
    • toStringInm() method is now implemented using StringBuilder class [efficiency].
    • New public methods: ToStringEx(), SaveRtf(), GetColorTable() y GetFontTable() y GetInfoGroup().
    • New parameter ‘showNodeTypes’ in method toStringInm().
  • Class RtfNodeCollection:
    • New public methods: IndexOf(), AddRange()
  • Class RtfLex:
    • ParseText() and ParseKeyword() are now implemented using StringBuilder class [efficiency].
    • In this versión, there is only one construtor that receive a TextReader parameter.
    • Now, parseText() method ignore new lines, tabs and null characters.
  • New classes:
    • ImageNode
    • ObjectNode
    • InfoGroup
Versión 0.3.0 beta 2

Dejar un comentario

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información. Aceptar Más Información

Política de Privacidad y Cookies