为了在一些地方做效果展示,常常要把一些显示对象放到一个框框中,这个框框的宽高都是定死的,但是你的展示对象
是获得,有很小的对象,有很大的对象(可能已经超出框框),怎么办呢?
简单粗暴!直接做显示对象的缩放。但是这样遇到问题,显示对象例如(原件 或者 sprite) 缩放后里面的位图
会毛边,不规则。原因应该是位图直接限定大小缩放的问题。
想做的完美点就要做位图缩放,即 拿显示对象做出 符合 框框 的bitmap 位图。
var display:CDisplay = this._showElementRoom.__content as CDisplay;
var scale:Number = Math.min(this.iconSize.x / display.width, this.iconSize.y / display.height);
var displayBitMap:Bitmap = display.__bitmap;
if (this._bitmap != null)
{
this._bitmap.bitmapData.dispose();
}
this._bitmap = new Bitmap();
var bitmapData:BitmapData = new BitmapData(displayBitMap.width * scale, displayBitMap.height * scale, true, 0);
var matrix:Matrix = new Matrix();
var rect:Rectangle = display.getBounds(display);
matrix.scale(scale, scale);
bitmapData.draw(displayBitMap.bitmapData, matrix, null, null, null, true);
this._bitmap.bitmapData = bitmapData;
分享到:
相关推荐
Bitmap位图缩放是图像处理中的常见操作,广泛应用于各种应用程序和系统中,例如手机壁纸适配、游戏画面渲染、图像编辑软件等。在Android开发中,Bitmap对象是用于存储和处理像素数据的核心类,而缩放Bitmap是优化...
MFC位图缩放透明技术则是MFC库中处理图像显示的一种高级技巧,用于在缩放位图时保持其透明效果。在本篇中,我们将深入探讨这一主题,讲解如何在MFC应用中实现位图的缩放和透明处理。 首先,我们需要了解基本的位图...
位图缩放是图像处理中的一个关键操作,它允许我们根据需要调整图像的尺寸,以适应不同的显示或打印要求。在计算机图形学中,位图(BMP)是一种常见的图像文件格式,它以像素阵列的形式存储图像信息。位图缩放涉及到...
在这个"SurfaceView控制位图缩放、拖移"的Demo中,我们将探讨如何利用SurfaceView来实现位图的动态缩放和拖动功能。 首先,我们需要理解SurfaceView的基本工作原理。SurfaceView拥有自己的渲染线程,它独立于UI线程...
以下是一个简单的24位位图缩放程序的步骤概述: 1. **读取位图文件**:使用LoadImage函数加载位图文件,获取位图句柄(HBITMAP)。 2. **创建兼容设备上下文**:调用CreateCompatibleDC函数,创建一个与目标设备上...
位图缩放通常采用双线性插值,以保证平滑效果;旋转则涉及坐标系的转换和像素的新位置计算。 3. **活动对象(Active Object)**:Symbian系统中的活动对象是一种处理异步事件和长时间运行任务的机制。由于UI线程不...
位图缩放是计算机图形处理中的一个重要概念,它涉及到图像尺寸的调整,可以在不改变图像基本特征的情况下,根据需要将其放大或缩小。在本压缩包中,提供的资源主要用于实现位图的缩放功能,适用于图形界面的应用开发...
对BMP位图进行缩放 BMP文件是Windows操作系统所推荐和支持的图像文件格式,是一种将内存或显示器的图像数据不经过压缩而直接按位存盘的文件格式,所以称为位图(bitmap)文件,因其文件扩展名为BMP,故称为BMP文件...
位图缩放是指改变位图尺寸的过程,可以是放大或缩小。在Windows编程中,Visual C++(简称VC)提供了一套强大的GDI(Graphics Device Interface)库,用于处理位图和其他图形操作,包括位图的缩放处理。本篇文章将...
下面将详细阐述位图显示的基本原理、在WINCE 5.0中的实现方法,以及位图缩放和移动的技术细节。 1. **位图显示基础**: - **位图结构**:位图由宽度、高度、颜色深度和实际像素数据组成。颜色深度决定图像的色彩...
3. **像素组缩放**:为了实现无损缩放,易语言提供了`像素组_缩放图片_快速`和`像素组_缩放图片_无损`两个函数。前者可能牺牲一些质量来换取速度,而后者则会确保在任何情况下都能保持图像质量。无损缩放通常采用双...
**位图缩放的基本原理**: 位图缩放主要基于图像的插值算法。常见的插值算法有最近邻插值、双线性插值和三次样条插值等。其中,双线性插值由于其较好的平滑效果,在实际应用中较为常用。缩放过程中,原始位图的每个...
例如,将位图缩放到窗口大小: ```cpp CDC* pDC = GetDC(); // 获取当前窗口的设备上下文 CRect rect; // 创建一个矩形结构 GetClientRect(rect); // 获取窗口的客户区矩形 image.StretchBlt(pDC->m_hDC, rect....
最后,对于提供的压缩包文件“位图合成-位图缩放”,可能包含示例代码、测试图像和其他辅助文件。这些资源可以作为实现位图处理功能的起点,帮助你理解和实践上述概念。 总结一下,C语言实现位图BMP的合成和缩放...
GDI+则提供了Bitmap类,提供了DrawImage方法,可以设置缩放比例和缩放类型,以实现高质量的位图缩放。 缩放位图时还需要注意一些细节。首先,位图的色彩模式会影响缩放效果,例如RGB和CMYK色彩模式的处理方式会有所...
标题“缩放位图(11KB)”表明这是一个关于如何在VB中实现位图缩放功能的程序实例,而描述中的“vb之图像图形图片处理精彩编程”进一步确认了这一点。该压缩包包含了一系列文件,它们是完成这个功能的不同组成部分。 ...
总的来说,这个"Android应用源码之(多触点缩放位图)"示例涵盖了Android中多点触摸事件处理、手势识别、位图缩放和平移的关键技术。通过研究这个源码,开发者可以深入理解Android手势交互的实现原理,提升自己在移动...
在实际应用中,可能还需要考虑位图放大或缩小后的比例是否保持原图像的比例,以及如何处理非整数倍的缩放。这通常涉及到复杂的数学计算,如插值算法,以确保图像质量不会严重下降。 在进行这些操作时,需要注意性能...
总之,“Android多触点缩放位图Demo源码”提供了一个实际应用案例,演示了如何在Android应用中实现多触点手势控制的位图缩放和平移功能。开发者可以通过学习和分析这个源码,更好地理解Android触摸事件处理机制,并...
DrawBitmap()用于原尺寸绘制,StretchBlt()可以实现拉伸或缩放。 5. **释放资源**:完成绘制后,记得从设备上下文解除位图,并释放CBitmap对象。 调色板在8位或更低位深度的位图中起到关键作用,因为这些图像无法...