I got this apex code for converting numbers to word but want to display this in VF using standard controller and extension. public class NumberToWord1 { public NumberToWord1(ApexPages.StandardController controller) { } public String english_number { get; set; } static String[] to_19 = new string[]{ 'zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine', 'ten', 'eleven', 'twelve', 'thirteen', 'fourteen', 'fifteen', 'sixteen', 'seventeen', 'eighteen', 'nineteen' }; static String[] tens = new string[]{ 'twenty', 'thirty', 'forty', 'fifty', 'sixty', 'seventy', 'eighty', 'ninety'}; static String[] denom = new string[]{ '', 'thousand', 'million', 'billion', 'trillion', 'quadrillion', 'quintillion', 's!xtillion', 'septillion', 'octillion', 'nonillion', 'decillion', 'undecillion', 'duodecillion', 'tredecillion', 'quattuordecillion', 's!xdecillion', 'septendecillion', 'octodecillion', 'novemdecillion', 'vigintillion' }; // convert a value < 100 to English. public static String convert_nn(integer val) { if (val < 20) return to_19[val]; if(val == 100) return 'One Hundred'; for (integer v = 0; v < tens.size(); v++) { String dcap = tens[v]; integer dval = 20 + 10 * v; if (dval + 10 > val) { if (Math.Mod(val,10) != 0) return dcap + ' ' + to_19[Math.Mod(val,10)]; return dcap; } } return 'Should never get here, less than 100 failure'; } // convert a value < 1000 to english, special cased because it is the level that kicks // off the < 100 special case. The rest are more general. This also allows you to // get strings in the form of "forty-five hundred" if called directly. public static String convert_nnn(integer val) { String word = ''; integer rem = val / 100; integer mod = Math.mod(val,100); if (rem > 0) { word = to_19[rem] + ' hundred'; if (mod > 0) { word += ' '; } } if (mod > 0) { word += convert_nn(mod); } return word; } public static String english_number(long val) { if (val < 100) { return convert_nn(val.intValue()); } if (val < 1000) { return convert_nnn(val.intValue()); } for (integer v = 0; v < denom.size(); v++) { integer didx = v - 1; integer dval = (integer)Math.pow(1000, v); if (dval > val) { integer mod = (integer)Math.pow(1000, didx); integer l = (integer) val / mod; integer r = (integer) val - (l * mod); String ret = convert_nnn(l) + ' ' + denom[didx]; if (r > 0) { ret += ', ' + english_number(r); } return ret; } } return 'Should never get here, bottomed out in english_number'; } }