CompressionMethod

PsdOptions.CompressionMethod property

获取或设置psd压缩方式

public CompressionMethod CompressionMethod { get; set; }

适当的价值

压缩方法。

例子

此示例演示了使用 Aspsoe.Imaging for .Net API 将图像转换为 PSD 格式。为了实现这个目标,这个例子加载了一个现有的图像,然后将它保存回 PSD 格式。

[C#]

string dir = "c:\\temp\\";

//创建一个图像类的实例,并通过文件路径使用现有文件对其进行初始化
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.bmp"))
{
    //创建一个PsdOptions类的实例
    Aspose.Imaging.ImageOptions.PsdOptions psdOptions = new Aspose.Imaging.ImageOptions.PsdOptions();

    //设置CompressionMethod为RLE
    //注意:其他支持的CompressionMethod是CompressionMethod.RAW [无压缩]
    psdOptions.CompressionMethod = Aspose.Imaging.FileFormats.Psd.CompressionMethod.RLE;

    //设置颜色模式为灰度
    //注意:其他支持的ColorModes有ColorModes.Bitmap和ColorModes.RGB
    psdOptions.ColorMode = Aspose.Imaging.FileFormats.Psd.ColorModes.Grayscale;

    //使用提供的 PsdOptions 设置将图像保存到磁盘位置
    image.Save(dir + "output.psd", psdOptions);
}

此示例说明如何使用各种 PSD 特定选项将 PNG 图像保存为 PSD 格式。

[C#]

string dir = "c:\\temp\\";

// 创建一个 100x100 像素的 PNG 图像。
using (Aspose.Imaging.FileFormats.Png.PngImage pngImage = new Aspose.Imaging.FileFormats.Png.PngImage(100, 100, Aspose.Imaging.FileFormats.Png.PngColorType.TruecolorWithAlpha))
{
    // 定义一个线性的蓝色透明渐变。
    Aspose.Imaging.Brushes.LinearGradientBrush gradientBrush = new Aspose.Imaging.Brushes.LinearGradientBrush(
            new Aspose.Imaging.Point(0, 0),
            new Aspose.Imaging.Point(pngImage.Width, pngImage.Height),
            Aspose.Imaging.Color.Blue,
            Aspose.Imaging.Color.Transparent);

    Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(pngImage);

    // 使用线性蓝色透明渐变填充 PNG 图像。
    graphics.FillRectangle(gradientBrush, pngImage.Bounds);

    // 以下选项将用于将 PNG 图像保存为 PSD 格式。
    Aspose.Imaging.ImageOptions.PsdOptions saveOptions = new Aspose.Imaging.ImageOptions.PsdOptions();

    // 每个通道的位数
    saveOptions.ChannelBitsCount = 8;

    // 通道数。每个颜色分量 R、G、B、A 一个通道
    saveOptions.ChannelsCount = 4;

    // 颜色模式
    saveOptions.ColorMode = Aspose.Imaging.FileFormats.Psd.ColorModes.Rgb;

    // 无压缩
    saveOptions.CompressionMethod = Imaging.FileFormats.Psd.CompressionMethod.Raw;

    // 默认版本为 6
    saveOptions.Version = 6;            

    using (System.IO.FileStream stream = System.IO.File.Create(dir + "saveoptions.psd"))
    {
        pngImage.Save(stream, saveOptions);
        System.Console.WriteLine("The size of the PSD image with RAW compression: {0}", stream.Length);
    }

    using (System.IO.FileStream stream = System.IO.File.Create(dir + "saveoptions.RLE.psd"))
    {
        // RLE 压缩允许减小输出图像的大小
        saveOptions.CompressionMethod = Imaging.FileFormats.Psd.CompressionMethod.RLE;

        pngImage.Save(stream, saveOptions);
        System.Console.WriteLine("The size of the PSD image with RLE compression: {0}", stream.Length);
    }

    // 输出可能如下所示:
    // RAW压缩后的PSD图片大小:40090
    // RLE压缩后的PSD图片大小:16185
}

也可以看看