EmfDeleteObject
Содержание
[
Скрывать
]EmfDeleteObject(EmfRecord)
Инициализирует новый экземплярEmfDeleteObject
класс.
public EmfDeleteObject(EmfRecord record)
Параметр | Тип | Описание |
---|---|---|
record | EmfRecord | Запись. |
Смотрите также
- class EmfRecord
- class EmfDeleteObject
- пространство имен Aspose.Imaging.FileFormats.Emf.Emf.Records
- сборка Aspose.Imaging
EmfDeleteObject()
Инициализирует новый экземплярEmfDeleteObject
класс.
public EmfDeleteObject()
Примеры
В следующем примере показано, как установить цвет фона для EMF. Фактически он помещает прямоугольник фонового цвета перед отрисовкой всех остальных объектов.
[C#]
string dir = "c:\\aspose.imaging\\issues\\net\\3280\\";
string inputFilePath = dir + "image1.emf";
string outputFilePath = dir + "ChangeBackground_" + "image1.emf";
using (Aspose.Imaging.FileFormats.Emf.MetaImage image = (Aspose.Imaging.FileFormats.Emf.MetaImage)Aspose.Imaging.Image.Load(inputFilePath))
{
AddBackgroundRectangleEmf((Aspose.Imaging.FileFormats.Emf.EmfImage)image, Aspose.Imaging.Color.Blue);
image.Save(outputFilePath);
}
/// <summary>
/// Вспомогательный метод для изменения фона EMF.
/// </summary>
public static void AddBackgroundRectangleEmf(Aspose.Imaging.FileFormats.Emf.EmfImage image, Aspose.Imaging.Color color)
{
image.CacheData();
if (image.Records.Count < 1)
{
return;
}
//Установить прямоугольник
Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfRectangle rectangle = new Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfRectangle();
rectangle.Box = image.Header.EmfHeader.Bounds;
//Установить кисть
Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfCreateBrushIndirect brush = new Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfCreateBrushIndirect();
brush.LogBrush = new Aspose.Imaging.FileFormats.Emf.Emf.Objects.EmfLogBrushEx();
brush.LogBrush.Argb32ColorRef = color.ToArgb();
// Индексы объектов начинаются с 1; ноль зарезервирован для ссылок на сам метафайл, см.
// https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-emf/e4fa4e63-9096-4cdc-b776-85e2a1e4e1f4
brush.IhBrush = 1;
//Выбрать кисть
Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfSelectObject selectObject = new Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfSelectObject();
selectObject.ObjectHandle = 1;
//Удалить кисть
Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfDeleteObject deleteObject = new Aspose.Imaging.FileFormats.Emf.Emf.Records.EmfDeleteObject();
deleteObject.ObjectHandle = 1;
//Добавить записи
image.Records.Insert(1, brush);
image.Records.Insert(2, selectObject);
image.Records.Insert(3, rectangle);
image.Records.Insert(4, deleteObject);
}
Смотрите также
- class EmfDeleteObject
- пространство имен Aspose.Imaging.FileFormats.Emf.Emf.Records
- сборка Aspose.Imaging