To say that Ben Affleck has had a rough time since he was announced as the new Batman would be somewhat of an understatement.
Batman fans have cried out against Affleck as he joins the cast of Batman vs Superman as the caped crusader.
However, Affleck is not the first actor to face a fan backlash, so we take a look at some of the controversial castings that turned out to be fantastic.
- Daniel Craig - James Bond
It was back in 2006 when Casino Royale hit the big screen and Daniel Craig took on the iconic role of 007 for the first time.
Craig was best known for his role as Layer Cake and Munich, but his casting as the super spy did cause somewhat of a fuss.
Fans protested about Craig's appointment all the way through the filming, and threatened to boycott the film when it was released. Craig was called 'too ugly' and 'too blond' and website CraigNotBond was set up.
However, Craig proved them all wrong, as Casino Royale was a box office smash, and took the character of Bond to a place we have never seen before.
Since then we have seen Skyfall go on to be a billion dollar smash, and just about everyone will be sad to see Craig leave this role behind.
- Heath Ledger - Joker
I have to admit that when I heard that Heath Ledger had been cast as the Joker for The Dark Knight I did raise an eyebrow.
I had always been a big Ledger fan, but didn't really see him in this role. I was also a little worried about bringing this character back after the performance by Jack Nicholson.
Ledger had delivered a great performance in the likes of Brokeback Mountain, but he had never done anything to suggest he could deliver the psychotic element required for this role - as many complaining about his casting pointed out.
Despite all of the fuss, Ledger went on to deliver the performance of his career. He portrayed the Joker in a way that was totally chilling; it is one of the performances that will never be forgotten.
Ledger went on to win the Best Supporting Actor for his performance; sadly, Ledger died before he got to see him final work and enjoy all the acclaim that came his way.
- Michael Keaton - Batman
It was back in 1989 when Tim Burton's version of Batman hit the big screen, with Michael Keaton in the title role.
Keaton has worked with Burton on Beetlejuice, and the director wanted the actor on board as Bruce Wayne; an actor he had to fight for with the studio.
However, the casting of Keaton did not go down well with Batman fans; many believing he could not handle the action film because of his comedy background.
A staggering 50,000 fans wrote to Warner Bros complaining about Keaton's appointment as Bruce Wayne.
Burton's faith in Keaton was repaid ten-fold, as the actor really got under the skin of this character and played him as a true tortured hero.
Batman went on to gross over $400million at the global box office. Keaton reprised the role in Batman Returns.
- Jennifer Lawrence - Katniss Everdeen
Jennifer Lawrence is one of the biggest actresses on the planet at the moment with The Hunger Games franchise and an Oscar already under her belt.
While the first two movies in The Hunger Games series have been hugely successful, Lawrence was not a hit with fans of the book when her casting was first announced.
While Collins doesn't completely describe the race of the character of Katniss, she does give her olive skin, grey eyes and dark hair - everything that Lawrence was not.
Lawrence was also considered too old to play the sixteen year old. Some even suggested that she was too pretty to play tomboyish Katniss.
However, Lawrence's casting as Katniss has been nothing short of a triumph, as the actress has shown the strength and vulnerability of this character perfectly.
The Hunger Games and Catching Fire have won over critics and fans, and Mockingjay - Part 1 is one of the most anticipated films of the year.
- Robert Downey Jr - Iron Man
Robert Downey Jr is has transformed his career with the role of Iron Man, as he has placed himself back at the Hollywood tree.
And while the Iron Man franchise has been hugely successful, Marvel fans were a little concerned when it was announced that Downey Jr was going to play Tony Stark.
Downey Jr was considered too old for the role, while his chequered past was also a cause for concern.
Skip forward to 2014, and you couldn't imagine any other actor in this role; Downey Jr really has put his heart and soul into bringing Tony Stark to the big screen.
Iron Man, Iron Man 2 and Iron Man 3 have all enjoyed box office success; the latter being the biggest grossing movie of 2013 at over a billion dollars.
Downey Jr will reprise the role in The Avengers: Age of Ultron, which is already one of the most anticipated films of 2015.
- Renee Zellweger - Bridget Jones
Bridge Jones' Diary was one of the most loved novels of the nineties, and there was a lot of excitement when it was announced that a film was in the pipeline.
However, that excitement was dimmed a little when it was revealed that Renee Zellweger was on board in the title role.
British actresses such as Kate Winslet, Helena Bonham Carter, and Rachel Weisz were considered for the role.
We had seen so many American butcher the English accent, and fans were worried about that, as well as the fact that Zellweger was too thin.
Zellweger but on twenty pounds for the role and worked hard on her English accent as she prepared for the role.
She won over Bridget Jones fans with her central performance that is as touching, as it is laugh out loud funny. She was nominated for a Best Actress Oscar for her performance.
Other casting controversies that turned out well include Matt Damon as Jason Bourne, Idris Elba as Heimdall in Thor and Anne Hathaway as Catwoman in The Dark Knight Rises.