ImageData
محتويات
[
يخفي
]ImageData class
يحدد صورة للشكل.
لمعرفة المزيد، قم بزيارةالعمل مع الصور مقالة توثيقية.
public class ImageData
الخصائص
اسم | وصف |
---|---|
BiLevel { get; set; } | يحدد ما إذا كانت الصورة سيتم عرضها باللونين الأبيض والأسود. |
Borders { get; } | يحصل على مجموعة حدود الصورة. الحدود لا تؤثر إلا على الصور المضمنة. |
Brightness { get; set; } | يحصل على سطوع الصورة أو يضبطه. يجب أن تكون قيمة هذه الخاصية رقمًا من 0.0 (الأقل سطوعًا) إلى 1.0 (الأكثر سطوعًا). |
ChromaKey { get; set; } | يحدد قيمة لون الصورة التي سيتم التعامل معها على أنها شفافة. |
Contrast { get; set; } | يحصل على تباين الصورة المحددة أو يضبطه. يجب أن تكون قيمة لهذه الخاصية رقمًا يتراوح بين 0.0 (أقل تباين) و1.0 (أعلى تباين). |
CropBottom { get; set; } | يحدد جزء إزالة الصورة من الجانب السفلي. |
CropLeft { get; set; } | يحدد جزء إزالة الصورة من الجانب الأيسر. |
CropRight { get; set; } | يحدد جزء إزالة الصورة من الجانب الأيمن. |
CropTop { get; set; } | يحدد جزء إزالة الصورة من الجانب العلوي. |
GrayScale { get; set; } | يحدد ما إذا كانت الصورة سيتم عرضها في وضع التدرج الرمادي. |
HasImage { get; } | إرجاعحقيقي إذا كان الشكل يحتوي على بايتات صورة أو روابط صورة. |
ImageBytes { get; set; } | يحصل على البايتات الخام للصورة المخزنة في الشكل أو يعينها. |
ImageSize { get; } | يحصل على معلومات حول حجم الصورة ودقتها. |
ImageType { get; } | يحصل على نوع الصورة. |
IsLink { get; } | إرجاعحقيقي إذا كانت الصورة مرتبطة بالشكل (عندماSourceFullName (تم تحديده). |
IsLinkOnly { get; } | إرجاعحقيقي إذا كانت الصورة مرتبطة ولم يتم تخزينها في المستند. |
SourceFullName { get; set; } | يحصل على مسار واسم ملف المصدر للصورة المرتبطة أو يعينهما. |
Title { get; set; } | يحدد عنوان الصورة. |
طُرق
اسم | وصف |
---|---|
FitImageToShape() | تناسب بيانات الصورة مع إطار الشكل بحيث تتطابق نسبة العرض إلى الارتفاع لبيانات الصورة مع نسبة العرض إلى الارتفاع لإطار الشكل. |
Save(Stream) | يحفظ الصورة في التدفق المحدد. |
Save(string) | يحفظ الصورة في ملف. |
SetImage(Image) | يحدد الصورة التي يعرضها الشكل. |
SetImage(Stream) | يحدد الصورة التي يعرضها الشكل. |
SetImage(string) | يحدد الصورة التي يعرضها الشكل. |
ToByteArray() | يعيد بايتات الصورة لأي صورة بغض النظر عما إذا كانت الصورة مخزنة أو مرتبطة. |
ToImage() | يحصل على الصورة المخزنة في الشكل كـImage الكائن. |
ToStream() | ينشئ ويعيد مجرى يحتوي على بايتات الصورة. |
ملاحظات
استخدمImageData
الخاصية للوصول إلى الصورة وتعديلها داخل الشكل. لا تقم بإنشاء مثيلات منImageData
الصف مباشرة.
يمكن تخزين الصورة داخل شكل، أو ربطها بملف خارجي، أو كليهما (ربطها وتخزينها في المستند).
بغض النظر عما إذا كانت الصورة مخزنة داخل الشكل أو مرتبطة، يمكنك دائمًا الوصول إلى الصورة actual باستخدامToByteArray
،ToStream
،ToImage
أوSave
methods. إذا تم تخزين الصورة داخل الشكل، فيمكنك أيضًا الوصول إليها مباشرةً باستخدامImageBytes
ملكية.
لتخزين صورة داخل شكل استخدمSetImage
الطريقة. لربط صورة بشكل، اضبطSourceFullName
ملكية.
أمثلة
يوضح كيفية استخراج الصور من مستند وحفظها في نظام الملفات المحلي كملفات فردية.
Document doc = new Document(MyDir + "Images.docx");
// الحصول على مجموعة الأشكال من المستند،
// وحفظ بيانات الصورة لكل شكل مع الصورة كملف في نظام الملفات المحلي.
NodeCollection shapes = doc.GetChildNodes(NodeType.Shape, true);
Assert.AreEqual(9, shapes.Count(s => ((Shape)s).HasImage));
int imageIndex = 0;
foreach (Shape shape in shapes.OfType<Shape>())
{
if (shape.HasImage)
{
// قد تحتوي بيانات الصورة الخاصة بالأشكال على صور بتنسيقات صور متعددة محتملة.
// يمكننا تحديد امتداد الملف لكل صورة تلقائيًا، استنادًا إلى تنسيقها.
string imageFileName =
$"File.ExtractImages.{imageIndex}{FileFormatUtil.ImageTypeToExtension(shape.ImageData.ImageType)}";
shape.ImageData.Save(ArtifactsDir + imageFileName);
imageIndex++;
}
}
يوضح كيفية إدراج صورة مرتبطة في مستند.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
string imageFileName = ImageDir + "Windows MetaFile.wmf";
// فيما يلي طريقتان لتطبيق صورة على شكل حتى يمكن عرضها.
// 1 - اضبط الشكل لاحتواء الصورة.
Shape shape = new Shape(builder.Document, ShapeType.Image);
shape.WrapType = WrapType.Inline;
shape.ImageData.SetImage(imageFileName);
builder.InsertNode(shape);
doc.Save(ArtifactsDir + "Image.CreateLinkedImage.Embedded.docx");
// كل صورة نقوم بتخزينها بالشكل المناسب سوف تؤدي إلى زيادة حجم مستندنا.
Assert.True(70000 < new FileInfo(ArtifactsDir + "Image.CreateLinkedImage.Embedded.docx").Length);
doc.FirstSection.Body.FirstParagraph.RemoveAllChildren();
// 2 - قم بتعيين الشكل للارتباط بملف صورة في نظام الملفات المحلي.
shape = new Shape(builder.Document, ShapeType.Image);
shape.WrapType = WrapType.Inline;
shape.ImageData.SourceFullName = imageFileName;
builder.InsertNode(shape);
doc.Save(ArtifactsDir + "Image.CreateLinkedImage.Linked.docx");
// سيؤدي ربط الصور إلى توفير المساحة وسيؤدي إلى مستند أصغر حجمًا.
// ومع ذلك، لا يمكن للمستند عرض الصورة بشكل صحيح إلا أثناء
// ملف الصورة موجود في الموقع الذي يشير إليه خاصية "SourceFullName" الخاصة بالشكل.
Assert.True(10000 > new FileInfo(ArtifactsDir + "Image.CreateLinkedImage.Linked.docx").Length);
أنظر أيضا
- مساحة الاسم Aspose.Words.Drawing
- المجسم Aspose.Words