我想将Silverlight中的可写图像保存到磁盘。
我找到了这个教程:http://kodierer.blogspot.com/2009/11/convert-encode-and-decode-silverlight.html,并且我的代码基于EncodeJpeg方法。
但是在:
pixelsForJpeg[0][x, y] = (byte)(color >> 16);
它抛出异常:算术运算导致溢出。 仔细检查时,颜色值为-16,777,216。像素为黑色,应为0。 切换到白色像素时,值为-1。
我试图添加16,777,216以查看是否存在某种偏移,但这仅适用于黑色像素,它会在白色像素上崩溃。
答案 0 :(得分:4)
答案 1 :(得分:0)
听起来像一个包裹的有符号整数值。设置了所有位的有符号整数值为负。例如,如果有符号,则0xFFFF表示设置了16位,高位表示低15位表示负值。