The version numbers are incremented when any noticeable change
for the user is implemented. 0.01 for small changes or bug
fixes (hopefully there are no bugs) and 0.1 for new
functionality. Issues not relevant to the user are not
documented.
I started SmallPrint in early 1998, primarily for my own
needs. I got it working functionally relatively quickly and
so ceased further development for a few months. In August I
started implementing more and more options and refining it
with a view to releasing it as licensed software.

SmallPrint is due for first release on 1st October 1998.


1.00  21/9/98
====
Fully tested 'finished' version.

1.02  22/9/98
====
Vastly improved the Autocrop routine, though it's now slower.
It now doesn't get confused with stray 'dirty' pixels.

Improved the usability of 'Print' and 'Print Preview'. It now
allows choosing a single 'non-selected' bitmap.

1.05  23/9/98
====
Bug fix for checking for enough disk space when saving external
pages. This check was coded yesterday but it had a small bug.

Bug fix for correctly initially setting the various 'open file'
dialog boxes to the current output directory. It seems that it
can't be set to 'c:' for example, it must be 'c:\'. I had 
previously removed the end slash from a root directory string
when saving to a file for consistency with non-root directories
which don't have an end slash (although they can have, but this
is dealt with now too, so that if 'File|Set Output Directory'
is set to e.g. 'c:\windows\temp\' instead of 'c:\windows\temp'
then the end slash is removed because they are identical
directories as far as Windows & DOS is concerned).

Removed the disabling of 'Print' and 'Print Preview' when no
files are selected in the filelist for consistency with the
changes made yesterday.

{I thought about adding a compensation for the actual page
size because most A4 printers actually can't print right to
the edges of a page. I decided against it (at least for now)
as it would mean that I would also have to consider
implementing *.ini files which I have managed to avoid so
far. No, *.ini files are definitely not a priority.
Incidentally this means that pixels per inch values will be
slightly underestimated unless you change the paper size to
the actual size the printer is capable of though this doesn't
usually amount to more than about 5% in either direction. I
will have to find out how to find the actual capability of
printers.}

1.16 24/9/98
====
I changed the print routine so that it uses the tprinter object
instead of the basic form.print method. I don't know if it
works better, it just doesn't need to display a form any more.

Completely changed the 'Set paper size' so that it actually
sets the printed size. Added another option in the combo box
which means that it always uses the 'actual' printer page size.
I needed to use GetDeviceCaps (win API) to find the actual page
size talked about yesterday. So *.ini files are not needed
because it can find the info from the printer driver.(+0.1)

So to summarize, the print option can now scale to any
specified size and importantly, the printed size is always
set accurately without needing to set the paper size twice like
before.

1.20 27/9/98
====
Wrote some registration routines into 'licensed to..'. This
will hopefully save me time on processing registrations.
Also decided to have 2 levels of registration- Standard and
Professional.

Made 'Stretch to largest width' on by default.

Made 'print preview...' faster when changing magnification.

Small bug fix for the layout processing.

1.21 28/9/98
====
Improved printing routines (a bit faster and less processor
intensive).

           ******** Release is Delayed *********


1.22 2/10/98
====
Now opens bitmap with default application if it is too large
for SmallPrint's internal viewer.

1.25 4/10/98
====
Fixed bug in the 'filelist update after ok'. Didn't work at
root directories.
Checked for free space in windows drive before writing
temporary files.
Launches external viewer (see 1.22) BEFORE warning message.

1.26 5/10/98
====
Fixed registration bug.

1.27 6/10/98         {1ST RELEASE}
====
Prevented 'out of resources' message when 'Lock Selection' is
checked for a large bitmap (e.g. an external bitmap). It now
traps it and displays 'Too big'.

1.28 7/10/98
====
Cosmetic change to fix small problem with the 'pixels/inch'
display in large fonts. Also other cosmetic adjustments.

1.28 12/10/98
====
Hey, just telling you that I spotted a spelling mistake in the
help. I wrote pheasible instead of feasible.

{I'll hopefully be able to compile a 32-bit version soon. This
should improve the speed quite considerably.}

1.28 13/10/98
====
I now have Delphi 2. The 32-bit version compiled with hardly
any modifications. The viewing and printing works perfectly
for large bitmaps now. The 16-bit version is not recommended
since I can't resolve this problem without discarding the
TBitmap component and delving into the mysteries of the GDI
Windows API. The 16-bit version will soon only be available
by emailing me personally for it and NOT on the website.

The 32-bit SmallPrint will start at version 2.00 since the
above problems with the 16-bit version are eradicated with
the 32-bit version. The 32-bit SmallPrint should be
compatible with NT too.

Another immediate improvement in the 32-bit version is support
for long filenames. Unfortunately there is no great increase
in speed.

1.28 14/10/98
====
I will leave the 16-bit version on the website contrary to
what I said yesterday. The reason I've changed my mind is
that the only visitor to my website today was a Windows 3.1x
user (according to my web counter statistics).

