【Qt QML入门】Image

Image类型显示一个图像。
使用source属性将图像的源指定为URL。图像可以以Qt支持的任何标准图像格式提供,包括位图格式,如PNG和JPEG,以及矢量图形格式,如SVG。
如果没有指定宽度和高度属性,图像将自动使用加载图像的大小。

import QtQuick
import QtQuick.Window
import QtQmlWindow {width: 640height: 480visible: truetitle: qsTr("Hello World")Image {source: "qrc:/img.png"fillMode: Image.PreserveAspectFitanchors.fill: parent}
}

加载文件的过程默认是同步的,也就是会阻塞UI,直到图片加载完成。

如果想加载比较大的图片,可以启用异步属性,在线程中加载该图像。如果图片是从网络资源获得的,则会自动异步加载,并根据需要更新进度和状态属性。

还有一点需要注意,Image被加载成功后,会在内部被缓存和共享,因此如果几个Image项有相同的源,则只会加载图像的一个副本。

Image的属性:

currentFrame:当前可见的帧。默认值为0。如果图像包含多个帧,则可以将其设置为0

frameCount - 1之间的数字,以显示不同的帧。

frameCount:图像中的帧数。大多数图像只有一帧

horizontalAlignment : enumeration

verticalAlignment : enumeration

设置图像的水平和垂直对齐方式。默认情况下,图像是居中对齐的。

水平对齐的有效值为Image.AlignLeft,Image.AlignRight和Image.AlignHCenter。

垂直对齐的有效值为Image.AlignTop,Image.AlignBottom和Image.AlignVCenter。

paintedHeight : real

paintedWidth : real

保存了实际绘制的图像的大小。在大多数情况下,它与宽度和高度相同,但当使用Image.PreserveAspectFit or an Image.PreserveAspectCrop,paintedWidth或paintedHeight可以小于或大于图像项的宽度和高度。

asynchronous : bool

指定本地文件系统上的映像应该在单独的线程中异步加载。默认值为false,在加载图像时导致用户界面线程阻塞。在维护响应式用户界面比立即显示图像更可取的情况下,将异步设置为true非常有用。
注意,此属性仅对从本地文件系统读取的映像有效。通过网络资源(例如HTTP)加载的图像总是异步加载的。

cache : bool

指定是否应该缓存图像。默认值为true。在处理大图像时,将缓存设置为false很有用,以确保它们不会以牺牲小的“ui元素”图像为代价被缓存。

fillMode : enumeration

Image.Stretch-图像被缩放到适合
Image.PreserveAspectFit -图像被均匀缩放以适合而不裁剪
Image.PreserveAspectCrop -图像被均匀缩放以填充,必要时进行裁剪
Image.Tile-图像是水平和垂直复制
Image.TileVertically-图像水平拉伸和垂直平铺
Image.TileHorizontally-图像垂直拉伸,水平平铺
Image.Pad -图像不被转换

mipmap : bool

此属性保留图像在缩放或转换时是否使用mipmap过滤。
与平滑相比,当按比例缩小时,Mipmap过滤提供了更好的视觉质量,但它可能会以性能为代价(在初始化图像和渲染期间)。
默认情况下,此属性设置为false。

mirror : bool

此属性保留图像是否应该水平反转(有效地显示镜像)。
默认值为false。

progress : real

这个属性保存图片加载的进度,从0.0(没有加载)到1.0(完成)。

smooth : bool

此属性用于确定图像在缩放或转换时是否平滑过滤。平滑过滤提供更好的视觉质量,但在某些硬件上可能会变慢。如果图像以其自然大小显示,则此属性没有视觉或性能效果。
默认情况下,此属性设置为true。

source : url

Image可以处理Qt支持的任何图像格式,从Qt支持的任何URL方案加载。
URL可以是绝对的,也可以是相对于组件的URL的。

sourceClipRect : rect

如果设置了此属性,则保存要加载的源图像的矩形区域。
当只需要加载图像的一部分时,sourceClipRect与sourceSize属性一起工作以节省系统资源。

sourceSize : size

此属性保存全帧图像的缩放宽度和高度。
与缩放图像绘制的宽度和高度属性不同,此属性为加载的图像设置存储的最大像素数,以便大型图像不会使用不必要的内存。

