首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

一键制作自适应等比缩放的雪碧图帧动画

GitHub: https://github.com/gkajs/gka 原理剖析 当背景图片设置 background-size:100% 100% 时,百分比是以元素为基准的,应用到雪碧图上会将整张雪碧图拉伸填充整个元素...虽然上面并不是我们希望的效果,但也可以发现设置了百分比后,背景图被拉伸填充整个元素且随着元素长宽而改变。所以只需再解决以下三个问题就能达到我们希望的自适应等比缩放。...background-position 同样支持百分比,不同的是其百分比的值是根据元素背景计算得出的,公式如下 x百分比 = (x偏移量 / ((元素宽度 - 背景图片宽度) || 1))...背景图片为单图高倍数。...所以,每张单图对应的位置百分比都可以通过对应x、y的偏移值和来计算获得。 ?

2.2K30

【移动端网页布局】移动端网页布局基础概念 ⑥ ( 背景图像缩放 | 不等比例拉伸 - 同时设置值 | 等比例拉伸 - 设置宽度 cover contain 值 )

可设置的值 : 像素长度 : 单位 像素 px ; 百分比长度 : 百分比是 相对于父容器你的百分比 ; cover 值 : 等比例拉伸背景图像 , 使得背景图片完全覆盖背景区域 , 图片的部分内容可能显示不全...; contain 值 : 等比例拉伸背景图像 , 使得 宽度 或 高度 的其中一个达到父容器的尺寸 , 就不再进行拉伸 , 盒子模型部分内容可能显示空白 ; background-size 值设置一个值的情况...- 同时设置 宽度 / 高度 的 像素值 / 百分比值 如果为盒子模型 同时设置了 宽度 和 高度 像素值 , 则 图片的宽度和高度分别进行拉伸 , 达到样式定义的值 , 不会等比例拉伸...; /* 不等比例拉伸 */ background-size: 400px 400px; 或 /* 不等比例拉伸 */...- 设置 contain 在宽度或高度一个方向上充满父容器 本示例 , 拉伸背景图片时 , 宽度先充满了屏幕 , 就停止了拉伸 , 底部部分内容没有覆盖到 ; 代码示例 : <!

98620
您找到你想要的搜索结果了吗?
是的
没有找到

EasyX图形库学习(三、用easyX实现移动的小球、图片-加载、输出)

平时定义变量都是使用的基础数据类型,比如:int temp; 在使用图像的时候需要使用easyx提供给我们的类型:IMAGE,:IMAGE img; 输出图片(贴图) x 绘制位置的...// 图片的拉伸宽度 int nHeight = 0, // 图片的拉伸高度 bool bResize = false // 是否调整 IMAGE 的大小适应图片...int nHeight = 0, // 图片的拉伸高度 bool bResize = false // 是否调整 IMAGE 的大小适应图片 ); 加载图像...要绘制的 IMAGE 对象指针 DWORD dwRop = SRCCOPY // 三元光栅操作码 ); // 绘制图像(指定和起始位置) void putimage( int dstX,...//支持双击 //设置窗口的背景颜色 setbkcolor(YELLOW); //用设置的背景颜色填充整个窗口 cleardevice(); //窗口的坐标体系:窗口左上角是坐标原点,X轴向右增大

26310

Flutter实战】图片组件及四大案例

图标不会出现失真或者模糊的现象,例如将20x20的图片,渲染在200x200的屏幕上,图片会失真或模糊,而图标是矢量图,不会失真,就像字体一样。 多个图标可以存放在一个文件,方便管理。...contain:等比拉伸,直到一边填充满。 cover:等比拉伸,直到2边都填充满,此时一边可能超出范围。 fitWidth:等比拉伸填充满。 fitHeight:等比拉伸填充满。...exclusion:从两个图像的总和减去两个图像的乘积的两倍。 hardLight:调整源图像和目标图像的成分以使其适合源图像之后,将它们相乘。...Icons.add是系统提供的图标,创建Flutter项目的时候,pubspec.yaml默认有如下配置: 所有的图标在「Icons」已经定义,可以直接在源代码查看,也可以到官网查看所有图标。...,), ) 背景图片大小是57x80: 右侧三角已经不在中间了,如果想让其一直保持居中,修改拉伸区域: centerSlice: Rect.fromLTWH(20, 10, 1, 60), 圆形带边框的头像

2.5K10

Flutter Image实现图片加载

