Digital Lith Processing

This page handles Digital Lith Processing Version 4.6.2


  1. Introduction
  2. Installation
  3. Documentation
  4. Lookup Table Generator
  5. Change Log
  6. Digital Lith Streaking SDK
  7. Disclaimer, Copyright and Donations
  8. Thanks
  9. Contact
  10. Privacy Policy

header image


What kept me away from doing more digital photography was the lack of a program which would allow me to produce output with the look and feel of a darkroom lith print. It happened so often, that I photographed something with my digital camera and immediately thought: Sigh, I would like to do a lith print of it but my film camera is at home.

But in the last years more and more papers I used to do lith prints disappeared from the market and newer papers which showed up on the marked were not suited for the lith process. And so I got tired of hunting for old papers and stopped doing darkroom lith prints - there is nothing like a non-darkroom lith print.

So I went some time missing lith printing or at least something with the impression of a lith print. So I went on the net and looked for a digital fake process to produce something which at least looks a little bit like a scanned lith print. But all I could find was not very promising and lacking the look of the real thing. So I gave up on this and went back to grief-mode for some time.

The subconscious can be a strong driving force. So I started thinking about what makes a lith print look like a lith print and how I would be able to archive it by some program. The crux is infectious development and how grain is built up in this process. That made it clear that the key is an iterative process and that this will be something which will take time to compute. Very different from moving around a slider in some image manipulation program. Computation takes a long time - although not as long as the darkroom process, it will get some load on your computer. If you never heard the fan of your computer working, with this program it is very likely that it will happen.

The process itself is very flexible and I tried to parametrize it in a way that seems familiar for a darkroom lith printer.

And now it happens, that the program is already availabile in version 4. It went a long way to reach that point but all additions over time proved to be very valuable.


Note: With Digital Lith 4.6.1 all versions you can download are self-contained Java programs which means there is no need for you to install a Java runtim environment. But if you do not run on Mac, Windows or a system supporting debian packages you will need to have Java 10 installed.

On Mac OS X open the dmg and move the DigitalLith application into the programs folder.

On Windows execute the downloaded installer, select the directory where you want to install the program and let the installer finish its work.

On Ubuntu Linux you change to the directory you downloaded the .deb file to and run sudo dpkg -i DigitalLith-4.6.2.deb or if you downloaded the small footprint: sudo dpkg -i DigitalLith_sf-4.6.2.deb It will install an application launcher for Gnome Desktop.

If you decide to be on your own: You are on your own. Unpack the archive, Install Java 10. Set the JAVA_HOME and the DIGITAL_LITH_HOME environment variable and run the shell script

I am not able to test the program on every platform here is a list of platforms I know the program to run for sure:

If you have the program running on a different OS and everything works OK, please let me know and I will extend the list.

Note: If you use Google Chrome on Linux, then the zipped tar archive is unpacked on download, but the extension .gz is preservered. In this case you may get an error when using tar zxf .... Please go ahead using tar xf ... instead.

Additional items to install

Additional items such as streaking or process modules or predefined parameter sets can be downloaded from the dlp site from within the program via the Exchange menu item.

Unlike previous versions it is no longer needed to restart the program after downloading streaking or process modules.


I do no longer have the documentation on this site since I do not like to maintain two versions of the documentation and since there is a full documentation of the program in the DigitalLith Tutorial with many examples and also with demo images and presets to download. You can find the tutorial on my web site. Here you go: Click!

Lookup Table Generator

There is a little tool to generate DigitalLith lookup tables. Please refer to the specific section in the documentation. Here is just a link to the jar file you need: lutgenerator.jar

Change Log

Version 4.6.2

Version 4.6.1

Version 4.6


Version 4.5.8

Version 4.5.7




Version 4.5.6

Version 4.5.5

Version 4.5.4

Version 4.5.3

Version 4.5.2

Version 4.5.1

Version 4.5

Version 4.4.3

Version 4.4.2

Version 4.4.1

Version 4.4

Version 4.3.1

Version 4.3

Version 4.2

Version 4.1.3

Version 4.1.2

Version 4.1.1

Version 4.1

Version 4.0.5

Version 4.0.4

Version 4.0.3

Version 4.0.2

Version 4.0.1

Version 4.0





Version 3.5




Version 3.4

Version 3.3




Version 3.2


Version (Codename J)

Version 3.1

Version 3.0

Version 2.1

Version 2.0

Digital Lith Extension SDK

For those who are curious. There is now the possibility to implement and build your own streaking and process modules. If you know how to write Java code then it should be very easy for you to come up with your own modules.

Want to know more: Digital Lith SDK

Disclaimer, Copyright and Donations

DigitalLithProgramming is copyrighted by Rüdiger Stobbe. You can use it for free at your own risk.

However, if you like the program and like to donate a small amount of money, please go ahead and donate to some charity organization - on behalf of DigitalLithProcessing.

Special Thanks!

Special thanks go to Sebastian for beta testing the Linux version and doing a bit of PR.

And a very special thanks to Craig, for patiently using all versions, beta, alpha, unstable whatever, massive feedback and also for reviewing the help texts and this page.


Feedback is always welcome. So if you have suggestions about what is missing or about bugs - please feel free to contact me via email:

Good news is also welcome, so if you like the program ... let me know too.

And since politicians only want our best, here is the privacy policy fulfilling the European Union General Data Protection Regulation (GDPR):

Privacy Policy

We are very delighted that you have shown interest in our enterprise. Data protection is of a particularly high priority for the management of the ZoneV. The use of the Internet pages of the ZoneV is possible without any indication of personal data; however, if a data subject wants to use special enterprise services via our website, processing of personal data could become necessary. If the processing of personal data is necessary and there is no statutory basis for such processing, we generally obtain consent from the data subject.