如果图像的实际大小大于sourceSize,则图像按比例缩小。如果只将尺寸的一个维度设置为大于0,则按比例设置另一个维度以保持源图像的长宽比。(fillMode与此无关。)
如果两个sourceSize。宽度和sourceSize。高度设置时,图像将按比例缩小以适应指定的大小(除非使用了PreserveAspectCrop或PreserveAspectFit,否则它将按比例缩小以匹配裁剪/拟合的最佳大小),保持图像的宽高比。缩放后图像的实际大小可通过Item::implicitWidth和Item::implicitHeight获得。
如果源是一个本质上可伸缩的图像(例如;SVG),此属性决定所加载图像的大小,而不考虑其固有大小。避免动态更改此属性;呈现SVG比呈现图像要慢。
如果源是一个不可伸缩的图像(例如。JPEG),则加载的图像将不大于此属性指定的大小。对于某些格式(目前只有JPEG),整个图像实际上永远不会加载到内存中。
如果还设置了sourceClipRect属性,则sourceSize确定比例,但它将被剪切为剪辑矩形的大小。
通过将sourceSize设置为undefined,可以将sourceSize清除为图像的自然大小。

注意:动态更改此属性会导致图像源被重新加载。

status : enumeration

这个属性保存图像加载的状态。它可以是:

Image.Null-没有设置图像

Image.Ready-图像已加载

Image.Loading-图像当前正在加载

Image.Error-加载图像时发生错误

使用此状态以某种方式提供更新或响应状态更改。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/219771.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

R语言对医学中的自然语言(NLP)进行机器学习处理(1)

什么是自然语言(NLP),就是网络中的一些书面文本。对于医疗方面,例如医疗记录、病人反馈、医生业绩评估和社交媒体评论,可以成为帮助临床决策和提高质量的丰富数据来源。如互联网上有基于文本的数据(例如,对医疗保健提供者的社交媒体评论),这些数据我们可…

(五)STM32 NVIC 中断、优先级管理及 AFIO 时钟的开启

目录 1. 中断相关知识简介 1.1 什么是中断 1.2 什么是内中断、外中断 1.3 什么是可屏蔽中断、不可屏蔽中断 2. CM3 内核中断介绍 2.1 F103系统异常清单 2.2 F103 外部中断清单 3. NVIC 简介 3.1 NVIC 寄存器简介 3.2 NVIC 相关寄存器的介绍 4. 中断优先级 4.1 优先…

HarmonyOS 开发实例—蜜蜂 AI 助手

HarmonyOS 开发实例—蜜蜂 AI 助手 1. 前言 自华为宣布 HarmonyOS NEXT 全面启动,近期新浪、B 站、小红书、支付宝等各领域头部企业纷纷启动鸿蒙原生应用开发。据媒体统计,如今 Top20 的应用里,已经有近一半开始了鸿蒙原生应用开发。虽然目…

用23种设计模式打造一个cocos creator的游戏框架----(十五)策略模式

1、模式标准 模式名称:策略模式 模式分类:行为型 模式意图:定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换。此模式使得算法可以独立于使用它们的客户而变化 结构图: 适用于&#xff1…

智慧路灯杆如何实现雪天道路安全监测

随着北方区域连续发生暴雪、寒潮、大风等气象变化,北方多地产生暴雪和低温雨雪冰冻灾害风险,冬季雨雪天气深度影响人们出行生活,也持续增加道路交通风险。 智慧路灯杆是现代城市不可或缺的智能基础设施,凭借搭载智慧照明、环境监测…

独立完成软件的功能的测试(4)

独立完成软件的功能的测试(4) (12.14)(功能测试>头条项目实战) 项目总体概述 项目背景和定位:一款汇聚科技咨询,技术文章和问答交流的用户移动终端产品,用户可以通过…

智慧燃气让城市能源系统高效运行

关键词:智慧燃气、燃气数字化、智慧燃气平台、智慧燃气解决方案、智慧燃气系统 随着我国城镇燃气行业的发展,燃气行业管理及服务从简单的手工运作阶段迈入数字燃气阶段,大量采用信息化手段管理燃气业务,智慧燃气应运而生。它既是…

【Hadoop_06】MapReduce的概述与wc案例

1、MapReduce概述1.1 MapReduce定义1.2 MapReduce优点1.3 MapReduce缺点1.4 MapReduce核心思想1.5 MapReduce进程1.6 常用数据序列化类型1.7 源码与MapReduce编程规范 2、WordCount案例实操2.1 本地测试2.2 提交到集群测试 1、MapReduce概述 1.1 MapReduce定义 MapReduce是一…

kafka中消息key作用与分区规则关系

