
在JAVA中将透明的图像转换成JPEG格式
在JAVA中将图像文件转换成JPEG,通常使用下面的代码:
阅读更多1File __pngFile = new File("exportUnit.png"); 2File __jpgFile = new File("exportUnit.jpg"); 3writeJPEG(__pngFile, __jpgFile, 80); 4 5public static void writeJPEG(File $source, File $dest, int $quality) throws IOException 6{ 7 String __formatName …关于快速启动,我最早使用的是Win+R这种绿色的方式。但由于要记忆大量的自定义文件名,且不支持模糊查找,我改用了 Find and Run Robot (FARR) 。
但突然有一天,我感觉FARR实在是太慢了……
于是我改用 TypeAndRun 。
原来用FARR的时候,我是把一堆常用的快捷方式放在一个文件夹中,然后在FARR中将这个文件夹加入索引位置,以实现快速启动。4年多来,这个文件夹中有88个快捷方式。
现在Type And Run要求将所有的自定义别名加入到Config.ini中。一个个手动加实在是太痛苦了,我用Vim写了个脚本实现它:
阅读更多在Sprite Sheep Editor中,使用了这样的一个小技术(思路来自这里):将透明图像的Alpha通道转换成黑白(灰度)图像,然后与正常图像拼合成一张大图,再存储成JPEG格式。
这方法其实是一个折衷方案。因为JPEG格式是不支持透明的,很多时候为了获得透明效果,我们只能使用PNG格式。但PNG是无损压缩的,在图像尺寸上没有优势。如果将Alpha通道转换成黑白图并保存到JPEG图像中,就能大幅降低最终的图像文件大小。
在我的测试中,一个2000x3300的32位带Alpha通道的PNG图像文件大小为2MB,转换为4000x3300(因为拼合了黑白图片,宽度增加一倍)70%压缩比的JPEG后,文件大小为1.1MB。
当然,转换 …
阅读更多2011-09-21:Adobe已经修正了我提交的这个bug,并在安全更新最后做出了感谢。但并非在v11中修正的,而是在v10.3.183.10中修正,安全更新在这里:http://www.adobe.com/support/security/bulletins/apsb11-26.html。所以我先前的推论可能不正确。但我想,Adobe很可能在10月3日的MAX大会上发布Flash Player 11。
今天Adobe给我发来邮件,告知我原来提交的关于FlashPlayer在执行NetStream.play的时候崩溃的问题已经解决,并询问我是否要加入安全公告致谢部分:
阅读更多Thank you again for sending us …
Sprite Sheet Editor 0.5.6有一个很重大的Bug,在保存metadata的时候,我将frame的ow/oh属性保存成了与w/h属性相同的值。
根据Sprite Sheet Editor修剪每帧中的空白区域的原理说明可以知道,对于剪切过空白的帧来说,ow和oh是还原原始帧大小的关键。如果这两个值出错,会导致无法取得动画的正确尺寸。
好在这个是可以回溯的。可以通过比较某个Label包含的所有帧的尺寸,通过ox/oy和w/h计算出每帧的实际尺寸,最大的那一个,就是该Label中的所有帧的统一ow/oh属性值。
使用这个方法,得到的实际值,甚至比原来通过Sprite Sheet Editor进行手工设定的值更小,也就是 …
阅读更多AIR看来一直想脱掉玩具的帽子,继AIR2开始支持本地进程通信后,AIR3又开始支持本地插件了,这真是个好消息。具体的支持情况是这样的:
- Android平台:Java包文件 (.jar) 或共享库文件(.so)
- iOS:静态库(.a)
- OS X :Framework (.framework)
- Windows:动态链接库(.dll)
有了这个东东,可以说AIR真是如猫添翼啊!
阅读更多
使用Embed标签在AS3项目中嵌入字体
关于嵌入字体,其实 Embed fonts 这篇文章已经很详细的介绍了。但这篇文章有这样几个问题:
- 它是针对Flex开发者的,纯AS开发者看起来未免不爽;
- 没有讲解怎么使用在Flash IDE中嵌入的字体;
- 嵌入字体就那么点东西,其实不值得花功夫读这一大篇鸟语(介是偷懒……)
那我就把要点总结下……
阅读更多
