JavaFX体系结构

本文概述

  • JavaFX公共API
  • 场景图
  • 图形引擎
  • 玻璃开窗工具套件
  • 网页检视
  • 媒体引擎
下图显示了JavaFX平台的完整体系结构。有各种相互连接的内置组件。但是, JavaFX包含丰富的API集, 足以开发可在许多平台上一致运行的丰富Internet应用程序。
JavaFX公共API JavaFX体系结构的顶层包含一个JavaFX公共API, 该API提供了负责执行功能齐全的JavaFX应用程序的所有必需类。此API的所有软件包的列表如下。
包裹名字 描述
javafx.animation 提供负责基于过渡的动画的一组类
javafx.application 提供应用程序生命周期方法
javafx.collections 提供可以处理集合和相关实用程序的类
javafx.concurrent 提供负责多任务处理的类
javafx.embed.swing 提供可在摆动代码内使用的一组类
javafx.embed.swt 提供可以在swt代码内使用的一组类
javafx.event 提供处理事件及其处理的类
javafx.fxml 包含负责从标记加载层次结构的类集
javafx.geometry 提供2D类, 其中包含在对象上操作2D几何的方法。
javafx.scene 提供用于处理场景图API的类
javafx.scene.canvas 提供处理画布的一组类。
javafx.scene.control 包含所有JavaFX组件的类。
javafx.scene.effect 包含将图形效果应用于场景图节点的一组类
javafx.scene.image 提供用于加载和显示图像的一组类
javafx.scene.input 提供用于鼠标和键盘事件的类集
javafx.scene.layout 提供一组类来支持用户界面布局
javafx.scene.media 提供将音频和视频集成到JavaFX应用程序中的类集
javafx.scene.paint 提供渲染场景图时用于填充形状和背景的颜色和渐变的类集。
javafx.scene.shape 提供一组2D类, 以对与2D几何相关的对象执行操作。
javafx.scene.text 提供字体和渲染文本节点的类集。
javafx.scene.transform 提供用于对对象执行旋转, 缩放, 剪切操作的一组类。
javafx.scene.web 提供加载和显示Web内容的方法。
javafx.stage 提供用于JavaFX内容的顶级容器类。
javafx.util 提供实用程序类
javafx.util.converter 该软件包用于JavaFX的标准字符串转换器
场景图 这是构建JavaFX应用程序的起点。它是节点的分层树, 代表用户界面的所有可视元素。它还具有处理事件的能力。通常, 场景图可以定义为节点的集合。
每个节点都有其单独的ID, 样式和数量。场景图的每个节点只能有一个父级, 零个或多个子级。
场景图上的所有实现实际上都应用于其节点。它们是javafx.scene包中存在的各种类, 用于在节点上创建, 修改和应用某些转换。稍后我们将详细讨论场景图。
图形引擎 JavaFX图形引擎为场景图提供图形支持。它基本上支持2D和3D图形。当系统上存在的图形硬件无法支持硬件加速渲染时, 它将提供软件渲染。
JavaFX中的两个图形加速管道是:
棱镜
棱镜可以看作是高性能硬件加速的图形管线。它具有渲染2D和3D图形的功能。 Prism实现了在不同平台上渲染图形的不同方法。
  • Windows XP或Vista上的DirectX 9
  • Windows 7上的DirectX 11
  • Mac, Linux和嵌入式上的OpenGL
  • 无法进行硬件加速时的Java 2D
量子工具套件
量子工具套件用于将棱镜和玻璃开窗工具套件绑定在一起, 并使它们可用于堆栈中的以上层。
玻璃开窗工具套件 【JavaFX体系结构】它位于最低级别的JavaFX图形堆栈上。基本上可以将其视为依赖于平台的层, 该层充当JavaFX平台与本机操作系统之间的接口。
它负责提供操作系统服务, 例如管理窗口, 计时器, 事件队列和表面。
网页检视 我们还可以将HTML内容嵌入JavaFX场景图。为此, JavaFX使用称为Web视图的组件。 Web视图使用Web Kit, 它是一个内部开放源代码浏览器, 可以呈现HTM5, DOM, CSS, SVG和JavaScript。
使用Web视图, 我们可以从JavaFX应用程序呈现HTML内容, 还可以将一些CSS样式应用于用户界面。
媒体引擎 通过使用媒体引擎, JavaFX应用程序可以支持音频和视频媒体文件的播放。 JavaFX媒体引擎依赖于称为G Streamer的开源引擎。软件包javafx.scene.media包含可以为JavaFX应用程序提供媒体功能的所有类和接口。
JavaFX体系结构

文章图片

    推荐阅读