在 kafka 2.0.0 的 java sdk 中 <dependency><groupId>org.apache.kafka</groupId><artifactId>kafka_2.12</artifactId><version>2.0.0</version> </dependency> ProducerRecord 中类注释如下 A key/value pair to be sen…

linux下配置vscode中的ros的c++调试

第一步 这块是launch.json {"version": "0.2.0","configurations": [{"name": "g - 生成和调试活动文件","type": "cppdbg","request": "launch","program": "${wo…

解决前端VUE前端框架报错Error: error:0308010C:digital envelope routines::unsupported的几种方法

一、报错信息&#xff1a; Error: error:0308010C:digital envelope routines::unsupportedat new Hash (node:internal/crypto/hash:67:19)at Object.createHash (node:crypto:135:10)at module.exports (E:\Projects\platform-code\platform-cloud\ruoyi-ui\node_modules\we…

科技赋能医疗设备管理提质增效,实现医院高质量发展

近日&#xff0c;苏州阿基米德网络科技有限公司与医疗领域头部级媒体健康界&#xff0c;联合举办“数智为擎 提质增效——医学装备智慧管理创新发展论坛”的直播活动。 直播现场&#xff0c;来自上海交通大学医学院附属同仁医院、中华医学会航海医学分会、苏州阿基米德的专家们…

做数据分析为何要学统计学(2)——如何估计总体概率分布

我们可以通过手头掌握的样本来估计总体的概率分布。这个过程由以下步骤组成。 第一步&#xff0c;我们采用Seaborn软件的histplot函数建立核密度图&#xff08;一种概率密度图&#xff09;。 import numpy as np #输入样本数据 xnp.array([2.12906357, 0.72736725, 1.0515282…

【JVM从入门到实战】(六)类加载器的双亲委派机制

一、双亲委派机制 在Java中如何使用代码的方式去主动加载一个类呢&#xff1f; 方式1&#xff1a;使用Class.forName方法&#xff0c;使用当前类的类加载器去加载指定的类。 方式2&#xff1a;获取到类加载器&#xff0c;通过类加载器的loadClass方法指定某个类加载器加载。 …

提升数据采集技能:用 Axios 实现的 Twitter 视频下载器全面解析

引入 在当今数据驱动的时代&#xff0c;高效的数据采集是实现成功数据科学项目的关键。数据采集不仅涉及到数据的获取&#xff0c;还包括数据的清洗、转换、存储和分析等多个环节。Twitter作为全球最大的社交媒体平台之一&#xff0c;蕴含着丰富的信息和海量的多媒体内容&…

网络安全项目实战(三)--报文检测

6. TCP/IP协议栈及以太网帧 目标 了解TCP/IP协议栈的组织结构掌握以太网帧的数据格式定义能应用编码实现以太网帧的解析方法 6.1. TCP/IP 协议栈 TCP/IP网络协议栈分为应用层&#xff08;Application&#xff09;、传输层&#xff08;Transport&#xff09;、网络层&#xf…

低代码 —— 饮食均衡,合理膳食

目录 一、低代码的概念 二、低代码的优缺点 &#xff08;一&#xff09;优点 &#xff08;二&#xff09;缺点 三、低代码的能力 1、场景构建能力 2、数据编排能力 3、连接生态能力 4、业务中台能力 四、你认为低代码会替代传统编程吗&#xff1f; 1、从技术特征来看…

【改进YOLOv8】矿物尺寸图像分析系统:融合位置感知循环卷积(ParC)改进YOLOv8

1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 研究背景与意义 随着科技的不断发展&#xff0c;计算机视觉技术在各个领域中得到了广泛的应用。其中&#xff0c;物体检测是计算机视觉领域中的一个重要研究方向。物体检测的目标…

SpringBoot对PDF进行模板内容填充、电子签名合并

1. 依赖引入–这里只包含额外引入的包 原有项目包不含括在内 <!-- pdf编辑相关--> <dependency><groupId>com.itextpdf</groupId><artifactId>itextpdf</artifactId><version>5.5.13.3</version> </dependency><de…

C# 提取PDF中指定文本、图片的坐标

获取PDF文件中文字或图片的坐标可以实现精确定位&#xff0c;这对于快速提取指定区域的元素&#xff0c;以及在PDF中添加注释、标记或自动盖章等操作非常有用。本文将详解如何使用国产PDF库通过C# 提取PDF中指定文本或图片的坐标位置&#xff08;X, Y轴&#xff09;。 ✍ 用于…