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

android 9-patch图形在图像视图中不缩放

Android 9-patch图形是一种用于在Android应用程序中实现可伸缩图像的技术。它允许开发者定义图像的可伸缩区域和不可伸缩区域,以便在不失真地缩放图像的同时保持某些部分的固定形状。

优势:

  1. 可伸缩性:通过定义可伸缩区域和不可伸缩区域,9-patch图形可以根据不同的屏幕尺寸和分辨率进行自适应缩放,确保图像在各种设备上都能正确显示。
  2. 保持形状:9-patch图形可以确保图像的某些部分保持固定形状,例如按钮的边框或背景,从而使应用程序界面更加一致和专业。
  3. 节省内存:由于9-patch图形只需要存储图像的一小部分和一些额外的元数据,相比于使用多个不同尺寸的图像资源,可以节省应用程序的内存占用。

应用场景:

  1. 按钮和图标:9-patch图形常用于创建可伸缩的按钮和图标,以适应不同屏幕尺寸和分辨率的设备。
  2. 背景和边框:通过使用9-patch图形,可以创建具有可伸缩背景和边框的视图,使应用程序界面更加美观和一致。
  3. 对话框和弹出窗口:9-patch图形可以用于创建可伸缩的对话框和弹出窗口,以适应不同设备上的内容和布局。

推荐的腾讯云相关产品和产品介绍链接地址:

腾讯云提供了丰富的云计算服务和解决方案,以下是一些与Android开发相关的产品和链接地址:

  1. 腾讯云移动应用开发平台:https://cloud.tencent.com/product/madp 该平台提供了一站式的移动应用开发解决方案,包括应用开发、测试、发布和运营等环节的支持。
  2. 腾讯云移动推送:https://cloud.tencent.com/product/tpns 该服务提供了高效可靠的移动消息推送能力,可以帮助开发者实现消息推送功能。
  3. 腾讯云移动直播:https://cloud.tencent.com/product/mlvb 该服务提供了高清、低延迟的移动直播解决方案,可以帮助开发者实现移动直播功能。

请注意,以上仅为示例,腾讯云还提供了更多与云计算和移动开发相关的产品和服务,具体可根据实际需求进行选择和使用。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

android:绘图 (android.graphics包)

Buffer dst) 将当前位图像素内容复制到一个Buffer缓冲区 我们看到创建位图对象createBitmap包含了6种方法目前的Android 2.1 SDK中,当然他们使用的是API Level...一、 android.graphics.Matrix 有关图形的变换、缩放等相关操作常用的方法有: void reset() // 重置一个matrix对象。...NinePatch是Android平台特有的一种非矢量图形自然拉伸处理方法,可以帮助常规的图形在拉伸时不会缩放,实例中Android开发网提示大家对于Toast的显示就是该原理,同时SDK中提供了一个工具名为...Draw 9-Patch,有关该工具的使用方法可以参考我们经发布的 Draw 9-Patch使用方法介绍一文。...由于该类提供了高质量支持透明的缩放方式,所以图形格式为PNG,文件命名方式为.9.png 的后缀比如android123.9.png。

61420

【适配】425- 彻底搞懂移动Web开发中的viewport与跨屏适配

维基百科①的解释为: 计算机图形学理论中,当将一些对象渲染到图像时,存在两个类似区域的相关概念。(口和窗口) 口是一个以特定于渲染设备的坐标表示的区域(通常为矩形)。...口范围内的图像会以剪切的形式,投影到到世界坐标窗口中,完成图像的可视化展示。 Web 浏览器中,口是整个文档的可见部分。如果文档大于口,则用户可以通过滚动来移动口。...因为,浏览器窗口中所浏览图像的放大,是依赖于口的缩小来实现的。 如果不好理解,可以参照下图动画来感受一下。(上面蓝框表示底层画布、红框表示口,下面表示用户浏览器窗口中看到的页面) ?...●口表示当前正在查看的计算机图形中的多边形(通常为矩形)区域。 ● Web 浏览器术语中,它指的是您正在查看的文档中当前可在其窗口中显示的部分(如果以全屏模式查看文档,则指的是屏幕)。...滚动到视图中之前,口外部的内容屏幕上不可见。 ●当前可见的口部分称为可视口。这可以小于布局口,例如当用户进行缩放缩放时。该布局口保持不变,但视觉口变小。

