Mimprint Home Page
Free Multiple Image Printer Software
This page contains information, documentation, and downloads for
Mimprint.
Mimprint is a
Scala
(Java-compatible)
application to layout and print multiple images at different sizes
on one page.
It also has a viewer mode to browse and view images.
It is licensed under the
GNU
General Public License, so is
freely redistributable in both binary and source form.
See the README file
for features,
system requirements, and
installation instructions.
Scroll down to see the latest news.
News
- October 3, 2009: The mimprint sources are now available on
github.
- July 14, 2008: v0.2.3 released.
A few bug fixes and minor enhancements, as listed in the HISTORY file.
- June 29, 2008: v0.2.2 released.
The mimprint application has now been converted over to 100% scala.
The interface is a bit different and a few new capabilities have
been added.
In particular, there is now a right-click context menu in the
image areas.
See the HISTORY file for a few other enhancements.
- June 4, 2008: v0.2.0 released.
This version of mimprint is a bit messy because I have just
started converting it over to Scala.
I am posting it as an example
that demonstrates one way to build a program that combines
Scala and Java.
The problem with trying to compile both Java and Scala
in an application
is that the current version of the Scala compiler
does not handle Java files, so the Java and Scala files must be
separately compiled. This makes it difficult for both kinds of
files to refer to code in the other kind of file.
I chose to solve this problem by eliminating references from
Java code to Scala, and only using references from Scala to Java.
This is done the following way:
- For any place where I want to call Scala code from Java code,
I create a Java interface and use that when calling from Java,
then write a Scala class that implements that interface.
- To allow instantiating those Scala classes, I have a Factory
interface, written in Java, and an instance of that Factory
written in Scala. Once the Java classes have a handle on that
Factory instance, they can call its methods to create the Scala
objects, which are returned with types that are Java interfaces.
- My main class is written in Scala. It creates the instance of
the Factory interface, then passes that instance to a Java class
which can provide it to other Java classes that need it
- August 24, 2006: v0.1.1 released.
A few small bug fixes.
- February 24, 2006: v0.1.0 released.
This is the first release of Mimprint.