I'm making available what I'm calling version 0.46 of the pyRTF
library for Rich Text Format document creation. The project's
official home is here:
Here's the "Brief Description" from that web page:
PyRTF is a set of python classes that make it possible to
produce RTF documents from python programs. The library has
no external dependancies and in my own testing has proved
reliable and fast. Three examples are included in the
release that demonstrate some of the features of the
library, I'll be adding to these when I can.
PyRTF has been tested on the following OS's; W2K, WinXP,
GNU/Linux, OpenBSD, FreeBSD and on the following Word
Processors; OpenOffice, Word95, Word97, Word2000, WordXP and
MacWord (not sure which version).
However, the sourceforge progject appears to be abaondoned
(submitted patches have been open and ignored for 2+ years).
So, I'm making public a version that's been updated to include:
1) support for EMF graphics objects.
[yes, I wrote my own from scratch before I noticed somebody
had submitted a patch almost two years ago].
2) enhanced image scaling for all image types:
* scaling by fixed percentage
* scaling to fixed width or height (preserving aspect ratio)
* scaling to fixed width and height (breaking aspect ratio)
3) create of images by passing file objects in addition to
file names to Image() class constructor.
You can download the enhanced version from:
Grant Edwards grante Yow! Could I have a drug
Hot on the heals of the 3.0.0 release, this 3.1.0 release offers support
for SMTP hosts that require authentication in order to send mail...
Mailinglogger enables log entries to be emailed either as the entries
are logged or as a summary at the end of the running process.
This pair of enhanced emailing handlers for the python logging framework
is now available as a standard python package and as an egg.
The handlers have the following features:
- customisable and dynamic subject lines for emails sent
- emails sent with an X-Mailer header for easy filtering
- flood protection to ensure the number of emails sent is not excessive
- fully documented and tested
In addition, extra support is provided for configuring the handlers when
using ZConfig, Zope 2 or Zope 3.
Installation is as easy as:
For more information, please see:
Simplistix - Content Management, Zope & Python Consulting
SkipoleMonitor is available at http://code.google.com/p/skipole-monitor/
Version 0.2 now released, this version adds the option to automatically send
email alerts should the status of any monitored host change.
What is SkipoleMonitor?
SkipoleMonitor is a free network monitor for Windows and Linux. On running
the program, a GUI window appears, and hosts can be added, which Skipole
Monitor will regularly ping, showing the results via a built-in Web server.
Hosts can be grouped, so the Web server will show group symbols that the
viewer can open to inspect the hosts, or further sub-groups, within.
Written in Python, and uses the wxPython library, it has been tested on
Windows and Linux.
License : GPL
PyTesser version 0.0.1 is available at http://code.google.com/p/pytesser/
What is PyTesser?
PyTesser is an Optical Character Recognition module for Python. It takes
as input an image or image file containing text and outputs a string.
PyTesser uses the Tesseract OCR engine (an Open Source project at
Google), converting images to an accepted format and calling the
Tesseract executable as an external script. A Windows executable is
provided along with the Python scripts. The scripts should work in other
operating systems as well.
>>> from pytesser import *
>>> image = Image.open('fnord.tif') # Open image object using PIL
>>> print image_to_string(image) # Run tesseract executable on image
>>> print image_file_to_string('fnord.tif')
PyTesser is released under the Apache License 2.0.
Michael J.T. O'Kelly
<P><A HREF="http://code.google.com/p/pytesser/">PyTesser v0.0.1</A> -
PyTesser is an Optical Character Recognition module for Python using the
Tesseract OCR engine. (15-May-07)
The 220.127.116.11 release of wxPython is now available for download at
http://wxpython.org/download.php. This release includes a number of
bug fixes, updates to some contribs and other improvements.
Source code is available, as well as binaries for both Python 2.4 and
2.5, for Windows and Mac, as well some pacakges for various Linux
distributions. A summary of changes is listed below and also at
What is wxPython?
wxPython is a GUI toolkit for the Python programming language. It
allows Python programmers to create programs with a robust, highly
functional graphical user interface, simply and easily. It is
implemented as a Python extension module that wraps the GUI components
of the popular wxWidgets cross platform library, which is written in
wxPython is a cross-platform toolkit. This means that the same program
will usually run on multiple platforms without modifications.
Currently supported platforms are 32-bit Microsoft Windows, most Linux
or other Unix-like systems using GTK2, and Mac OS X 10.3+, in most
cases the native widgets are used on each platform to provide a 100%
native look and feel for the application.
Changes in 18.104.22.168
wxGTK: Make wx.NO_BORDER style work with wx.RadioBox (patch 1525406)
Update to 1.0 of TreeMixin.
wx.lib.customtreectrl: Patch from Andrea that fixes the following
* ZeroDivisionError when using the Vista selection style and calling
SelectItem; for some strange reason, sometimes the item rect is not
initialized and that generates the ZeroDivisionError when painting
the selection rectangle;
* Added a DeleteWindow method to GenericTreeItem class, for items
that hold a widget next to them;
* Renamed CustomTreeCtrl method IsEnabled to IsItemEnabled, otherwise
it conflicts with wx.Window.IsEnabled;
* Now CustomTreeCtrl behaves correctly when the widget attached to an
item is narrower (in height) than the item text;
wx.lib.flatnotebook: Patch from Andrea that implements the following:
* A new style FNB_FF2: my intentions were to make it like Firefox 2,
however it turned out to be an hybrid between wxAUI notebook glose
style & FF2 ...I still think it looks OK. The main purpose for
making it more like wxAUI is to allow applications that uses both
to have same look and feel (or as close as it can get...);
* Changed the behavior of the left/right rotation arrows to rotate
single tab at a time and not bulk of tabs;
* Updated the demo module.
XRCed now uses a wx.FileHistory object for managing the recent files
wx.DateSpan and wx.TimeSpan now use lower case property names in order
to not conflict with the same named static methods that already
wx.aui.PyAuiDocArt and wx.aui.PyAuiTabArt can now be derived from in
wxPython and plugged in to wx.AUI.
XRCed has a new experimental feature to add controls by draging icons
from the tool palette to the test window. Mouse position is tracked
to highlight the future parent of the new item.
Updates to MaskedEdit controls from Will Sadkin:
Added parameter option stopFieldChangeIfInvalid, which can be used
to relax the validation rules for a control, but make best efforts
to stop navigation out of that field should its current value be
invalid. Note: this does not prevent the value from remaining
invalid if focus for the control is lost, via mousing etc.
numctrl.py, demo / MaskedNumCtrl.py:
In response to user request, added limitOnFieldChange feature, so
that out-of-bounds values can be temporarily added to the control,
but should navigation be attempted out of an invalid field, it
will not navigate, and if focus is lost on a control so limited
with an invalid value, it will change the value to the nearest
Added handler for EVT_COMBOBOX to address apparently inconsistent
behavior of control when the dropdown control is used to do a
Added support for ChangeValue() function, similar to that of the
base control, added in wxPython 22.214.171.124.
Update to latest FloatCanvas from Chris Barker.
The pywxrc tool now properly supports generating classes for menus and
menubars, and also creating attributes for menus, menubars and menu
http://wxPython.org Java give you jitters? Relax with wxPython!
For the brave enough to run a 64-bit Python under a 64-bit Windows installation,
I have added a first version of ctypes for win64 in the sourceforge download area.
It does NOT use the same sourcecode as the 'official' version, the code has been
patched by merging selected commits from the Python SVN trunk.
This release is not too much tested; in fact even one unittest still fails.
The failure only occurs when compiled for Python 2.5 with the MS SDK
compiler, not with Visual Studio 2008.
If you try to use ctypes-win64, be sure to use the proper argtypes and restypes
attributes for dll-functions; integers (which ctypes assumes by default) and
pointers have different sizes on 64-bit Windows.
Apart from that, enjoy.
ctypes 1.0.2 released - May 15, 2007
ctypes is an advanced ffi (Foreign Function Interface) package for
Python 2.3 and higher.
ctypes allows to call functions exposed from dlls/shared libraries
and has extensive facilities to create, access and manipulate
simple and complicated C data types in Python - in other words:
wrap libraries in pure Python. It is even possible to implement C
callback functions in pure Python.
ctypes runs on Windows, Windows CE, MacOS X, Linux, Solaris,
FreeBSD, OpenBSD. It may also run on other systems, provided that
libffi supports this platform.
Changes in 1.0.2
This is exactly the same version that is distibuted with Python 2.5.1;
made available as add-on package for Python 2.3 and Python 2.4. No
new features, only bugfixes have been applied:
The version number of the ctypes package was changed to "1.0.2".
Bug #1563807: _ctypes built on AIX fails with ld ffi error.
Bug #1598620: A ctypes Structure cannot contain itself.
Patch #1560695: Add .note.GNU-stack to ctypes' sysv.S so that
ctypes isn't considered as requiring executable stacks.
Bug #1651235: When a tuple was passed to a ctypes function call,
Python would crash instead of raising an error.
Fix bug #1646630: ctypes.string_at(buf, 0) and ctypes.wstring_at(buf, 0)
returned string up to the first NUL character.
Bug #1610795: ctypes.util.find_library works now on BSD systems.
ctypes callback functions only support 'fundamental' data types as
result type. Raise an error when something else is used. This is a
partial fix for Bug #1574584.
Changes in 1.0.1
If the Python part of a ctypes callback function returns None, and
this cannot be converted to the required C type, an exception is
printed with PyErr_WriteUnraisable. Before this change, the C
callback returned arbitrary values to the calling code.
The __repr__ method of a NULL ctypes.py_object() no longer raises
This release contains exactly the same code as the ctypes package
included in Python 2.5.
Changes in 1.0.0
Better support for comtypes. More target platforms for OpenBSD.
Several small bugfixes.
This is exactly the same version as included in Python 2.5b3.
Downloads are available in the sourceforge files section
Binary windows installers, which contain compiled extension
modules, are also available, be sure to download the correct one
for the Python version you are using.
Pydev and Pydev Extensions 1.3.3 have been released
Details on Pydev Extensions: http://www.fabioz.com/pydev
Details on Pydev: http://pydev.sf.net
Details on its development: http://pydev.blogspot.com
Release Highlights in Pydev Extensions:
* Quick-fix: When an import is added from the auto-import quick-fix, a
code-analysis is requested right after it.
* Minor bugs fixed.
Release Highlights in Pydev:
* Performance: Optimizations in the code-completion structure.
* Debugger: Performance improvements (it will only actually trace contexts
that have breakpoints -- it was doing that in a module context before).
* Debugger: Step over correctly stops at the previous context.
* Debugger: Breakpoint labels correct when class/function name changes.
* Quick-Fix: Move import to global scope would not be correct if the last
line was a multi-line import.
* Outline: Syntax errors will show in the outline.
* Outline: Selection on import nodes is now correct.
* Outline: Link with editor created.
* Outline: Show in outline added to the pydev perspective.
* Find Previous Problem: action created (Ctrl+Shift+.).
* Extract method refactoring: end line delimiters are gotten according to
the document (it was previously fixed to \n).
* Extension-points: Documentation added for some of the extension points
* Perspective: The pydev package explorer has been set as the preferred
browser in the pydev perspective.
What is PyDev?
PyDev is a plugin that enables users to use Eclipse for Python and Jython
development -- making Eclipse a first class Python IDE -- It comes with many
goodies such as code completion, syntax highlighting, syntax analysis,
refactor, debug and many others.
ESSS - Engineering Simulation and Scientific Software
Pydev - Python Development Enviroment for Eclipse