Release Notes for wordaxe 0.3.2 H. von Bargen, March 2009 Release 0.3.2 Bug fixes and small improvements. Using wordaxe within rst2pdf should work fine now. Special thanks to Christoph Zwerschke and Harald Armin Massa. Support for nobr tag: not exactly how nobr works in HTML, but in a way that allows disabling hyphenation for some words within a Paragraph with hyphenation enabled, like this: "Use the --with-error-correction option to automatically correct all program errors." In order to make it easier to package applications with py2exe, the German hyphenation dictionary used by DCWHyphenator is now a Python file. Fixed problems with multibuild. Fixed: If a paragraph contained explicit line breaks ("
"), the width was not calculated correctly. Cleaned up the test suite. Added missing attributes/methods. Release 0.3.1 Tested with ReportLab 2.3. With wordaxe 0.3.1 and ReportLab 2.3, multibuild should work. Release 0.3.0 By default, wordaxe now uses the NewParagraph implementation. The main reason is the fact that I found it impossible to fix the splitting bug in the old paragraph.py code. Usage of the NewParagraph implementation is controlled by the the option USE_NEW_PARAGRAPH in wordaxe.rl.__init__.py Other changes: * NewParagraph.py now supports ParagraphAndImage * Support for backColor adopted from Dirk Holtwick in NewParagraph * Fixed the core hyphenation library Release 0.2.6 * Changed license: now dual licensed: Free BSD or Apache 2.0 * Support for pyhyphen * Fixed a few bugs Release 0.2.5 Refactoring of the hyphenation classes. The hyphenate function now returns None if the algorithm used does not know the word. Otherwise it returns a HyphenatedWord instance (the word associated with 0 or more hyphenation points). The info attribute of HyphenatedWord instances is no longer used. Common suffix and prefix characters are handled automatically That is, "Fliegen!?" will be treated like "Fliegen". BaseHyphenator: This is the base class for hyphenation, words will only be hyphenated after "-" or SHY character. ExplicitHyphenator, based on BaseHyphenator: You can explicitly define the hyphenation for any word you like. If the base hyphenator cannot hyphenate a given word, then the explicitly defined words are checked. PyHnjHyphenator: A pattern-based hyphenation algorithm. DCWHyphenator: This hyphenator works a little bit better than before. First, a word is checked for "-" or SHY. The components are then processed individually and the results are concatenated afterwards. For each component, * it is first checked for SHY characters. If at least one occurs, then the component is pre-hyphenated and only the SHY characters result in hyphenation points. * Otherwise, the ExplicitHyphenator will be tried. If it knows the word - meaning an explicit hyphenation was defined for this word, that hyphenation will be used. * Otherwise, the DCW algorithm is used to hyphenate the component. This modification has some advantages: * You can now use just ExplicitHyphenator if you don't want to use the DCWHyphenator for some reason or another. This might be faster in some cases. Note, however, that you then have to explicitly define a hyphenation for each and every word you want to hyphenate. * The DCW-Hyphenator now works for words like "ABC-Schütze". * The code is looking cleaner (at least I think so). Known Bugs: * RL: The layout for styled paragraphs is wrong if the paragraph is splitted. * DCW: "Fremdwort" does not work, i.e. "Konstruktion" is unknown, although the prefix "kon", base word "strukt" and suffix "ion" are defined in the dictionary. Release 0.2.4 (special thx to Dinu for testing) * Added new tests * The self-test in PyHnjHyphenator now uses purePython. * Fixed a bug in PyHnjHyphenator that caused the last character to be hyphenated (as in in-stink-t). * Fixed a bug "exception NameError: ... _do_link ..." while rendering hyperlinks. * Dinu Gherman discovered a serious bug that causes the second part of a splitted paragraph to be rendered incorrectly, iff the paragraph contains inline formatting. For production use, you should - either not use inline formatting - or avoid splitting paragraphs, for example by putting each paragraph into a 1x1-table. Release 0.2.3: The library has been renamed from "deco-cow" to "wordaxe". The hyphenation library now supports ReportLab 2.1. The installation has become a lot easier, and except for a few lines changed in rl_codec.py, you don't have to change your standard ReportLab installation anymore. Added documentation. Release 0.2.2: To prevent misunderstandings, throughout the software and documentation, the string "SiSiSi" has been replaced with "DCW". The Technical University of Vienna (TU Wien) has developed closed-source software called "SiSiSi". The deco-cow hyphenation library is not related to "SiSiSi". For more information about the "SiSiSi" software, please visit http://www.ads.tuwien.ac.at/research/SiSiSi/ The trademark character in test_hyphenation.py has been escaped. Now the ReportLab test suite "runAll.py" should run without errors.