Digital multi-toning is a technique for converting a continuous-tone image into a multi-tone image for its reproduction with a multi-tone output device. It is becoming important as printers now have the ability to print dots of different intensities. Error Diffusion (ED) is an algorithm that has been shown to be effective for the multi-toning process and has been widely applied to digital printing tasks. However, in the actual printing process, conventional ED techniques for digital multi-toning are often unable to print a sufficiently good-quality image because of physical or mechanical dot gain. In particular, distortion of the contour of printed letters is noticeable. Black letters against a white background appear enlarged, whereas white letters on a black background appear faded. In this paper, we propose an edge-preserving ED algorithm to improve the quality of printed images. We prepare different quantization thresholds between the edge and other regions to allow for stable detection of the edge regions. In addition, we propose a multi-step edge-detection algorithm to avoid printed artefacts. Experimental results using printed images showed that the proposed algorithm improved the quality of printed images in comparison with conventional techniques.