The processing of personal data, such as the name, address, e-mail address, or telephone number of a data subject shall always be in line with the General Data Protection Regulation (GDPR), and in accordance with the country-specific data protection regulations applicable to the ZoneV. By means of this data protection declaration, our enterprise would like to inform the general public of the nature, scope, and purpose of the personal data we collect, use and process. Furthermore, data subjects are informed, by means of this data protection declaration, of the rights to which they are entitled.

As the controller, the ZoneV has implemented numerous technical and organizational measures to ensure the most complete protection of personal data processed through this website. However, Internet-based data transmissions may in principle have security gaps, so absolute protection may not be guaranteed. For this reason, every data subject is free to transfer personal data to us via alternative means, e.g. by telephone.

1. Definitions

The data protection declaration of the ZoneV is based on the terms used by the European legislator for the adoption of the General Data Protection Regulation (GDPR). Our data protection declaration should be legible and understandable for the general public, as well as our customers and business partners. To ensure this, we would like to first explain the terminology used.

In this data protection declaration, we use, inter alia, the following terms:

2. Name and Address of the controller

Controller for the purposes of the General Data Protection Regulation (GDPR), other data protection laws applicable in Member states of the European Union and other provisions related to data protection is:

Rüdiger Stobbe
Rodelweg 14
76684 Östringen

3. Collection of general data and information

The website of the ZoneV collects a series of general data and information when a data subject or automated system calls up the website. This general data and information are stored in the server log files. Collected may be (1) the browser types and versions used, (2) the operating system used by the accessing system, (3) the website from which an accessing system reaches our website (so-called referrers), (4) the sub-websites, (5) the date and time of access to the Internet site, (6) an Internet protocol address (IP address), (7) the Internet service provider of the accessing system, and (8) any other similar data and information that may be used in the event of attacks on our information technology systems.

When using these general data and information, the ZoneV does not draw any conclusions about the data subject. Rather, this information is needed to (1) deliver the content of our website correctly, (2) optimize the content of our website as well as its advertisement, (3) ensure the long-term viability of our information technology systems and website technology, and (4) provide law enforcement authorities with the information necessary for criminal prosecution in case of a cyber-attack. Therefore, the ZoneV analyzes anonymously collected data and information statistically, with the aim of increasing the data protection and data security of our enterprise, and to ensure an optimal level of protection for the personal data we process. The anonymous data of the server log files are stored separately from all personal data provided by a data subject.

4. Routine erasure and blocking of personal data

The data controller shall process and store the personal data of the data subject only for the period necessary to achieve the purpose of storage, or as far as this is granted by the European legislator or other legislators in laws or regulations to which the controller is subject to.

If the storage purpose is not applicable, or if a storage period prescribed by the European legislator or another competent legislator expires, the personal data are routinely blocked or erased in accordance with legal requirements.

5. Rights of the data subject

6. Legal basis for the processing

Art. 6(1) lit. a GDPR serves as the legal basis for processing operations for which we obtain consent for a specific processing purpose. If the processing of personal data is necessary for the performance of a contract to which the data subject is party, as is the case, for example, when processing operations are necessary for the supply of goods or to provide any other service, the processing is based on Article 6(1) lit. b GDPR. The same applies to such processing operations which are necessary for carrying out pre-contractual measures, for example in the case of inquiries concerning our products or services. Is our company subject to a legal obligation by which processing of personal data is required, such as for the fulfillment of tax obligations, the processing is based on Art. 6(1) lit. c GDPR. In rare cases, the processing of personal data may be necessary to protect the vital interests of the data subject or of another natural person. This would be the case, for example, if a visitor were injured in our company and his name, age, health insurance data or other vital information would have to be passed on to a doctor, hospital or other third party. Then the processing would be based on Art. 6(1) lit. d GDPR. Finally, processing operations could be based on Article 6(1) lit. f GDPR. This legal basis is used for processing operations which are not covered by any of the abovementioned legal grounds, if processing is necessary for the purposes of the legitimate interests pursued by our company or by a third party, except where such interests are overridden by the interests or fundamental rights and freedoms of the data subject which require protection of personal data. Such processing operations are particularly permissible because they have been specifically mentioned by the European legislator. He considered that a legitimate interest could be assumed if the data subject is a client of the controller (Recital 47 Sentence 2 GDPR).

7. The legitimate interests pursued by the controller or by a third party

Where the processing of personal data is based on Article 6(1) lit. f GDPR our legitimate interest is to carry out our business in favor of the well-being of all our employees and the shareholders.

8. Period for which the personal data will be stored

The criteria used to determine the period of storage of personal data is the respective statutory retention period. After expiration of that period, the corresponding data is routinely deleted, as long as it is no longer necessary for the fulfillment of the contract or the initiation of a contract.

9. Provision of personal data as statutory or contractual requirement; Requirement necessary to enter into a contract; Obligation of the data subject to provide the personal data; possible consequences of failure to provide such data

We clarify that the provision of personal data is partly required by law (e.g. tax regulations) or can also result from contractual provisions (e.g. information on the contractual partner). Sometimes it may be necessary to conclude a contract that the data subject provides us with personal data, which must subsequently be processed by us. The data subject is, for example, obliged to provide us with personal data when our company signs a contract with him or her. The non-provision of the personal data would have the consequence that the contract with the data subject could not be concluded. Before personal data is provided by the data subject, the data subject must contact any employee. The employee clarifies to the data subject whether the provision of the personal data is required by law or contract or is necessary for the conclusion of the contract, whether there is an obligation to provide the personal data and the consequences of non-provision of the personal data.

10. Existence of automated decision-making

As a responsible company, we do not use automatic decision-making or profiling.