Two-dimensional (2D) cyclic codes are presented which correct any single occurrence of known 2D error patterns within a 2D array of bits. Applications for this type of codes include storage and display devices. The code construction begins with a generation of distinct syndrome sets for all targeted 2D error patterns. A method to refine the syndrome sets is then presented for making each syndrome set to contain distinct members, thereby guaranteeing full correction capability for the given list of known error patterns. Using an example construction, the effectiveness of the proposed coding approach is demonstrated versus the maximum-distance-separable (MDS) random-errorcorrecting code and known 2D burst-correcting codes for a 2D intersymbol interference (ISI) channel that yields a few dominant, but relatively large error patterns.