- 浏览: 81640 次
- 性别:
- 来自: 四川
-
最新评论
-
iceblue510808:
你好,能给我发下你写的这个吗?想学习下,谢谢了Adobe Bu ...
Flex图文混排 -
sxy09:
diding 写道xingfustar 写道哥们,够狠,可以共 ...
Flex图文混排 -
sxy09:
给份源码吧,学习研究下 419119915@qq.com
Flex图文混排之后期开发 -
zhangxiaopei:
哥,你还在吗?能发一份源码给我吗?谢谢,不甚感激邮箱:zhan ...
Flex图文混排之后期开发 -
zhangxiaopei:
兄弟能给源码给我吗?谢谢邮箱zhangoceansoft@12 ...
Flex图文混排
一个老外的比较有用的类,自已整合到自已的utls包中:
1.用法:
2.类源文件:JPGSizeExtractor.as
1.用法:
import flash.events.Event; import net.diding.utils.JPGSizeExtractor; private var je:JPGSizeExtractor; private function DDinit():void { je=new JPGSizeExtractor(); je.addEventListener(JPGSizeExtractor.PARSE_COMPLETE, sizeHandler); je.extractSize("http://192.168.1.102/buzzword/bin-debug/hpde.jpg"); } private function sizeHandler(e:Event):void { trace("Dimensions: " + je.width + " x " + je.height); }
2.类源文件:JPGSizeExtractor.as
package net.diding.utils { import flash.net.URLStream; import flash.net.URLRequest; import flash.events.Event; import flash.events.ProgressEvent; import flash.utils.Endian; public class JPGSizeExtractor extends URLStream { protected static const SOF0:Array=[0xFF, 0xC0, 0x00, 0x11, 0x08]; public static const PARSE_COMPLETE:String="parseComplete"; public static const PARSE_FAILED:String="parseFailed"; protected var dataLoaded:uint; protected var jpgWidth:uint; protected var jpgHeight:uint; protected var jumpLength:uint; protected var stopWhenParseComplete:Boolean; protected var traceDebugInfo:Boolean; public function JPGSizeExtractor() { endian=Endian.BIG_ENDIAN; } protected function jumpBytes(count:uint):void { for (var i:uint=0; i < count; i++) { readByte(); } } protected function progressHandler(e:ProgressEvent):void { dataLoaded=bytesAvailable; var APPSections:Array=new Array(); for (var i:int=1; i < 16; i++) { APPSections[i]=[0xFF, 0xE0 + i]; } var index:uint=0; var byte:int=0; var address:int=0; while (bytesAvailable >= SOF0.length + 4) { var match:Boolean=false; // Only look for new APP table if no jump is in queue if (jumpLength == 0) { byte=readUnsignedByte(); address++; // Check for APP table for each (var APP:Array in APPSections) { if (byte == APP[index]) { match=true; if (index + 1 >= APP.length) { if (traceDebugInfo) trace("APP" + Number(byte - 0xE0).toString(16).toUpperCase() + " found at 0x" + address.toString(16).toUpperCase()); // APP table found, skip it as it may contain thumbnails in JPG (we don't want their SOF's) jumpLength=readUnsignedShort() - 2; // -2 for the short we just read } } } } // Jump here, so that data has always loaded if (jumpLength > 0) { if (traceDebugInfo) trace("Trying to jump " + jumpLength + " bytes (available " + Math.round(Math.min(bytesAvailable / jumpLength, 1) * 100) + "%)"); if (bytesAvailable >= jumpLength) { if (traceDebugInfo) trace("Jumping " + jumpLength + " bytes to 0x" + Number(address + jumpLength).toString(16).toUpperCase()); jumpBytes(jumpLength); match=false; jumpLength=0; } else break; // Load more data and continue } else { // Check for SOF if (byte == SOF0[index]) { match=true; if (index + 1 >= SOF0.length) { // Matched SOF0 if (traceDebugInfo) trace("SOF0 found at 0x" + address.toString(16).toUpperCase()); jpgHeight=readUnsignedShort(); jpgWidth=readUnsignedShort(); if (traceDebugInfo) trace("Dimensions: " + jpgWidth + " x " + jpgHeight); removeEventListener(ProgressEvent.PROGRESS, progressHandler); // No need to look for dimensions anymore if (stopWhenParseComplete && connected) close(); dispatchEvent(new Event(PARSE_COMPLETE)); break; } } if (match) { index++; } else { index=0; } } } } protected function fileCompleteHandler(e:Event):void { if (!jpgWidth || jpgHeight) dispatchEvent(new Event(PARSE_FAILED)); } public function extractSize(fileURL:String, stopWhenParsed:Boolean=true):void { addEventListener(ProgressEvent.PROGRESS, progressHandler); addEventListener(Event.COMPLETE, fileCompleteHandler); dataLoaded=0; jumpLength=0; if (traceDebugInfo) trace("Started loading '" + fileURL + "'"); stopWhenParseComplete=stopWhenParsed; super.load(new URLRequest(fileURL)); } public function get loaded():uint { return dataLoaded; } public function get width():uint { return jpgWidth; } public function get height():uint { return jpgHeight; } public function set debug(newDebug:Boolean):void { traceDebugInfo=newDebug; } public function get debug():Boolean { return traceDebugInfo; } } }
发表评论
-
Flex 4.5 – Using Mobile View Transitions
2011-05-18 16:45 2529收录的一篇文章: 原文地址:http://devgirl.or ... -
Flex Array多参数排名(含有并列名次)
2011-04-25 21:52 1550最近有一个项目,客户不仅要求报表同时呈现: 1.员工在整个公司 ... -
从数据库读取数据并在Tree上分组呈现
2011-04-06 23:34 2394最近有一项目,需要从mysql数据库读取数据,到Flex中呈现 ... -
Flex Air 周边整合之碎语
2011-03-05 20:13 2069手边近期有一个项目( ... -
SDK 4.5 (Hero)TextLayout 随记
2010-11-15 22:24 4162TextLayout前沿更新: http://sourcefo ... -
Flex4.5 Hero
2010-11-06 21:03 3074Flex4.5 已在10.24发布,今天终于静下来玩玩它了 下 ... -
Flex4 Declarations in ActionScript
2010-11-02 20:26 3063抽空整理Cairgorn3时,由于喜欢Code,而不喜欢Blo ... -
AS3公历转农历和农历转公历
2010-11-01 21:49 528今天例行整理硬盘中的文件时,看到收录一篇JAVA农历转公历的类 ... -
Flex DataGrid 内嵌AutoCompleteDataGrid
2010-10-27 23:26 1117这个东东是根据flashcommand的AutoComplet ... -
Flex DataGrid 内嵌ComboBox 再内嵌一个 DataGrid
2010-10-27 23:10 1528由于设计需要,曾要用到一个功能模块,但由于数据量的问题,最终p ... -
美发城的烫染护理系统和仓库管理软件
2010-10-27 23:06 1133这段时间,做了两个软件:美发城的烫染护理系统和仓库管理软件 P ... -
Flash Builder 4 的一个作品
2009-07-27 10:33 7887月17日放假,到现在完成了一个网站,记录一下 http:// ... -
Flex存bmp图像
2009-03-28 12:13 2203前言: 这阵子没事在研究buzzword,并试图还原前台,费 ... -
Flex图文混排之后期开发
2009-03-07 22:14 6784一:now SDK: flex_sdk_4.0.0.61 ... -
纯AS的RemoteAMF3
2009-03-03 23:35 1647[纯AS的RemoteAMF3] 目前支持:AMFPHP,C ... -
FxTextArea插入图片后,图片上方空隙的解决
2009-03-02 21:51 2448由于开发一个运行期间由用户来设置dg表,无意间打开Navica ... -
Flex Datagrid 行列增加和删除(支持右键)
2009-03-02 19:28 12075目前能实现的功能: 1.支持编辑表头; 2.删除添加自动更新序 ... -
Flex提交Datagrid数据存为xml
2009-03-01 14:38 3175Flex 代码区 MyDataDG为datagrid,执行提 ... -
采用AS开发Module
2009-03-01 13:34 13101.采用ModuleLoader /********** ... -
Flex图文混排
2009-03-01 13:26 7058这几天没事,学习Gumbo的FxTextArea,开发了一个F ...
相关推荐
在C++编程中,获取JPEG和PNG图像的宽度和高度是一项常见的任务,这对于图像处理、图形用户界面(GUI)设计或者任何与图像显示相关的应用都至关重要。这两种图像格式都有其特定的存储结构,因此需要通过解析文件来...
c语言实现获取jpg文件属性宽和高 这是专门用于获取jpg文件宽和高的函数,代码相对简单。 源程序里面有测试代码。 先用windows鼠标移到图片上获取图片宽和高的信息,然后和程序读出的数值比较一下,结果数值相等就...
在C++编程中,获取JPEG图片的尺寸是一项常见的任务,特别是在图像处理或图形用户界面的应用中。JPEG(Joint Photographic Experts Group)是一种广泛使用的有损压缩图像格式,它能够有效地减少图片的存储空间。要...
在VC++编程环境中,获取图像的宽高大小是图像处理中的基本操作,这对于显示、编辑或分析图像至关重要。本示例程序着重展示了如何在VC++中实现这一功能。"VC 获取图像宽高大小.rar"提供的源码是一个典型的例子,它...
本项目“获取对应打印机纸张长宽的C#类”是专门为开发者设计的一个实用工具,它允许程序获取打印机支持的纸张尺寸,以便在打印过程中进行精确的页面布局。这个类库适用于Visual Studio 2012开发环境,且已编译为.NET...
这个"soft_用ASP判断图像长宽的组件.zip.zip"文件似乎包含了一个特定的ASP组件,该组件允许开发者在服务器端检查图像文件的尺寸,即宽度和高度。这种功能在很多应用场景中都是必要的,例如在上传图片时进行预处理,...
编写程序,对灰度图像进行二值分割,并进行 基本的图像分析。(图像可以自行搜集,要求图像中应有多个目 ...3)单独计算目标一的面积、周长。 4)求各个目标的最小外接矩形及长宽比。 5)程序有GUI。
本篇主要讨论如何从Image图像中的Region区域获取各种特征参数,这对于图像分析、识别和分类至关重要。以下是一些关键函数及其作用的详细说明: 1. **area_center_gray**: 这个函数用于计算Region区域的面积(Area)...
oracle获取图像属性,包含宽度、高度等信息。代码形式是包+函数,可自己扩充获取其他属性的函数。 调用: select blob_img.get_width(t.blob字段), blob_img.get_height(t.blob字段) from 表名t;
通过加载图像文件,我们可以访问其属性来获取元数据,如图像的宽度、高度、格式、创建日期等。以下是一个简单的示例: ```csharp using System.Drawing; Image image = Image.FromFile("path_to_image.jpg"); ...
目前我们常用的获取图片实际宽度高度的方法,要么是在DOM中写入,要么就是等图片加载完毕后才开始获取,用户体验极其不好,今天特意整理一个办法,可以让javascript在html加载完毕后就可以立即获取img文件的头数据...
在JavaScript和jQuery中获取图片的长宽通常是一个简单的任务,但在不同的浏览器环境下,实现方式可能存在差异。这个问题主要集中在Chrome浏览器上,尽管在IE和Firefox中能够正常获取,但在Chrome中可能会遇到问题。...
② 适合宽度:保持图像长宽比例缩放图像,使图像宽度等于视图宽度。 ③ 适合高度:保持图像长宽比例缩放图像,使图像高度等于视图高度。 ④ 适合屏幕:自动判断图像的显示方式,使图像能在当前视图上完整显示。 ⑶ ...
3. **数字图像处理实验**: - 压缩包中的"数字图像处理实验1_李培毓_1008060047.doc"可能是一个实验报告,涵盖了图像的基本操作,如读取、显示、保存、调整大小、滤波等。这样的实验有助于深入理解图像处理概念。 ...
给定一个长宽比为4:3的图像,如果它具有1600万个像素,那么可以通过以下方式计算分辨率: \[ \text{分辨率} = \sqrt{\frac{\text{总像素数}}{\text{长宽比}}} = \sqrt{\frac{16000000}{4/3}} = \sqrt{3464100} \...
#### 1.2 获取图像尺寸的重要性 在处理图像时,了解图像的实际尺寸是非常重要的。这不仅有助于我们更好地进行图像编辑和处理,还能帮助我们在不同应用场景中正确地展示图像。例如,在印刷行业中,需要确保图像的...
② 适合宽度:保持图像长宽比例缩放图像,使图像宽度等于视图宽度。 ③ 适合高度:保持图像长宽比例缩放图像,使图像高度等于视图高度。 ④ 适合屏幕:自动判断图像的显示方式,使图像能在当前视图上完整显示。 ⑶ ...
访问此类网站可以获取更多实用代码示例、详细教程和深入的理论知识,这对于深入理解MATLAB图像识别技术以及解决实际问题具有重要意义。虽然文档内容的某些部分由于OCR技术识别错误或者漏识别的情况存在,但我们可以...
例如,传统电视的标准长宽比为4:3,意味着图像的宽度是其高度的1.33倍。在专业领域,尤其是电影行业中,人们更倾向于使用单个数字来表示长宽比,例如4:3被简化为1.33:1,或者直接称为1.33。这种简化的方式便于记忆和...
` 这段代码展示了如何读取名为3.jpg的图像文件,并将其显示出来。 其次,文档中出现了`rgb2gray`函数,它是用于将彩色图像转换为灰度图像的。转换后的图像可以用`imhist`函数显示其直方图,以分析图像的灰度分布。 ...