Jennifer Hudson turned down a role in 'Precious' because she didn't want to gain weight.

The Oscar-winning actress - who has shed the pounds in recent years following changes to her diet and lifestyle - admits she was offered a leading role in the drama, but didn't want to take on another role which discussed her weight after she played Effie in 'Dreamgirls'.

Writing in her new book 'I Got This: How I Changed My Ways and Lost What Weighed Me Down', she said: "I had gained weight with Effie in 'Dreamgirls', and as much I was moved by this film, I wanted to try a role that had nothing whatsoever to do with my weight."

The role eventually went to Gabourey Sidibe, who won an Academy Award nomination for her portrayal of an overweight abused teenager in the drama.

Since rising to fame on 'American Idol' Jennifer has gone on to play roles in the 'Sex And The City' film and a forthcoming biopic about Winnie Mandela.