The 34-year-old Abreu spent the last two-plus seasons with the New York Yankees, who acquired him in a trade with Philadelphia in 2006.
The Sports Illustrated Web site said Abreu's deal with the Angels is for $5 million plus incentives.
"Several teams have expressed interest, and the Angels are definitely high on Bobby's list," his agent, Peter Greenberg, had told the Los Angeles Times Tuesday.
Abreu, St. Louis' Albert Pujols and former Yankee teammate Alex Rodriguez are the only players with at least 100 RBI in each of the last six seasons.
In 156 games in 2008, Abreu batted .296 with 20 home runs and 100 RBI, becoming the only player in history to reach 200 home runs, 300 stolen bases, a .400 on-base percentage and a .300 batting average.
Humongous iceberg slowly drifts away from Antarctica
Avril Lavigne denies racism in 'Hello Kitty' music video