2.7K30

彻底搞懂移动Web开发中的viewport与跨屏适配

维基百科①的解释为: 计算机图形学理论中,当将一些对象渲染到图像时,存在两个类似区域的相关概念。(口和窗口) 口是一个以特定于渲染设备的坐标表示的区域(通常为矩形)。...口范围内的图像会以剪切的形式,投影到到世界坐标窗口中,完成图像的可视化展示。 Web 浏览器中,口是整个文档的可见部分。如果文档大于口,则用户可以通过滚动来移动口。...因为,浏览器窗口中所浏览图像的放大,是依赖于口的缩小来实现的。 如果不好理解,可以参照下图动画来感受一下。(上面蓝框表示底层画布、红框表示口,下面表示用户浏览器窗口中看到的页面) ?...●口表示当前正在查看的计算机图形中的多边形(通常为矩形)区域。 ● Web 浏览器术语中,它指的是您正在查看的文档中当前可在其窗口中显示的部分(如果以全屏模式查看文档,则指的是屏幕)。...滚动到视图中之前,口外部的内容屏幕上不可见。 ●当前可见的口部分称为可视口。这可以小于布局口,例如当用户进行缩放缩放时。该布局口保持不变,但视觉口变小。

3.1K20

Android-.9图详解

Android设备适配,图片方面很重要的一部分就是.9图的使用了,我们今天就来记录一下。 1. 什么是.9.png图片,和普通png图片的区别?...正常图片都有四个边,.9图的左上(左边和上边两条边)表示可以拉伸区域,其中上面黑线(或者点)表示横向可拉伸的区域;左边黑线(或者点)表示纵向可拉伸的区域.图片拉伸时只有黑线区域内的图像会被拉伸,黑线两边的图像保持原状...右下(右边和下边两条边)表示间隔区域,其中下边表示横向填放内容的区域;右边表示纵向填放内容的区域,图片拉伸时,控件内部的文字上下左右边界只能放在黑线区域(有点类似垂直居中显示)。 3. 制作工具?...如果是studio直接以.9.png为后缀,双击编辑进入图片界面,选择左下角的9-patch即可开始制,或者图片右击列表选则Create 9-Patch file即可。...2.说明一下:图片下方的showcontent如果勾选上,会看到右侧的小图中出现蓝色的区域,代表的是可以自动 拉伸的部分。

2.3K20

浅谈 Web 图像优化

常规的图像格式分为矢量图和位图。 原理: 矢量图形使用线、点和多边形来表示图像。 光栅图形,也可以成为位图,通过对矩形格栅内的每个像素的值进行编码表示图像。...矢量格式适用于简单形状图形,并且变换颜色方便,仅通过 CSS 中的 fill 属性便可以改变颜色。并且多大的缩放下都能保证清晰,矢量格式不能满足复杂的图像,例如照片,高清图。...这时候我们就需要位图,位图的格式有很多: GIF PNG JPEG JPEG-XR WebP Bpg 其中 Webp 是比较流行的图像格式方案,目前移动端 Android 4.0 以上、PC 端 chrome...,分别为 360 768 1200 1920 size:我们来告诉浏览器,不同的环境下图像的宽度 当口不大于 360 时,图像的宽度为 100vw,当口大于 768 时,图像显示为 90vw,以此类推...这种方式很智能,浏览器根据你的 sizes,从 w 列表中选择最合适的图像来调用显示。 如果我们需要更精确的控制浏览器什么口大小下显示多大的图像,可以使用 picture 元素。

1.4K90

Android – Drawable 详解

前言 Drawable是可以绘制到屏幕上的图形。 Drawable用于定义形状,颜色,边界,渐变等,然后将其应用于Activity中的View。 这通常用于自定义显示特定View。...Drawable List 状态集合 StateListDrawable是一个XML中定义的可绘制对象,根据对象的状态,使用多个不同的图像来表示相同的图形。...下面嵌入了一个9-patch image的例子(左边是9patch图形,右边是应用程序中使用的一个例子): ?...你的PNG文件只需保存在drawable文件夹中以.9.png为扩展名,即可显示9-patch编辑器,而不是普通的图像编辑器。...Vector Drawables(矢量图) 这些XML是可绘制的,可以定义复杂的基于矢量的图像,可以自动缩放以支持所有的密度。

