The Cincinnati Reds and outfielder Ryan year contract.
The deal, reported last month but not announced until Wednesday, includes a mutual option for the 2013 season.
Ludwick, 33, joined his sixth team. The nine-year veteran played his final 38 games for the NL Central-rival Pirates last season after being traded to Pittsburgh from San Diego in July.
He had 13 homers and 75 runs batted in over 139 games last year and is three seasons removed from belting a career-high 37 home runs for the Cardinals in 2008.
Francis, 31, went 6-16 with a 4.82 earned-run average in one season for the Kansas City Royals. He also pitched six seasons for the Colorado Rockies and is 61-66 with a 4.78 ERA in 181 career games. He won a career-high 17 games for the Rockies in 2007.