Free-agent outfielder Shin-Soo Choo has reached agreement on a seven-year, $130 million contract with the Texas Rangers, two baseball sources confirmed to ESPN.com.

Shin-Soo Choo was the premier offensive player left on the market after batting .285 in 2013 for the Reds with 21 homers and 54 RBIs. John Sommers II/Getty Images

Choo, who must pass a physical before the deal is complete, according to a source, was the premier offensive player left on the market after Robinson Cano signed with Seattle and Jacoby Ellsbury went to the New York Yankees.

The deal doesn't include an opt-out clause, the source said. But it does include a limited no-trade provision and performance bonus package.

Choo was one of the top leadoff hitters in the majors for the Cincinnati Reds in 2013 with a .423 on-base percentage, a .285 batting average, 21 homers, 54 RBIs, 20 steals and 107 runs scored.

He fills a leadoff void in Texas and will team with Prince Fielder, who was acquired from Detroit in a trade for Ian Kinsler earlier this offseason, to lead a revamped Rangers offense.

Choo, 31, is a .288 career hitter with a .389 on-base percentage in nine seasons with Seattle, Cleveland and Cincinnati.

His on-base percentage ranked second to Reds teammate Joey Votto in the National League in 2013, when Choo finished 12th in NL MVP balloting.

But Choo has a history of struggling against left-handed pitching. Choo has a .309 career batting average and a .932 OPS against right-handed pitching, compared to .243 and .680 against lefties. He batted .317 against righties and .215 vs. lefties last season.