Image 类
内容
[
隐藏
]Image class
Image 是所有类型图像的基类。
public abstract class Image : DataStreamSupporter, IMetadataContainer, IObjectWithBounds
属性
| 名称 | 描述 |
|---|---|
| AutoAdjustPalette { get; set; } | 获取或设置指示是否自动调整调色板的值。 |
| virtual BackgroundColor { get; set; } | 获取或设置背景颜色的值。 |
| abstract BitsPerPixel { get; } | 获取图像的每像素位数。 |
| Bounds { get; } | 获取图像的边界。 |
| BufferSizeHint { get; set; } | 获取或设置缓冲区大小提示,该提示定义了所有内部缓冲区的最大允许大小。 |
| Container { get; } | 获取 Image 容器。 |
| DataStreamContainer { get; } | 获取对象的数据流。 |
| Disposed { get; } | 获取一个值,指示此实例是否已释放。 |
| ExifData { get; set; } | 获取或设置 Exif 数据。 |
| virtual FileFormat { get; } | 获取文件格式的值 |
| virtual HasBackgroundColor { get; set; } | 获取或设置指示图像是否具有背景颜色的值。 |
| abstract Height { get; } | 获取图像高度。 |
| InterruptMonitor { get; set; } | 获取或设置中断监视器。 |
| abstract IsCached { get; } | 获取一个值,指示对象的数据当前是否已缓存且无需读取数据。 |
| virtual Metadata { get; } | 获取图像元数据。 |
| Palette { get; set; } | 获取或设置颜色调色板。当像素直接表示时,调色板不被使用。 |
| Size { get; } | 获取图像尺寸。 |
| virtual UsePalette { get; } | 获取一个值,指示是否使用图像调色板。 |
| abstract Width { get; } | 获取图像宽度。 |
| XmpData { get; set; } | 获取或设置 Xmp 数据。 |
方法
| 名称 | 描述 |
|---|---|
| static Create(Image[]) | 使用指定的图像作为页面创建新图像 |
| static Create(MultipageCreateOptions) | 创建指定的多页创建选项。 |
| static Create(string[]) | 创建包含指定文件的多页图像。 |
| static Create(Image[], bool) | 使用指定的图像作为页面创建新图像。 |
| static Create(string[], bool) | 创建包含指定文件的多页图像。 |
| static Create(ImageOptionsBase, int, int) | 使用指定的创建选项创建新图像。 |
| static Create(ImageOptionsBase, int, int, int[]) | 从提供的像素数组创建一个 RasterImage 实例。验证指定的宽度和高度是否匹配像素数据的尺寸。此方法只能在库处于授权模式时使用。 |
| static Load(Stream) | 从指定的流加载新图像。 |
| static Load(string) | 从指定的文件路径或 URL 加载新图像。如果 filePath 是文件路径,方法仅打开该文件。如果 filePath 是 URL,方法会下载文件,将其存储为临时文件,然后打开它。 |
| static Load(Stream, LoadOptions) | 从指定的流加载新图像。 |
| static Load(string, LoadOptions) | 从指定的文件路径或 URL 加载新图像。如果 filePath 是文件路径,方法仅打开该文件。如果 filePath 是 URL,方法会下载文件,将其存储为临时文件,然后打开它。 |
| abstract CacheData() | 缓存数据并确保不会从底层 DataStreamContainer 再进行额外的数据加载。 |
| CanSave(ImageOptionsBase) | 确定图像是否可以保存为传入保存选项所表示的指定文件格式。 |
| virtual Crop(Rectangle) | 裁剪指定的矩形。 |
| virtual Crop(int, int, int, int) | 使用位移裁剪图像。 |
| Dispose() | 释放当前实例。 |
| virtual GetDefaultOptions(object[]) | 获取默认选项。 |
| virtual GetOriginalOptions() | 获取基于原始文件设置的选项。这对于保持原始图像的位深度和其他参数不变很有帮助。例如,如果我们加载一个每像素 1 位的黑白 PNG 图像,然后使用 Save 方法保存,它将生成每像素 8 位的输出 PNG 图像。为了避免这种情况并以每像素 1 位保存 PNG 图像,请使用此方法获取相应的保存选项,并将其作为第二个参数传递给 Save 方法。 |
| virtual GetSerializedStream(ImageOptionsBase, Rectangle, out int) | 转换为 aps。 |
| virtual RemoveMetadata() | 移除元数据。 |
| Resize(int, int) | 调整图像大小。默认使用 NearestNeighbourResample。 |
| abstract Resize(int, int, ImageResizeSettings) | 调整图像大小。 |
| virtual Resize(int, int, ResizeType) | 调整图像大小。 |
| ResizeHeightProportionally(int) | 按比例调整高度。默认使用 NearestNeighbourResample。 |
| virtual ResizeHeightProportionally(int, ImageResizeSettings) | 按比例调整高度。 |
| virtual ResizeHeightProportionally(int, ResizeType) | 按比例调整高度。 |
| ResizeWidthProportionally(int) | 按比例调整宽度。使用默认的 NearestNeighbourResample。 |
| virtual ResizeWidthProportionally(int, ImageResizeSettings) | 按比例调整宽度。 |
| virtual ResizeWidthProportionally(int, ResizeType) | 按比例调整宽度。 |
| virtual Rotate(float) | 围绕中心旋转图像。 |
| abstract RotateFlip(RotateFlipType) | 旋转、翻转或同时旋转和翻转图像。 |
| Save() | 将图像数据保存到底层流。 |
| Save(Stream) | 将对象的数据保存到指定的流。 |
| override Save(string) | 将图像保存到指定的文件位置。 |
| Save(Stream, ImageOptionsBase) | 根据保存选项,将图像数据以指定的文件格式保存到指定的流中。 |
| virtual Save(string, bool) | 将对象的数据保存到指定的文件位置。 |
| virtual Save(string, ImageOptionsBase) | 根据保存选项,将对象的数据以指定的文件格式保存到指定的文件位置。 |
| virtual Save(Stream, ImageOptionsBase, Rectangle) | 根据保存选项,将图像数据以指定的文件格式保存到指定的流中。 |
| virtual Save(string, ImageOptionsBase, Rectangle) | 根据保存选项,将对象的数据以指定的文件格式保存到指定的文件位置。 |
| abstract SetPalette(IColorPalette, bool) | 设置图像调色板。 |
| virtual TrySetMetadata(IImageMetadataFormat) | 尝试设置 metadata 实例,如果此 Image 实例支持并实现了 IImageMetadataFormat 类型。 |
| static CanLoad(Stream) | 确定是否可以从指定的流加载图像。 |
| static CanLoad(string) | 确定是否可以从指定的文件路径加载图像。 |
| static CanLoad(Stream, LoadOptions) | 确定是否可以从指定的流加载图像,并可选地使用指定的 loadOptions。 |
| static CanLoad(string, LoadOptions) | 确定是否可以从指定的文件路径加载图像,并可选地使用指定的打开选项。 |
| static GetFileFormat(Stream) | 获取文件格式。 |
| static GetFileFormat(string) | 获取文件格式。 |
| static GetFittingRectangle(Rectangle, int, int) | 获取适合当前图像的矩形。 |
| static GetFittingRectangle(Rectangle, int[], int, int) | 获取适合当前图像的矩形。 |
| static GetProportionalHeight(int, int, int) | 获取等比例高度。 |
| static GetProportionalWidth(int, int, int) | 获取等比例宽度。 |
示例
确定图像是否使用调色板。
[C#]
using (var image = Image.Load(folder + "Sample.bmp"))
{
if (image.UsePalette)
{
Console.WriteLine("The palette is used by the image");
}
}
使用特定的缩放类型调整图像大小。
[C#]
using (var image = Image.Load("Photo.jpg"))
{
image.Resize(640, 480, ResizeType.CatmullRom);
image.Save("ResizedPhoto.jpg");
image.Resize(1024, 768, ResizeType.CubicConvolution);
image.Save("ResizedPhoto2.jpg");
var resizeSettings = new ImageResizeSettings
{
Mode = ResizeType.CubicBSpline,
FilterType = ImageFilterType.SmallRectangular
};
image.Resize(800, 800, resizeSettings);
image.Save("ResizedPhoto3.jpg");
}
此示例在磁盘的某个位置创建一个新 Image 文件,位置由 BmpOptions 实例的 Source 属性指定。在创建实际图像之前,设置了 BmpOptions 实例的多个属性。尤其是此情况下指向实际磁盘位置的 Source 属性。
[C#]
//创建 BmpOptions 的实例并设置其各种属性
Aspose.Imaging.ImageOptions.BmpOptions bmpOptions = new Aspose.Imaging.ImageOptions.BmpOptions();
bmpOptions.BitsPerPixel = 24;
//创建 FileCreateSource 的实例并将其指定为 BmpOptions 实例的 Source
//第二个 Boolean 参数决定要创建的文件是否为 IsTemporal
bmpOptions.Source = new Aspose.Imaging.Sources.FileCreateSource(@"C:\temp\output.bmp", false);
//通过调用 Create 方法创建 Image 实例并使用 BmpOptions 实例进行初始化。
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Create(bmpOptions, 500, 500))
{
//进行一些图像处理
// 保存所有更改
image.Save();
}
另请参见
- class DataStreamSupporter
- interface IObjectWithBounds
- interface IMetadataContainer
- namespace Aspose.Imaging
- assembly Aspose.Imaging