The `Tourist` actor will star as the lead character in `Skulduggery Pleasant`, a nine-book fantasy series by Irish author Derek Landy.
The film, which is due to come out in 2013, tells the story of 12-year-old Stephanie Edgley who is plunged into a magical world where she meets a skeleton wizard, played by Johnny.
An insider said: "The books will make a fantastic series of films."
It won`t be the first time the 47-year-old heartthrob will have played a swashbuckling character - he is well known for his performance as Jack Sparrow in the `Pirates of the Caribbean` franchise.
The star also seems to be a favourite to play fantasy roles, as he was also offered the lead part in `Snow White and the Huntsman` last month.
He was reportedly the favourite for the film, which tells the story of the huntsman who defies the evil queen`s orders to kill Snow White in the woods, after UK actor Tom Hardy, who wasn`t available due to his filming commitments on Christopher Nolan`s Batman movie `The Dark Knight Rises`.