FingerCode has been shown to be an effective representation to capture both the local and global information in a fingerprint. However, the performance of FingerCode is influenced by the reference point detection process, and the AAD features cannot fully extract the discriminating information in fingerprints. In this paper, we first propose a new rotation-invariant reference point location method, and then combine the direction features with the AAD features to form an oriented FingerCode. Experiments conducted on a large fingerprint database (NIST-4) show that the proposed method produces a much improved matching performance.