类 EpsImage

EpsImage class

用于 Encapsulated PostScript (EPS) 图像文件格式支持的 API 提供了强大的功能,可对包含文本、图形和图像的组合进行操作。具备位图预览图像处理、方向翻转、获取插图边界的边界框、调整大小、旋转图像以及添加预览图像等特性,此 API 确保在各种应用中以精确且多功能的方式无缝处理和集成 EPS 文件。

public sealed class EpsImage : VectorImage

属性

名称描述
AutoAdjustPalette { get; set; }获取或设置指示是否自动调整调色板的值。
virtual BackgroundColor { get; set; }获取或设置背景颜色的值。
override BitsPerPixel { get; }使用此属性可轻松获取图像的精确位深。检索每像素位数,提供有关图像颜色深度的关键洞察,并有助于优化处理任务。非常适合需要对图像操作和分析进行细粒度控制的应用程序。
BoundingBox { get; }通过以设备无关点访问原始边界框,此属性提供关于 EpsImage 尺寸的关键几何信息。检索这些数据后,用户可以准确评估图像的大小和宽高比,从而在各种应用中实现精确的布局和定位。
BoundingBoxPx { get; }此属性以像素返回 EpsImage 实例的原始边界框,提供用于精确渲染和操作的关键几何数据。有了这些信息,用户可以确保在项目中对 EPS 图像进行精确的放置和尺寸 /// 调整,提升整体视觉呈现和质量。
Bounds { get; }获取图像的边界。
BufferSizeHint { get; set; }获取或设置缓冲区大小提示,该提示定义了所有内部缓冲区的最大允许大小。
Container { get; }获取 Image 容器。
CreationDate { get; }从 EPS 文档结构约定 (DSC) 注释中检索创建日期,此属性提供指示 EPS 文件生成时间的关键元数据。通过访问这些信息,用户可了解文件的来源和时间顺序,提升文件管理和组织效率。
Creator { get; }此属性可访问来自 EPS 文件中 EPS 文档结构约定 (DSC) 注释的创建者信息。了解创建者细节可洞悉生成 EPS 文件所使用的软件或工具,便于在各种平台和应用之间进行兼容性评估。
DataStreamContainer { get; }获取对象的数据流。
Disposed { get; }获取一个值,指示此实例是否已释放。
EpsType { get; }访问并解释 EPS 图像的子类型值,简化工作流并提升跨平台兼容性。非常适合在项目中以精确高效的方式优化 EPS 子类型的检索。
ExifData { get; set; }获取或设置 Exif 数据。
override FileFormat { get; }使用此属性访问图像的文件格式。检索有关图像文件格式的关键信息,促进兼容性和高效处理。非常适合识别图像文件的格式,以便在项目中实现无缝集成。
virtual HasBackgroundColor { get; set; }获取或设置指示图像是否具有背景颜色的值。
HasRasterPreview { get; }轻松发现栅格预览的存在。访问布尔值以指示 EpsImage 实例是否包含栅格预览,为您的图像处理任务提供清晰高效的支持。非常适合根据 EPS 图像中栅格预览的有无来简化工作流决策。
override Height { get; }获取图像高度。
override HeightF { get; }使用此属性访问图像的高度。轻松获取图像高度,以实现无缝的布局调整、宽高比计算以及在不同屏幕分辨率和显示环境下的精确渲染。
InterruptMonitor { get; set; }获取或设置中断监视器。
override IsCached { get; }此属性提供了一种便捷方式来检查对象的数据是否已缓存,消除额外读取数据的需求。它提供快速高效的方法来确定所需信息是否已就绪,从而优化性能并降低数据密集型操作的资源开销。
virtual Metadata { get; }获取图像元数据。
Palette { get; set; }获取或设置颜色调色板。当像素直接表示时,调色板不被使用。
PostScriptVersion { get; }此属性检索与 EpsImage 实例关联的 PostScript 版本。它提供对 EPS 文件中使用的特定 PostScript 语言版本的洞察,有助于兼容性评估并促进与支持 PostScript 的环境的无缝集成。
PreviewImageCount { get; }轻松访问可用预览图像的数量。此属性让您轻松检索与文件关联的预览图像计数,便于高效管理和导航图像预览。非常适合优化工作流并有效组织图像资产。
PreviewImages { get; }检索与文件关联的预览图像。此属性提供对预览图像集合的无缝访问,使您能够高效浏览和管理所需的图像。非常适合快速预览并为项目选择合适的图像。
Size { get; }获取图像尺寸。
SizeF { get; }获取对象的尺寸(英寸)。
Title { get; }此属性检索从 EPS 文档结构约定(DSC)注释中提取的标题,这些注释嵌入在 EPS 文件中。它提供有关 EPS 文件内容的有价值元数据,有助于在兼容软件应用中进行文档组织和识别。
virtual UsePalette { get; }获取一个值,指示是否使用图像调色板。
override Width { get; }获取图像宽度。
override WidthF { get; }使用此便捷属性检索图像的宽度。轻松获取图像宽度,便于精确的布局计算、缩放操作以及在应用程序中的尺寸相关任务。非常适合确保在各种平台和设备上准确渲染和显示图像。
XmpData { get; set; }获取或设置 Xmp 数据。

