Hãy xem Neon (4.6) M6 - Mới và đáng chú ý , bản phát hành quan trọng có chứa một số tỷ lệ tự động cho hình ảnh (ví dụ: cho thanh công cụ).
SWT cung cấp khả năng tự động điều chỉnh tỷ lệ dựa trên độ phân giải
SWT hiện tự động chia tỷ lệ hình ảnh trên màn hình DPI cao trên Windows và Linux, tương tự như hỗ trợ Retina của Mac trên OS X. Trong trường hợp không có hình ảnh độ phân giải cao, SWT sẽ tự động điều chỉnh tỷ lệ hình ảnh có sẵn để đảm bảo rằng các ứng dụng dựa trên SWT như Eclipse được chia tỷ lệ tương ứng với độ phân giải của màn hình.
Có thể tắt tính năng này trên Windows và GTK bằng cách đặt đối số VM này thành false trong eclipse.ini hoặc trên dòng lệnh sau -vmargs:
-Dswt.enable.autoScale = false
Không thể tắt tính năng tự động điều chỉnh tỷ lệ trên Mac vì nó được cung cấp bởi Hệ điều hành.
Lưu ý: Chúng tôi biết rằng một số hình ảnh được chia tỷ lệ trông xấu ở các hệ số tỷ lệ nhỏ hơn 200%. Điều này sẽ được cải thiện trong M7. Hơn nữa, chúng tôi đang nỗ lực hỗ trợ hình ảnh DPI cao trong Giao diện người dùng nền tảng, để các nhà cung cấp plugin có thể thêm các biểu tượng DPI cao mà không cần thực hiện bất kỳ thay đổi mã nào.
Hoặc có thể điều này giúp ích, trong Eclipse Mars API cho độ phân giải cao đã được thêm vào
Các API mới đã được thêm vào để hỗ trợ hiển thị hình ảnh có độ phân giải cao trên màn hình DPI cao. Hai hàm tạo đã được thêm vào lớp Image. Họ chấp nhận lệnh gọi lại của nhà cung cấp hình ảnh cho phép khách hàng cung cấp các phiên bản hình ảnh phụ thuộc vào độ phân giải:
public interface ImageDataProvider {
public ImageData getImageData (int zoom);
}
public interface ImageFileNameProvider {
public String getImagePath (int zoom);
}
Tùy thuộc vào cấu hình màn hình của người dùng, SWT sẽ yêu cầu hình ảnh với mức thu phóng tương ứng. Dưới đây là một ví dụ hiển thị 3 hình ảnh gốc, tiếp theo là các biến thể có độ phân giải thay đổi tùy theo độ phân giải màn hình của bạn: Snippet367.java .
Lưu ý rằng đây chỉ là bước đầu tiên để hỗ trợ hình ảnh độ phân giải cao trong các ứng dụng dựa trên SWT và Eclipse. Công việc đang được tiến hành để áp dụng các API mới trong nền tảng. Ngoài ra, cần nhiều công việc hơn trong SWT để hỗ trợ tốt việc vẽ thành hình ảnh có độ phân giải cao thông qua GC.
API hỗ trợ màn hình DPI cao
http://help.eclipse.org/mars/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2FwhatsNew%2Fplatform_isv_whatsnew.html