Vẽ đường thẳng:

Một phần của tài liệu xây dựng ứng dụng và tìm kiếm trên bản đồ cho điện thoại di động hỗ trợ java (Trang 53 - 56)

Chương 5: PHÂN TÍCH VÀ THIẾT KẾ

7.5.2.Vẽ đường thẳng:

Thư viện đồ họa trong J2ME chỉ hỗ trợ hàm vẽđường thẳng có độ rộng 1 pixel ngoài ra không có hàm nào khác cho phép thay đổi độdày này, điều mà chúng ta có thể thay đổi được chỉ là dạng nét vẽ: nét liền (SOLID) hay nét đứt (DOTTED). Như vậy khi vẽcác đường trên bản đồcó độ rộng khác nhau chúng ta buộc phải vẽ liên tiếp nhiều đoạn thẳng xếp cạnh nhau.

Việc gọi nhiều hàm vẽ liên tục sẽ làm giảm tốc độ của chương trình. Do đó chương trình cần phải so sánh để loại bỏ những đường không nhìn thấy và hạn chếđến mức thấp nhất các đoạn thẳng cần vẽ

7.5.3. Font chữ:

Trong J2ME việc lựa chọn font chữ là rất hạn chế, chỉ gói gọn trong vài sự lựa chọn của hệ thống. Ta tạo một đối tượng thuộc lớp Font như sau:

Font font = Font.getFont(int face, int style, int size)

Trong đó các tham sô truyền vào phải là các hằng số sau: - Face: FACE_SYSTEM, FACE_MONOSPACE,

FACE_PROPORTIONAL

- Style: STYLE_PlAIN, STYLE_BOLD, STYLE_ITALIC, STYLE_UNDERLINE.

- Size: SIZE_SMALL, SIZE_MEDIUM, SIZE_LARGE.

Một ứng dụng sẽ khó gây được ấn tượng với người sử dụng nếu chỉ sử dụng các font hệ thống. Mặt khác ta khó có thểxác định đươc chính xác kích thước của font chữ để có lựa chọn cho phù hợp. Với một số loại điện thoại, font có kích thước trung bình có thể vừa vặn, nhưng với một số loại khác thì lại không.

Hình 5. 26 System font

Giải pháp cho vấn đề này là bitmapFont. BitmapFont là một file ảnh dạng bitmap mô tả hình ảnh các ký tự. BitmapFont tựđược thiết kế kèm theo ứng dụng với kiểu chữ, màu sắc và kích thước đặc trưng dành cho ứng dụng đó.

Hình 5. 27 font.bmp

Để hiển thị một chuỗi ta phải duyệt qua từng ký tự của chuỗi, xác định ký tựđó nằm ởđâu trong ảnh và chỉ vẽ phần ảnh của ký tựđó ra màn hình.

Hình 5. 28 Bitmap font

Tuy nhiên việc sử dụng bitmapFont sẽ làm chương trình chậm hơn so với sử dụng font của hệ thống, do đó ta cũng không nên sử dụng quá nhiều font trên cùng ứng dụng.

Một phần của tài liệu xây dựng ứng dụng và tìm kiếm trên bản đồ cho điện thoại di động hỗ trợ java (Trang 53 - 56)