There are a few changes I have been forced to make with the
32-bit SmallPrint.
1. The viewer doesn't change magnification because it is much
slower than the 16-bit version with a changed magnification.
This is due to a different 'copymode' which can't be changed.
To compensate for this there is a new faster scrolling ability
by using the RIGHT mouse button.
2. The TWAIN scanning has changed. I've had to use the
eztw32.dll library which isn't identical to the functions of
the 16-bit eztwain.dll. At the moment the scanner driver has
to be reloaded for every scan and hangs if the source hasn't
been selected beforehand.

1.29 15/10/98
====
I've implemented the fast scroll in the 16-bit version.

{The 32-bit Twain routines sometimes hangs the computer but
this only seems to occur while in Delphi 2. Other than this I
feel ready to release version 2.00.}

1.29(2.00) 16/10/98
====
Both versions will be released today. It's a pity that I had
to remove the ability for the viewer to reduce the
magnification of a bitmap in the 32-bit version. I hope to
restore it in a later version.

1.29(2.01) 20/10/1998
====
The 32-bit version multitasks so I need to update the main
form screen regularly during the 'lock selection'. Previously
the form blanked when you switched between windows of other
apps. The form doesn't blank so much now but unfortunately it
can't be updated too often otherwise compression stats and
autocrop processing is far too slow.

Although the above change isn't that important I will release
this version. Users of version 2.00 may have mistakenly
thought that the program had crashed.

1.39(2.12) 4/11/1998
====
I'm afraid there is a rather major problem that affects the
32-bit version of SmallPrint. The bug crashes Windows when the
Print Preview is used more than once! Strangely, the 16-bit
version which uses the same code does not have a problem. Due
to my error handling code it will report that there is not
enough space to write the temporary file when in fact the
problem is due to an access violation when saving the file.
Ironically, that code was introduced to speed up the viewing
when changing magnification in the 16-bit version and isn't
even relevant to the 32-bit version. I have fixed it by just
commenting out the lines in the source code.

Added a new 'Thick Print' feature which addresses a problem I
failed to mention in the SmlPrint.txt file. I should have
mentioned in the 'Hints on Scanning' that it is always best
to scan at a dark setting to make the print bolder. Otherwise
the print may be too faint to read when printed or details
will be lost in the printed output. It is always more
comfortable to read a bolder and stronger printed page. The
'Thick Print' option is NOT on by default because it slows
down printing considerably. What it does when enabled is to
make the bitmap stronger and bolder so that the print quality
is better. DON'T use it on the 'example.bmp' file if printing
on A4 sized paper or less(!) as the bitmaps it comprises were
scanned in at a dark enough setting. The 'Thick Print' option
is especially useful for bitmaps obtained via a 'print to
bitmap' printer driver. The 'Thick Print' option will also be
effective in the Print Preview. (+0.1)

I WILL RELEASE THE LATEST 32-BIT VERSION TODAY. THE NEW 16-BIT
VERSION WILL BE RELEASED AT A LATER DATE.

1.39(2.12) 5/11/1998
====
The new 16-bit version (1.39) is released today.

1.40(2.14) 22/11/1998
====
There was an unfortunate and undetected bug with the 32-bit
version which meant that it didn't run if the 16-bit version
hadn't been installed earlier! I also put my faith in Simtel
in testing out my program before adding it to their archives.
I'm sorry that I haven't fixed this earlier but I was away
from my computer for a while. Also I only had two reports that
it didn't work. Now it should work with NT.

Added a panel display when Thick Print is selected and fixed a
problem with the panel display for the Update filelist after
'OK' option.

The new WORKING 32-bit version is released today! I will also
release the new 16-bit version.

1.41(2.15) 23/11/1998
====
I'm just commenting on something I wrote in the SmlPrint.txt
file in the current release. In the Troubleshooting section I
mentioned that if the internal images have a vertical line
all the way through then the formatting may hang SmallPrint.
This is isn't totally accurate since this will not occur if
the user includes an internal vertical margin/border. Since,
by default, margins of 1mm are set you will not have such a
problem. Also it is unlikely to occur in row format mode and
it will only possibly crash SmallPrint if using column format.
Even if using column format mode (which is the default) a
crash will only possibly occur if all or most of the images
have a vertical line through them. It is still preferable to
avoid vertical lines such as ruled margins to maximize the
formatting potential of SmallPrint. I will include an option
in a later release to try to ignore these margins so that the
formatting isn't limited. This formatting limitiation is a
reason why currently SmallPrint doesn't include an option to
draw physical lined borders around internal bitmaps. The
limitation is that these pages cannot be compressed properly
and, in column formatting mode, they can't be split into
different columns. The option is likely to work by ignoring
the left and right parts of an image and only taking the
middle section into account as far as the compression and the
formatting is concerned. The option will probably have a
user-defined percentage value which indicates the proportion
of the page to take into account. Selecting too low a
percentage will increase speed but may produce overlapping
text due to not taking all of the relevant image into account.

I have changed the default borders by reducing the left and
top internal borders from 1mm to 0mm. I've also reduced the
bottom external border from 5mm to 3mm. In the future I may
change the border units to tenths of millimetres.

1.41(2.15) 23/7/1999
====
Released version 2.15 (8 months after it was written)