flutter 通过Image来加载并显示图片。...3.2 在pubspec.yamlflutter部分添加如下内容: assets: - images/xxx.png 3.3 代码中使用 Image( image: AssetImage("images...,当不指定时,图片会根据当前父容器的限制,尽可能的显示其原始大小,如果只设置width、height的其中一个,那么另一个属性默认会按比例缩放,但可以通过下面介绍的fit属性来指定适应规则。...适应模式是在BoxFit定义,它是一个枚举类型,有如下值: fill:会拉伸填充满显示空间,图片本身长宽比会发生变化,图片会变形。...contain:这是图片的默认适应规则,图片会在保证图片本身长宽比不变的情况下缩放适应当前显示空间,图片不会变形。

1.9K11

CSS 背景(background)

| url (url) 参数: none :  无背景图(默认的) url :  使用绝对或相对地址指定背景图像 background-image 属性允许指定一个图片展示在背景(只有CSS3...(默认的) no-repeat :  背景图像不平铺 repeat-x :  背景图像在横向上平铺 repeat-y :  背景图像在纵向平铺 背景位置(position) 语法: background-position...其参数设置如下: a) 可以设置长度单位(px)或百分比(设置百分比时,相对于父盒子的) b) 设置为cover时,会自动调整缩放比例(等比例拉伸),保证图片始终填充满背景区域(直到宽和都填满,可能会溢出...我们平时用的cover 最多 c) 设置为contain会自动调整缩放比例(等比例拉伸),保证图片始终完整显示在背景区域(或者有一方填满就不再继续拉伸),可能有空白区域。...(CSS3) 逗号分隔可以设置多背景,可用于自适应布局 做法就是 用逗号隔开就好了。

2.1K20

WPF图片处理与图片加载

Fill(填充整个空间):将图像拉伸或收缩填充整个可用空间,不保持原始宽高比。...可以根据需求选择合适的填充模式来显示图像和渲染 WPF Image的指的是在布局显示的,可以通过设置Width和Height属性来进行调整。...而渲染指的是图像在实际显示时的实际像素。 在WPF,可以通过设置Stretch属性来控制图像的渲染的关系。...Stretch属性有以下几种取值: None: 图像实际渲染高显示,与设置的无关。 Fill: 图像拉伸或压缩填充整个Image控件,忽略设置的宽高比例。...例如,如果设置了Image的宽度为100像素,高度为200像素,而Stretch属性设置为Uniform,那么图像将以保持宽高比例的方式显示,可能会有一部分被裁剪,但一定能完整显示在100x200像素的区域内

65220

现代图片性能优化及体验优化指南 - 缩放精细化展示及避免布局偏移、拉伸

,避免图片从未加载状态到渲染完成状态变化引起的重排问题。...object-fit 避免图片拉伸 当然,限制也会出现问题,譬如图片被拉伸了,非常的难看: 这个时候,我们可以借助 object-fit,它能够指定可替换元素的内容(也就是图片)该如何适应它的父容器的...来看这样一个有意思的 DEMO,假设我们有这样一个原图效果,它是一个二维码,大小为 100px x 100px: 如果我们将它放大,放到很大,明显,这个二维码会失真,像是这样: OK,在这种放大失真的情况想...image-rendering: crisp-edges:必须使用可有效保留对比度和图像的边缘的算法来对图像进行缩放,并且,该算法既不会平滑颜色,又不会在处理过程图像引入模糊。...,避免图片拉伸 object-position:基于 object-fit,设置图片实际展示的 position 范围 image-rendering:控制图片在缩放状态下的展示算法 合理利用它们,可以给用户在图片上更好的体验

1.2K60

Flutter 专题】127 图解基础 Image 小组件

5. width & height width & height 为设置图片展示尺寸; _imageWid05(width, height) => Image(image: AssetImage(...6. color & colorBlendMode color & colorBlendMode 配合使用绘制的混合模式,可以用来创建其他效果,黑白模式,X 光特效等;之前和尚有所尝试; _imageWid06...9. fit fit 为图片在布局的分布效果; BoxFit.fitWidth:整体图片资源图片宽度为基准放大或缩小; BoxFit.fitHeight:整体图片资源图片高度为基准放大或缩小;...BoxFit.fill:整体图片填充满图片,可进行拉伸或压缩等; BoxFit.contain:整体图片按比例放大或缩小至最大可容纳范围,并在设置内居中整体显示; BoxFit.cover...:整体图片按比例放大或缩小至最小可容纳范围,并居中显示; BoxFit.scaleDown:整体图片大于设置尺寸,按比例缩小并居中显示;若整体图片小于设置尺寸,则不做处理,居中显示; _imageWid09

1.2K20

Flutter构建布局 顶

如果要添加填充,边距,边框或背景色,请使用容器来命名其某些功能。 在这个例子,每个文本小部件放置在容器添加边距。 整个行也被放置在容器在行的周围添加填充。 本例的其余UI由属性控制。...您可以指定行或列如何在垂直和水平方向上对齐其子项。 您可以拉伸或限制特定的子部件。 您可以指定子窗口小部件如何使用行或列的可用空间。...在以下示例,3个图像的每一个都是100像素。 渲染框(在这种情况下,整个屏幕)宽度超过300像素,因此将主轴对齐设置为spaceEvenly在每个图像之间,之前和之后均匀分配自由水平空间。...以下示例显示了一列3个图像,每个图像100个像素。...您可以通过将整个布局放入Container并更改其背景颜色或图像来更改设备的背景

43K10

图片或视频充当网页背景+过渡动画

定义成块级元素的原因包括: 完全控制:行内元素的取决于元素内部嵌套的标签内容,本标签只想显示logo,不想嵌套内容。背景图片填充也需要知道所在容器的。...background-size设置的是背景。溢出部分会被隐藏。标签内没有内容,默认都是0。背景图片会全部隐藏,无法显示。 亲测只设置height,不设置width,也可以显示。...logo,用于显示背景图片的标签直接作为了最外层标签。...但在视频背景,不能直接将video标签作为最外层标签。 原因包括: 作为视频背景,需要设置100%。但视频100%可能会溢出父元素,而且是相对窗口大小的溢出。...如果对象的宽高比与内容框不相匹配,该对象将被剪裁适应内容框。 fill:被替换的内容正好填充元素的内容框。整个对象将完全填充此框。如果对象的宽高比与内容框不相匹配,那么该对象将被拉伸适应内容框。

9810

全栈之前端 | 9.CSS3基础知识之图像元素样式学习

通过本章将学习如下图像相关属性,您可以改变图像、媒体的样式等。 width/height 属性: 调整图像高大小(前面已介绍,此处不在累述)。...0x01 图像样式属性介绍 如何处理图像溢出问题呢? 描述: 前面我们说过 CSS 万物皆盒。...使用 width/height 解决flex 或者 grid 布局图像填充拉伸问题 描述: 在 flex 或者 grid 布局,默认情况下元素会被拉伸到充满整块区域,但是图像不会被拉伸,而会对齐到网格区域或者弹性容器的起始处...,若此时想图像拉伸指定 width: 100%; height: 100%; 即可, 但是通常情况下为了显示美观不会强制图像拉伸。...例如:下述示例中有一个两行两列的网格容器,里面所有的div元素有自己的背景色,被拉伸到充满了行和列,默认的图像并未被拉伸,此时设置 img 标签的 width、height 属性为100%来拉伸

16610

Flutter 专题】67 图解基本约束 Box (二)

LimitedBox 父 Widget 无限制,子 Widget 高大于约束最大; return Container(child: LimitedBox(maxWidth: 100, maxHeight...LimitedBox 父 Widget 有限制时;无论 LimitedBox 设置限制最大和子 Widget ,均以父 Widget 为准; return Container(width:...Widget; BoxFit.contain 通过子 Widget 比例拉伸或压缩,直到或高一边填充父 Widget; BoxFit.cover 子 Widget 填充父 Widget,剩余一边若超过父...Widget 对应边则裁切; BoxFit.fitWidth 通过子 Widget 为基准填充父 Widget,若高度超出会被裁切,子 Widget 不拉伸或压缩; BoxFit.fitHeight...通过子 Widget 为基准填充父 Widget,若宽度超出会被裁切,子 Widget 不拉伸或压缩; BoxFit.none 子 Widget 不拉伸或压缩,若超出父 Widget 则被裁切;

53041

何在canvas模拟css的背景图片样式

设置重复,但是canvas笔者只找到一个createPattern()方法,且只支持设置重复效果,那么如何在canvas里模拟一定的css背景效果呢,不要走开,接下来一起来试试。...background-repeat: no-repeat; background-size: 50% 80%; } 实现也很简单,在前面的基础上判断一下单位是否是%,是的话就按照canvas的来计算图片要显示的...width、height,也就是图片在canvas显示的,而在处理background-position时会用到图片的,但是我们传的还是图片的原始,这样计算出来当然是有问题的,修改一下:...,另外还有几个可选值: repeat-x:只有水平位置会重复背景图像 repeat-y:只有垂直位置会重复背景图像 no-repeat:background-image不会重复 接下来我们实现一下这几种情况...background-size计算后的图片显示

7.1K41

Flutter 专题】22 易忽略的【小而巧】的技术点汇总 (二)

Opacity 透明度 和尚以前在处理 Widget 的显隐性时用的是设置 Widget 均为0,方式不太好,偶然间了解到 Opacity,可以通过处理透明度来处理 Widget 的显隐性...,包括圆角等 this.clipBehavior = Clip.none, this.backgroundColor, // 背景颜色 this.padding, // 整个标签内边距...Colors 方式 Flutter 提供了很多便利的色值可以直接使用;大多数色值的颜色从 100 到 900,增量为 100,数字越小,颜色越浅,数字越大,颜色越深。...Colors.black54, Colors.black87, Color 方式 和尚在做 Android 开发时一般是用 16进制的色值,Flutter 同样支持, #EE5048 为例...不能很好的实现,和尚学习了一下 BoxConstraints 布局约束方式,根据父类布局的最大最小进行填充。

88741

Flutter组件学习(二)—— Image

序言 上一节,我们讲了 Flutter Text 组件的一些用法以及 API,本节我们继续学习 Flutter 的 Image 组件,同样先上图: ?...image Image组件的构造方法 在 Android ,我们都知道,图片的显示方式有很多,资源图片、网络图片、文件图片等等,在 Flutter 也有多种方式,用来加载不同形式的图片: Image...用来将一个 byte 数组加载成图片,用法如下: 1new Image.memory(bytes) Text组件的API API名称 功能 width & height 用来指定显示图片区域的...(并非图片的) fit 设置图片填充,类似于Android的ScaleType color & colorBlendMode 这两个属性需要配合使用,就是颜色和图片混合,就类似于Android的...看看 实现圆角/圆形图片 1、圆角 很多时候我们需要给图片设置圆角,那么在flutter是怎么实现的呢?

1.4K30

如何打造一个高效适配的H5

是不是能有用一套代码就适应各种分辨率窗口,那么就不会再有上面 这些烦恼,且开发效率快和维护成本会降低很多。...3、fill 模式:以内容中心为基点页面拉伸填充满整个窗口适配窗口,当窗口宽高比和视觉稿不同时,内容一定程度上被拉伸 ?...图2 像这种层背景色是纯色或透明,「contain 模式」是最佳选择可在任何分辨率窗口显示全页面内容,出现留空部分的颜色可以通过添加一个 100% 的层设置背景属性来修补。实现效果代码如下: ?...从易用性看,「fill 模式」可以精确适应窗口区域,但从视觉体验上看,不等比例的拉伸会造成图片失真,同时该层的主要内容及交互操作集中在中部,不重要的边缘可以适当被裁 剪,故这里选择「cover 模式...这里高等比缩放使用方法除了 transform:scale(x,y),也可以使用 zoom 进行缩放,视实际场景需求选择合适的方法,两者主要不同是: zoom 的基点不能自定义,固定是左上角 (0,0

1.2K50

【移动端网页布局】移动端网页布局基础概念 ⑤ ( 视网膜屏技术 | 二倍图概念 | 代码示例 )

4x4 像素 大小的区域 , 如果 强行为其设置 2x2 的图像 , 将其拉伸 , 就会导致图片模糊 , 无法发挥视网膜屏技术的最佳显示效果 ; 基于上述问题 , 提出了 倍图 概念 , 在标准的视口设置...100x100 像素 ; 实际准备的图片比 CSS 设置的图片在上都大 2 倍 , 这张图就是 二倍图 ; 目前除了二倍图之外 , 还有 三倍图 / 四倍图 , 但是 主流还是 二倍图 ; 二、...在CSS中使用二倍图的方法是,在CSS中将图像尺寸缩小50%,然后将其用作背景图像,如下所示: .image { /* 图片的100x50 像素 将其设置到 CSS 盒子模型 盒子大小为...在高分辨率设备上,图像更高的分辨率展示,从而提高图像的清晰度和质量。...-- 100x100 像素的图片放在 50x50 盒子 --> 显示效果

59840

HarmonyOS实战—Image组件的剪切和缩放

图片剪切 clip_alignment 查看girl图片信息 [在这里插入图片描述] 把改为100px,因为image标签要比真实图片小的时候,才需要剪切 <Image ohos:height...ohos:clip_alignment="center" /> 运行: [在这里插入图片描述] 发现只把中间的一小部分显示出来了,并且高大小均为100px 所以,ohos:clip_alignment...:把图片改为 300px <Image ohos:height="300px" ohos:width="300px" ohos:image_src...改为ohos:scale_mode="center":表示不缩放,按照image大小来展示原图中间的那一部分 [在这里插入图片描述] 改为ohos:scale_mode="stretch":表示拉伸,会把整个...缩小后会把整个image铺满 [在这里插入图片描述] 改为1000px,改为ohos:scale_mode="zoom_center",:表示把原图等比例放大,放大到跟窄边一致的时候(也就是说:在放大的时候

90700
领券