1. 程式人生 > >java9新特性-14-多分辨率圖像 API

java9新特性-14-多分辨率圖像 API

.com images idp 矽谷 ans clas 屏幕分辨率 tps 面試

1.官方Feature

251: Multi-Resolution Images

263: HiDPI Graphics on

Windows and Linux


2.產生背景

在Mac上,JDK已經支持視網膜顯示,但在Linux和Windows上,它並沒有。在那裏,Java程序在當前的高分辨率屏幕上可能看起來很小,不能使用它們。這是因為像素用於這些系統的大小計算(無論像素實際有多大)。畢竟,高分辨率顯示器的有效部分是像素非常小。

JEP 263以這樣的方式擴展了JDK,即Windows和Linux也考慮到像素的大小。為此,使用比現在更多的現代API:Direct2D for

Windows和GTK +,而不是Xlib for Linux。圖形,窗口和文本由此自動縮放。

JEP 251還提供處理多分辨率圖像的能力,即包含不同分辨率的相同圖像的文件。根據相應屏幕的DPI度量,然後以適當的分辨率使用圖像。


3.使用說明

新的API定義在java.awt.image包下

將不同分辨率的圖像封裝到一張(多分辨率的)圖像中,作為它的變體

獲取這個圖像的所有變體

獲取特定分辨率的圖像變體-表示一張已知分辨率單位為DPI的特定尺寸大小的邏輯圖像,並且這張圖像是最佳的變體。

基於當前屏幕分辨率大小和運用的圖像轉換算法,java.awt.Graphics類可以從接口MultiResolutionImage獲取所需的變體。

MultiResolutionImage的基礎實現是java.awt.image.BaseMultiResolutionImage。



作者:尚矽谷面試官宋紅康
鏈接:https://www.jianshu.com/p/929172c2bf87
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請註明出處。

java9新特性-14-多分辨率圖像 API