Most bar codes can be categorized as being either one-dimensional, stacked, or matrix codes according to how the information is stored, although some codes combine elements from more than one of these categories, while others use half-tones, colors or other techniques to increase the information density and improve reliability.