Compression 读取Photoshop(PSD)文件的RLE压缩层

Compression 读取Photoshop(PSD)文件的RLE压缩层,compression,photoshop,layer,psd,Compression,Photoshop,Layer,Psd,我是以这个为基础的 我可以很好地读取原始数据,而且我的所有文件都没有ZIP压缩。我所需要的就是让RLE的东西发挥作用 现在,我对解压缩信息不感兴趣。我只想把它读入并以压缩的形式存储在内存中。我稍后会处理减压的问题 我所做的只是计算RLE数据的大小,然后逐通道批量读取数据。这是我用来计算通道数据大小的函数: 用ActionScript 3.0编写 //////////////////////////////////////////////////////////////////// //计算RLE

我是以这个为基础的

我可以很好地读取原始数据,而且我的所有文件都没有ZIP压缩。我所需要的就是让RLE的东西发挥作用

现在,我对解压缩信息不感兴趣。我只想把它读入并以压缩的形式存储在内存中。我稍后会处理减压的问题

我所做的只是计算RLE数据的大小,然后逐通道批量读取数据。这是我用来计算通道数据大小的函数:

用ActionScript 3.0编写

////////////////////////////////////////////////////////////////////
//计算RLE数据大小
////////////////////////////////////////////////////////////////////
受保护功能计算机化(数据:字节数组、记录:PSDLayerRecord):int
{
变量numScanlines:int;
var ii:int;
变量大小:int;
var-totalSize:int;
var-pad:int;
//计算我们的总时间
totalSize=(记录\底部-记录\顶部)*(记录\右侧-记录\左侧);
//找到我们的扫描线数
numScanlines=记录底部-记录顶部;
//初始化我们的大小
尺寸=0;
//循环每一行,看看我们有多少字节
跟踪(“Num扫描线:“+numScanlines”);
对于(ii=0;ii
我让另外四位专业的程序员和官方文档一起研究这段代码,他们都没有发现任何错误


谢谢您的帮助。

您是否只想知道通道像素数据大小(关于RLE或原始压缩)?您可以从层记录中的通道信息中获取尺寸