5.2K50

Android平台启动图使用.9.png图片

使用.9.png的优点: 避免非标准分辨率手机上缩放变形 可以只配置1张或多张图片适配更多分辨率,减少apk的体积(推荐至少配置1080P高分屏启动图片) .9.png图片和普通png图片的差异 .9...制作.9.png图片 工具 Android sdk目录下的tools目录下,有一个叫做draw9patch.bat的文件,双击打开就可以使用(最新android SDK该文件已经不存在,若电脑没有安装...android studio,可下载附件工具编辑.9.png图片) 使用android studio,因为android studio已经集成.9.png制作工具,只需选中需要生成的png文件,然后右键...,点击create 9-patch file 选项。...使用方法及问题解决方案 详细制作步骤可参考链接:Android中.9图片的含义及制作教程 可以使用在线.9.png生成工具:http://inloop.github.io/shadow4android/

35430

SVG精髓阅读笔记

SVG,是一种可缩放矢量图形,一种XML应用.可以以一种简洁,可移植的形式表示图形信息....计算机中描述图形信息的二大系统是栅格图形和矢量图形,栅格图形系统中,图像被表示为图片元素或者像素的长方形数组,每个像素用其RGB颜色值或者颜色表内的索引表示,这一系列像素也称为位图....矢量图形系统中,图像被描述为一系列几何形状,矢量图形阅读器接受指定坐标集上绘制形状的指令,而不是接受一系列已经计算好的像素.有人把矢量图形描述为一组绘图指令,而位图则是特定的位置填充颜色的点....,在这种情况下SVG可以做三件事 1:按较小的尺寸等比例缩放图形,以使图形完全填充口, 2:按较大的尺寸等比例缩放图形并裁剪掉超出口的部分 3:拉伸和挤压绘图以使其恰好填充新的口 属相preserveAspectRatio..., x,y Min Mid Max Meet参数适配viewBox口 参数slice会裁剪图形不适合口的部分, 如果使用none参数,图像不会被等比例缩放,以使它的用户坐标适合口.

1.4K20

解锁前端难题:亲手实现一个图片标注工具

Canvas 中使用 scale 函数时,重要的是要理解它实际上是缩放绘图坐标系统,而不是直接缩放绘制的图形。...因为缩放的坐标系统中,每个单位长度都变成了原来的两倍。 因此,当我们谈论 scale 函数时,重点是要记住它是缩放整个绘图坐标系统,而不是单独的图形。...来实现移动口 通过 canvas 的 translate 来实现改变图片放大后,整个图像可能无法完全显示 Canvas 上,此时只有图像的一部分(即可见区域)会显示画布上。...这个可见区域也被称为“口”。为了查看图像的其他部分,我们需要能够移动这个口,即实现图片的平移功能。 放大状态下,口的大小相对于整个图像是固定的,但是它可以图像上移动以显示不同的部分。...移动口时,我们需要更新图片的位置,并重新绘制图像以反映新的口位置。

8310

Android Studio中mipmap目录和drawable目录有什么区别

