Dithering has been established as an important technique for producing visually appealing images on many printing and display devices. Although various error diffusion filters have been developed for dithering, there has been in general a lack of results guided by both visual quality and objective measure on the image quality. In this paper we present a dithering method by designing the error diffusion filter coefficients through solving a constrained least square optimization problem. The result minimizes the total square error between the final image and the original image in the error diffusion framework. Simulation results show that this method produces better visual quality than other commonly used methods.