方法

名称描述
override CacheData()此方法不执行任何操作,因为当前 EpsImage 类的实现不涉及缓存数据。虽然它可能不执行任何动作,但了解此行为对使用 EPS 图像的开发者至关重要,以确保在应用程序中实现高效的资源管理和最佳性能。
CanSave(ImageOptionsBase)确定图像是否可以保存为传入保存选项所表示的指定文件格式。
override Crop(Rectangle)裁剪指定的矩形。
virtual Crop(int, int, int, int)使用位移裁剪图像。
Dispose()释放当前实例。
override GetDefaultOptions(object[])获取默认的图像选项。
virtual GetEmbeddedImages()获取嵌入的图像。
virtual GetOriginalOptions()根据原始文件设置获取选项。这有助于保持原始图像的位深度和其他参数不变。例如,如果我们加载一幅每像素 1 位的黑白 PNG 图像,然后使用 Save 方法保存,输出的 PNG 图像将是每像素 8 位。为避免这种情况并以每像素 1 位保存 PNG 图像,请使用此方法获取相应的保存选项,并将其作为第二个参数传递给 Save 方法。
GetPreviewImage(EpsPreviewFormat)检索指定 format 的现有预览图像,如果未找到则返回 null。此方法在访问针对特定格式定制的预览图像时提供灵活性,优化应用程序中的兼容性和资源管理。
GetPreviewImages()访问链接到 EpsImage 实例的预览图像,允许在应用程序中无缝检索以进行检查或使用。此方法提供便捷的预览图像访问,增强用户对图像数据的交互体验。
virtual GetSerializedStream(ImageOptionsBase, Rectangle, out int)转换为 aps。
virtual RemoveBackground()移除背景。
virtual RemoveBackground(RemoveBackgroundSettings)移除背景。
virtual RemoveMetadata()移除元数据。
Resize(int, int)调整图像大小。默认使用 NearestNeighbourResample。
override Resize(int, int, ImageResizeSettings)使用扩展选项调整图像大小。
override 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)按比例调整宽度。
override Rotate(float)围绕中心旋转图像。
override 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)根据保存选项,将对象的数据以指定的文件格式保存到指定的文件位置。
override SetPalette(IColorPalette, bool)自定义图像调色板以实现独特的配色方案并提升视觉吸引力。轻松为特定效果调整颜色,并在不同平台和设备上优化图像质量。
virtual TrySetMetadata(IImageMetadataFormat)尝试设置 metadata 实例,前提是此 Image 实例支持并实现了 IImageMetadataFormat 类型。

示例

调整 EPS 图像大小并导出为 PNG 格式。

[C#]

// 加载 EPS 图像
using (var image = Image.Load("AstrixObelix.eps"))
{
    // 使用 Mitchell 三次插值方法调整图像大小
    image.Resize(400, 400, ResizeType.Mitchell);

    // 将图像导出为 PNG 格式
    image.Save("ExportResult.png", new PngOptions());
}

使用 PostScript 渲染将 EPS 图像转换为 PDF。

[C#]

using (var image = (EpsImage)Image.Load("Sample.eps"))
{
    var options = new PdfOptions
    {
        PdfCoreOptions = new PdfCoreOptions
        {
            PdfCompliance = PdfComplianceVersion.PdfA1b // Set required PDF compliance
        }
    };
  
    image.Save("Sample.pdf", options);
}

使用 PostScript 渲染将 EPS 图像转换为 PNG。

[C#]

using (var image = (EpsImage)Image.Load("Sample.eps"))
{
    var options = new PngOptions
    {
        VectorRasterizationOptions = new EpsRasterizationOptions
        {
            PageWidth = 500, // Image width
            PageHeight = 500 // Image height
            PreviewToExport = EpsPreviewFormat.PostScriptRendering; // Render raster image using the PostScript
        }
    };

    image.Save("Sample.png", options);
}

使用高级设置调整 EPS 图像大小。

[C#]

// 加载 EPS 图像
using (var image = Image.Load("AstrixObelix.eps"))
{
    // 使用高级缩放设置调整图像大小
    image.Resize(400, 400, new ImageResizeSettings
    {
        // 设置插值模式
        Mode = ResizeType.LanczosResample,

        // 设置过滤器类型
        FilterType = ImageFilterType.SmallRectangular,

        // 设置颜色比较方法
        ColorCompareMethod = ColorCompareMethod.Euclidian,

        // 设置颜色量化方法
        ColorQuantizationMethod = ColorQuantizationMethod.Popularity
    });

    // 将图像导出为 PNG 格式
    image.Save("ExportResult.png", new PngOptions());
}

另请参见