1) Buy them. You can get gems by buying them through Facebook.
2) Win at the Stadium. You'll get two gems per stadium fight and so you'll get four gems per 24 hours this way.
3) Battle League. You will gain two gems each time you move up a league. You will get four sets of three fights per 24 hours (12 fights per 24 hours) and there are seven fights per league. So you should be able to earn at least two gems per day through the league.
4) Monday Bonus. You can win five gems from the Monday Bonus if you're lucky!
5) Leveling Up. You get a gem each time you level up!
6) Dragon Book. You can complete sets in the dragon book to get gems. The amount of gems varies depending on the set you complete.
7) The Daily Bonus. You may get gems in the daily card flip.