The Ducks announced the deal Wednesday night before the opening faceoff of their home game against the New York Islanders.
Ritchie missed the entire preseason and six regular-season games while holding out for a better deal as a restricted free agent. His absence constrained the Ducks, who still started 4-1-1 despite missing several key forwards due to injury.
Ritchie had 10 goals and 17 assists in 76 games last season in his second full NHL campaign. The 2014 first-round pick has 26 goals, 33 assists and 171 penalty minutes in 186 career games.
Toronto's William Nylander is the final unsigned restricted free agent in the NHL.