update font
fix bug: support move out of bound