使用Android Studio开发时发现有2个目录可以放置图片: mipmap vs drawable,那么他们有什么区别呢?该选择哪个呢?...Google官方有介绍:Managing Projects Overview drawable/ For bitmap files (PNG, JPEG, or GIF), 9-Patch image...The Android system retains the resources in this folder (and density-specific folders such as mipmap-xxxhdpi...如果一个 imageview 有缩放动画,使用 drawable 下的图片,会一直使用一张,来缩放图片实现 imageview 缩放动画,如果使用 mipmap 会根据缩放程度自动选择比当前分辨率大而又最接近当前分辨率的图片来做缩放处理...而 google 文档里面说 laucher icon 使用 mipmap 我认为是因为 laucher icon laucher app 里面可能有动画,或者有的 laucher app 使用的

30030

图形编辑器开发:缩放至适应画布

如果你不理解它们,请看我的这篇文章: 《图形编辑器开发:以光标为中心缩放画布》 总体思路: 计算包裹住所有图形的大包围盒 bbox(AABB 包围盒,不带旋转的); 计算新的缩放比 newZoom。...更多填充策略,看我的这篇文章: 《容器内显示图片的五种方案:contain、cover、fill、none、scale-down》 我们需要比较 bbox 的宽高比和口 viewport 的宽高比。...加了 50px 的边距,这样内容就不再紧贴口边缘了,选中图形图像的控制点不至于跑到口外。 思路是,计算 newZoom 时用的 vw 和 vh,原来的基础减去 padding,再去计算。...计算缩放比,对象是减去 padding 的口宽高;计算位置,对象是原来的口宽高。 代码实现,改一下上面代码的第二步即可。...相关阅读, 图形编辑器开发:以光标为中心缩放画布 图形编辑器:场景坐标、口坐标以及它们之间的转换 图形编辑器开发:最基础但却复杂的选择工具 图形编辑器:工具管理和切换 图形编辑器:底层设计

20530

关于移动端适配,你必须要知道的

当然分辨率高代表屏幕就清晰,屏幕的清晰程度还与尺寸有关。 2.3 图像分辨率 我们通常说的 图片分辨率其实是指图片含有的 像素数,比如一张图片的分辨率为 800x400。...3.2 移动端开发 iOS、 Android和 ReactNative开发中样式单位其实都使用的是设备独立像素。...四、口( viewport)代表当前可见的计算机图形区域。 Web浏览器术语中,通常与浏览器窗口相同,但不包括浏览器的 UI, 菜单栏等——即指你正在浏览的文档的那一部分。...当用户对浏览器进行缩放时,不会改变布局口的大小,所以页面布局是不变的,但是缩放会改变视觉口的大小。...上面介绍 CSS像素时曾经提到 页面的缩放系数=CSS像素/设备独立像素,实际上说 页面的缩放系数=理想口宽度/视觉口宽度更为准确。

1.9K20

关于移动端适配,你必须要知道的

当然分辨率高代表屏幕就清晰,屏幕的清晰程度还与尺寸有关。 2.3 图像分辨率 我们通常说的 图片分辨率其实是指图片含有的 像素数,比如一张图片的分辨率为 800x400。...3.2 移动端开发 iOS、 Android和 ReactNative开发中样式单位其实都使用的是设备独立像素。...四、口( viewport)代表当前可见的计算机图形区域。 Web浏览器术语中,通常与浏览器窗口相同,但不包括浏览器的 UI, 菜单栏等——即指你正在浏览的文档的那一部分。...当用户对浏览器进行缩放时,不会改变布局口的大小,所以页面布局是不变的,但是缩放会改变视觉口的大小。...上面介绍 CSS像素时曾经提到 页面的缩放系数=CSS像素/设备独立像素,实际上说 页面的缩放系数=理想口宽度/视觉口宽度更为准确。

1.9K41

图形工具的另一种以光标为中心缩放实现

这个 group 就有点像口,虽然底层思路是一样的,但实现细节有很大不同。...和我之前写的文章一样,要点还是:你原来 group 的哪个相对位置进行缩放的,缩放后也得在那个位置。 你要改 group 的 xy。...我们要求的是这个图中的绿色向量。...这个 origin 可以用来指定 group 的缩放中心。 如果用 origin,你还是要改 xy 的,跑不了,别想太多。不仅如此,逻辑还更复杂了,毕竟又引入了新事物。建议用。...相关阅读, 图形编辑器开发:缩放至适应画布 图形编辑器开发:以光标为中心缩放画布 图形编辑器:场景坐标、口坐标以及它们之间的转换 图形编辑器开发:最基础但却复杂的选择工具 图形编辑器:工具管理和切换

20530

前端成神之路-移动web开发_流式布局

iOS, Android基本都将这个口分辨率设置为 980px,所以PC上的网页大多都能在手机上呈现,只不过元素看上去很小,一般默认可以通过手动缩放网页。 ?...####2.2视觉口 visual viewport 字面意思,它是用户正在看到的网站的区域。注意:是网站的区域。 我们可以通过缩放去操作视觉口,但不会影响布局口,布局口仍保持原来的宽度。...最标准的viewport设置 口宽度和设备保持一致 口的默认缩放比例1.0 不允许用户自行缩放 最大允许的缩放比例1.0 最小允许的缩放比例1.0 3.0二倍图 ####3.1物理像素&物理像素比...通常使用二倍图, 因为iPhone 6 的影响背景图片 注意缩放问题 3.2背景缩放background-size background-size 属性规定背景图像的尺寸 background-size...: 背景图片宽度 背景图片高度; 单位: 长度|百分比|cover|contain; cover把背景图像扩展至足够大,以使背景图像完全覆盖背景区域。

1.6K20

CAD常见问题解决

2、一张图纸中选中要复制的图形后,按CTRL+C(菜单:编辑》复制)。...4、按CTRl+V,按提示定位插入点,图纸就会复制到当前图中。 如果有特殊要求,希望将图形转帖到与原始图纸相同的坐标,可以“编辑”菜单里选择“粘贴到原坐标”命令。...help  F1  帮助 highlight 选择高亮显示 image 图像管理器 imageadjust 图像调整 imageattach 插入光栅图像 imagequality 图像质量 insertobj...然后输入bh执行填充命令,点“添加:拾取点”按钮,缩放视图,使视图中显示较多的矩形(有3000以上就可以了),在任意一个矩形中点一下,此时AutoCAD会弹出一个提示对话框,如下: AutoCAD显示对象多时填充计算速度同样会变慢...因此如果当图面复杂的时候想提高填充速度,有两种方法:一是尽量放大视图,让当前视图中显示的对象越少越好,如果放大后填充,缩放+填充会比不放大直接填充花费的时间更少,反而能提高效率;二是如果填充区域是一个封闭的多段线或其他图形

2.7K40

关于移动端适配,你必须要知道的

当然分辨率高代表屏幕就清晰,屏幕的清晰程度还与尺寸有关。 2.3 图像分辨率 我们通常说的 图片分辨率其实是指图片含有的 像素数,比如一张图片的分辨率为 800x400。...3.2 移动端开发 iOS、 Android和 ReactNative开发中样式单位其实都使用的是设备独立像素。...四、口( viewport)代表当前可见的计算机图形区域。 Web浏览器术语中,通常与浏览器窗口相同,但不包括浏览器的 UI, 菜单栏等——即指你正在浏览的文档的那一部分。...当用户对浏览器进行缩放时,不会改变布局口的大小,所以页面布局是不变的,但是缩放会改变视觉口的大小。...上面介绍 CSS像素时曾经提到 页面的缩放系数=CSS像素/设备独立像素,实际上说 页面的缩放系数=理想口宽度/视觉口宽度更为准确。

1.9K10

移动web开发_流式布局

iOS, Android基本都将这个口分辨率设置为 980px,所以PC上的网页大多都能在手机上呈现,只不过元素看上去很小,一般默认可以通过手动缩放网页。...####2.2视觉口 visual viewport 字面意思,它是用户正在看到的网站的区域。注意:是网站的区域。 我们可以通过缩放去操作视觉口,但不会影响布局口,布局口仍保持原来的宽度。...设置 口宽度和设备保持一致 口的默认缩放比例1.0 不允许用户自行缩放 最大允许的缩放比例1.0 最小允许的缩放比例1.0 3.0二倍图 ####3.1物理像素&物理像素比 物理像素点指的是屏幕显示的最小颗粒...通常使用二倍图, 因为iPhone 6 的影响背景图片 注意缩放问题 3.2背景缩放background-size background-size 属性规定背景图像的尺寸 background-size...: 背景图片宽度 背景图片高度; 单位: 长度|百分比|cover|contain; cover把背景图像扩展至足够大,以使背景图像完全覆盖背景区域。

1.3K10

android studio中关于图片报错相关问题总结

不知道大家碰到过android studio 中图片相关的错误,我是将之前eclipse上开发的项目移植到AS后发现一些错误,所以我把碰到的问题整理一下,做个总结。...如果一张图片不是.9图的话,图片的后缀名不要带有XX.9.png,这样androidstudio上是非法,会报错。 ...)  AAPT err: ERROR:9-patch image xxxx(该错误并不会被编译器标红,这一点很不友好!)...3.android studio 编辑.9图片界面选项  Patch scale: 用来缩放右边预览区域的大小  Show lock: 当鼠标图片区域的时候显示不可编辑区域  Show patches...,也就是说,不管如何缩放图片显示都是良 好的,看到这一提示就证明是.9图片的问题了。

93700
领券