,.
. :%%%. .%%%.
__%%%(\ `%%%%% .%%%%%
/a ^ '% %%%% %: ,% %%"`
'__.. ,'% .-%: %-' %
~~""%:. ` % ' . `.
%% % ` %% .%: . \.
%%:. `-' ` .%% . %: :\
%(%,%..." `%, %%' %% ) )
%)%%)%%' )%%%.....- ' "/ (
%a:f%%\ % / \`% "%%% ` / \))
%(%' % /-. \ ' \ |-. '.
`' |% `() \| `()
|| / () /
() 0 | o
\ /\ o /
o ` /-|
___________ ,-/ ` _________ ,-/ _________________ INCLUDES _ OCAML _ SOURCE _ CODE _ EXAMPLES _____________________________________________

Monday, May 11, 2015

Another Image Processing Software

Hello, let me introduce you a very recent project that I did in less than 2 weeks (I think it deserves its place on this blog). It's another image processing software developed this time in Java using Swing, a GUI widget toolkit for Java and which is part of Oracle's Java Foundation Classes (JFC) — an API for providing a graphical user interface. This software is fully multithreaded.
It obviously includes many useful image processing filters and some extra features :
- Open an image from an URL, from your clipboard or via a screenshot
- Export an image to different classic formats (.png, .jpg, .jpeg, .bmp, .gif)
- Create/Open/Save a project as a .myPSD file which keeps all your modifications history
- Load your own filters (contained in a .jar file) at runtime using the appropriate option (File > Load .jar plugin) or by putting directly your .jar file in the 'plugin' directory. Note that each Java class you write and corresponding to a single filter must implement the following interface :

Your .jar file architecture should be like that (then your filters shall appear in Edit > Others...) :
 .
├── folder1
│   ├── Filter1.class
│   ├── ... (you can also have subfolders)
│   └── FilterN.class
│    ...
└── folderN
     ├── Filter1.class
     ├── ...
     └── FilterN.class
- Management of the opening of several projects with different tabs (closable via the View menu)
- Drawing tools : eraser, pencil, text, paint bucket, color picker, color chooser
- Image analysis : histograms, 2D colorspace
- Different skin themes (Metal, CDE/Motif, Nimbus, GTK+, Windows...)

Download it here (make sure to have a recent version of Java installed).