MetafileRecorderGraphics2D

Inheritance: java.lang.Object

public abstract class MetafileRecorderGraphics2D

رسومات مسجل ملفات التعريف

المنشئات

المنشئالوصف
MetafileRecorderGraphics2D()

الطرق

طريقةالوصف
getClip()يحصل أو يعيّن Region التي تحدّ منطقة الرسم لهذا Graphics
setClip(Region value)يحصل أو يعيّن Region التي تحدّ منطقة الرسم لهذا Graphics
getClipBounds()يحصل على حدود القص.
getBackgroundColor()يحصل على لون الخلفية.
setBackgroundColor(Color value)يعيّن لون الخلفية.
clear()يمسح حالة كائن الرسومات
drawArc(Pen pen, Rectangle rect, float startAngle, float arcAngle)يرسم قوسًا يمثل جزءًا من إهليلج محدد بواسطة بنية Rectangle.
drawCubicBezier(Pen pen, Point pt1, Point pt2, Point pt3, Point pt4)يرسم منحنى بيزيه مكعب.
drawPolyCubicBezier(Pen pen, Point[] points)يرسم بيزيه مكعب متعدد.
drawEllipse(Pen pen, Rectangle rect)يرسم الإهليلج.
fillEllipse(Brush brush, Rectangle rect)يملىء الإهليلج.
drawImage(RasterImage image, Point location)يرسم الصورة المحددة، باستخدام حجمها الفيزيائي الأصلي، في الموقع المحدد.
drawImage(byte[] imageBytes, Rectangle destRect, int srcUnit)يرسم الصورة.
drawImage(InputStream stream, Rectangle destRect, int srcUnit)يرسم الصورة.
drawImage(RasterImage image, Rectangle destRect, Rectangle srcRect, int srcUnit)يرسم الجزء المحدد من الصورة المحددة في الموقع المحدد وبالحجم المحدد.
drawLine(Pen pen, int x1, int y1, int x2, int y2)يرسم الخط.
drawLine(Pen pen, Point pt1, Point pt2)يرسم الخط.
drawPolyline(Pen pen, Point[] points)يرسم الخط المتعدد.
drawPath(Pen pen, GraphicsPath path)يرسم المسار.
fillPath(Pen pen, Brush brush, GraphicsPath path)يملىء المسار.
drawPie(Pen pen, Rectangle rect, float startAngle, float sweepAngle)يرسم الفطيرة.
fillPie(Brush brush, Rectangle rect, float startAngle, float sweepAngle)يملأ الفطيرة.
drawPolygon(Pen pen, Point[] points)يرسم المضلع.
fillPolygon(Brush brush, Point[] points)يملأ المضلع.
fillPolygon(Brush brush, Point[] points, int fillMode)يملأ المضلع.
drawRectangle(Pen pen, int x, int y, int width, int height)يرسم المستطيل.
drawRectangle(Pen pen, Rectangle rectangle)يرسم المستطيل.
fillRectangle(Brush brush, Rectangle rectangle)يملأ المستطيل.
drawString(String string, Font font, Color color, int x, int y)يرسم النص.
drawString(String string, Font font, Color color, int x, int y, float angle)يرسم النص.
excludeClip(Rectangle rect)يقوم بتحديث منطقة القص لهذا الكائن Graphics لاستبعاد المنطقة المحددة بواسطة بنية Rectangle.
excludeClip(Region region)يقوم بتحديث منطقة القص لهذا الكائن Graphics لاستبعاد المنطقة المحددة بواسطة Region.
intersectClip(RectangleF rect)يقوم بتحديث منطقة القص لهذا الكائن Graphics لتصبح تقاطع منطقة القص الحالية والبنية المحددة Rectangle.
intersectClip(Region region)يقوم بتحديث منطقة القص لهذا الكائن Graphics لتصبح تقاطع منطقة القص الحالية والـ Region المحدد.
resetClip()يعيد ضبط القص.
multiplyTransform(Matrix matrix)يضرب التحويل العالمي لهذا الكائن Graphics بالمصفوفة المحددة.
multiplyTransform(Matrix matrix, int order)يضرب التحويل العالمي لهذا الكائن Graphics بالمصفوفة المحددة بالترتيب المحدد.
translateTransform(float x, float y)يغير أصل نظام الإحداثيات بإضافة الإزاحة المحددة مسبقًا إلى مصفوفة التحويل لهذا الكائن Graphics.
translateTransform(float x, float y, int order)يغير أصل نظام الإحداثيات بتطبيق الإزاحة المحددة على مصفوفة التحويل لهذا الكائن Graphics بالترتيب المحدد.
rotateTransform(float angle)يطبق الدوران المحدد على مصفوفة التحويل لهذا الكائن Graphics.
rotateTransform(float angle, PointF center, int order)يطبق الدوران المحدد على مصفوفة التحويل لهذا الكائن Graphics بالترتيب المحدد.
scaleTransform(float sx, float sy)يطبق عملية التحجيم المحددة على مصفوفة التحويل لهذا الكائن Graphics بإضافتها مسبقًا إلى مصفوفة التحويل الخاصة بالكائن.
scaleTransform(float sx, float sy, int order)يطبق عملية التحجيم المحددة على مصفوفة التحويل لهذا الكائن Graphics بالترتيب المحدد.
getTransform()يحصل على التحويل العالمي.
setTransform(Matrix transform)يضبط التحويل.

Example: This example shows how to create a EMF image and draw some geometric shapes on it using EmfRecorderGraphics2D.

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

// حجم الصورة بالبكسل
int deviceWidth = 600;
int deviceHeight = 400;

// حجم الصورة بالمليمتر
int deviceWidthMm = (int) (deviceWidth / 100f);
int deviceHeightMm = (int) (deviceHeight / 100f);

com.aspose.imaging.Rectangle frame = new com.aspose.imaging.Rectangle(0, 0, deviceWidth, deviceHeight);

// إنشاء صورة EMF.
com.aspose.imaging.fileformats.emf.graphics.EmfRecorderGraphics2D graphics =
        new com.aspose.imaging.fileformats.emf.graphics.EmfRecorderGraphics2D(
                frame,
                new com.aspose.imaging.Size(deviceWidth, deviceHeight),
                new com.aspose.imaging.Size(deviceWidthMm, deviceHeightMm));

// ارسم مستطيلًا أسود على حدود الصورة باستخدام قلم أسود بعرض بكسل واحد.
graphics.drawRectangle(new com.aspose.imaging.Pen(com.aspose.imaging.Color.getBlack(), 1), 0, 0, deviceWidth, deviceHeight);

// املأ مستطيلًا بلون الدخان الأبيض.
graphics.fillRectangle(
        new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getWhiteSmoke()),
        new com.aspose.imaging.Rectangle(10, 10, 580, 380));

// ارسم خطين قطريين باستخدام قلم أخضر داكن بعرض بكسل واحد.
graphics.drawLine(new com.aspose.imaging.Pen(com.aspose.imaging.Color.getDarkGreen(), 1), 0, 0, deviceWidth, deviceHeight);
graphics.drawLine(new com.aspose.imaging.Pen(com.aspose.imaging.Color.getDarkGreen(), 1), 0, deviceHeight, deviceWidth, 0);

// ارسم قوسًا داخل المستطيل {0, 0, 200, 200} باستخدام قلم أزرق بعرض بكسلين.
graphics.drawArc(new com.aspose.imaging.Pen(com.aspose.imaging.Color.getBlue(), 2), new com.aspose.imaging.Rectangle(0, 0, 200, 200), 90, 270);

// املأ قوسًا
graphics.fillPie(
        new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getLightSkyBlue()),
        new com.aspose.imaging.Rectangle(0, 0, 150, 150), 90, 270);

// ارسم منحنى بيزيه مكعب باستخدام قلم أحمر بعرض بكسلين.
graphics.drawCubicBezier(new com.aspose.imaging.Pen(com.aspose.imaging.Color.getRed(), 2),
        new com.aspose.imaging.Point(0, 0),
        new com.aspose.imaging.Point(200, 133),
        new com.aspose.imaging.Point(400, 166),
        new com.aspose.imaging.Point(600, 400));

// ارسم صورة نقطية بالحجم المحدد في الموقع المحدد.
// يتم تحجيم الصورة لتناسب المستطيل المطلوب.
com.aspose.imaging.RasterImage imageToDraw = (com.aspose.imaging.RasterImage) com.aspose.imaging.Image.load(dir + "sample.bmp");
try {
    graphics.drawImage(imageToDraw,
            new com.aspose.imaging.Rectangle(400, 200, 100, 50),
            new com.aspose.imaging.Rectangle(0, 0, deviceWidth, deviceHeight),
            com.aspose.imaging.GraphicsUnit.Pixel);
} finally {
    imageToDraw.dispose();
}

// ارسم سلسلة نصية
graphics.drawString("Hello World!",
        new com.aspose.imaging.Font("Arial", 48, com.aspose.imaging.FontStyle.Regular),
        com.aspose.imaging.Color.getDarkRed(), 200, 300);

// إنشاء مسار للتعبئة
com.aspose.imaging.Figure figureToFill = new com.aspose.imaging.Figure();
figureToFill.setClosed(true);

com.aspose.imaging.GraphicsPath pathToFill = new com.aspose.imaging.GraphicsPath();
pathToFill.addFigure(figureToFill);

figureToFill.addShapes(new com.aspose.imaging.Shape[]
        {
                new com.aspose.imaging.shapes.ArcShape(new com.aspose.imaging.RectangleF(400, 0, 200, 100), 45, 300),
                new com.aspose.imaging.shapes.BezierShape(
                        new com.aspose.imaging.PointF[]
                                {
                                        new com.aspose.imaging.PointF(300, 200),
                                        new com.aspose.imaging.PointF(400, 200),
                                        new com.aspose.imaging.PointF(500, 100),
                                        new com.aspose.imaging.PointF(600, 200),
                                }),
                new com.aspose.imaging.shapes.PolygonShape(
                        new com.aspose.imaging.PointF[]
                                {
                                        new com.aspose.imaging.PointF(300, 100),
                                }),
                new com.aspose.imaging.shapes.RectangleShape(new com.aspose.imaging.RectangleF(0, 100, 200, 200)),
        });

// املأ المسار باستخدام فرشاة صفراء وقلم أخضر لرسم الحدود.
graphics.fillPath(
        new com.aspose.imaging.Pen(com.aspose.imaging.Color.getGreen(), 2),
        new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getYellow()), pathToFill);

// إنشاء مسار للرسم
com.aspose.imaging.GraphicsPath pathToDraw = new com.aspose.imaging.GraphicsPath();
com.aspose.imaging.Figure figureToDraw = new com.aspose.imaging.Figure();
pathToDraw.addFigure(figureToDraw);

figureToDraw.addShapes(new com.aspose.imaging.Shape[]
        {
                new com.aspose.imaging.shapes.ArcShape(new com.aspose.imaging.RectangleF(200, 200, 200, 200), 0, 360),
        });

// ارسم المسار باستخدام قلم برتقالي بعرض 5 بكسلات.
graphics.drawPath(new com.aspose.imaging.Pen(com.aspose.imaging.Color.getOrange(), 5), pathToDraw);

// من أجل تحويل SVG إلى نقطية، نحتاج إلى تحديد خيارات التحويل النقطي.
com.aspose.imaging.imageoptions.SvgRasterizationOptions rasterizationOptions = new com.aspose.imaging.imageoptions.SvgRasterizationOptions();
com.aspose.imaging.imageoptions.PngOptions saveOptions = new com.aspose.imaging.imageoptions.PngOptions();
saveOptions.setVectorRasterizationOptions(rasterizationOptions);

// احصل على صورة WMF النهائية التي تشمل جميع أوامر الرسم.
com.aspose.imaging.fileformats.emf.EmfImage emfImage = graphics.endRecording();
try {
    emfImage.save(dir + "test.output.emf");
} finally {
    emfImage.dispose();
}

MetafileRecorderGraphics2D()

public MetafileRecorderGraphics2D()

getClip()

public Region getClip()

يحصل أو يعيّن Region التي تحدّ منطقة الرسم لهذا Graphics

Returns: Region - The clip region.

setClip(Region value)

public void setClip(Region value)

يحصل أو يعيّن Region التي تحدّ منطقة الرسم لهذا Graphics

Parameters:

معاملنوعالوصف
valueRegionمنطقة القص.

getClipBounds()

public RectangleF getClipBounds()

يحصل على حدود القص.

Returns: RectangleF - The clip bounds.

getBackgroundColor()

public Color getBackgroundColor()

يحصل على لون الخلفية.

Returns: Color - The color of the background.

setBackgroundColor(Color value)

public void setBackgroundColor(Color value)

يعيّن لون الخلفية.

Parameters:

معاملنوعالوصف
valueColorلون الخلفية.

clear()

public void clear()

يمسح حالة كائن الرسومات

drawArc(Pen pen, Rectangle rect, float startAngle, float arcAngle)

public void drawArc(Pen pen, Rectangle rect, float startAngle, float arcAngle)

يرسم قوسًا يمثل جزءًا من إهليلج محدد بواسطة بنية Rectangle.

Parameters:

معاملنوعالوصف
penPenالقلم الذي يحدد اللون والعرض والنمط للشكل.
rectRectangleحدود القطع الناقص.
startAnglefloatالزاوية بالدرجات المقاسة باتجاه عقارب الساعة من محور x إلى نقطة بدء القوس.
arcAnglefloatالزاوية بالدرجات مقاسة باتجاه عقارب الساعة من المعامل startAngle إلى نقطة النهاية للقوس.

drawCubicBezier(Pen pen, Point pt1, Point pt2, Point pt3, Point pt4)

public void drawCubicBezier(Pen pen, Point pt1, Point pt2, Point pt3, Point pt4)

يرسم منحنى بيزيه مكعب.

Parameters:

معاملنوعالوصف
penPenالقلم الذي يحدد اللون والعرض والنمط للشكل.
pt1Pointنقطة البداية للمنحنى.
pt2Pointنقطة التحكم الأولى للمنحنى.
pt3Pointنقطة التحكم الثانية للمنحنى.
pt4Pointنقطة النهاية للمنحنى.

drawPolyCubicBezier(Pen pen, Point[] points)

public void drawPolyCubicBezier(Pen pen, Point[] points)

يرسم بيزيه مكعب متعدد.

Parameters:

معاملنوعالوصف
penPenالقلم الذي يحدد اللون والعرض والنمط للشكل.
pointsPoint[]النقاط.

drawEllipse(Pen pen, Rectangle rect)

public void drawEllipse(Pen pen, Rectangle rect)

يرسم الإهليلج.

Parameters:

معاملنوعالوصف
penPenالقلم الذي يحدد اللون والعرض والنمط للشكل.
rectRectangleحدود القطع الناقص.

fillEllipse(Brush brush, Rectangle rect)

public void fillEllipse(Brush brush, Rectangle rect)

يملىء الإهليلج.

Parameters:

معاملنوعالوصف
brushBrushالفرشاة التي تحدد خصائص التعبئة.
rectRectangleحدود القطع الناقص.

drawImage(RasterImage image, Point location)

public void drawImage(RasterImage image, Point location)

يرسم الصورة المحددة، باستخدام حجمها الفيزيائي الأصلي، في الموقع المحدد.

Parameters:

معاملنوعالوصف
imageRasterImageالصورة التي سيتم رسمها.
locationPointموقع الزاوية العليا اليسرى للصورة المرسومة.

drawImage(byte[] imageBytes, Rectangle destRect, int srcUnit)

public final void drawImage(byte[] imageBytes, Rectangle destRect, int srcUnit)

يرسم الصورة.

Parameters:

معاملنوعالوصف
imageBytesbyte[]بايتات الصورة.
destRectRectangleمستطيل الوجهة.
srcUnitintوحدة المصدر.

drawImage(InputStream stream, Rectangle destRect, int srcUnit)

public final void drawImage(InputStream stream, Rectangle destRect, int srcUnit)

يرسم الصورة.

Parameters:

معاملنوعالوصف
التدفقjava.io.InputStreamالمجرى.
destRectRectangleمستطيل الوجهة.
srcUnitintوحدة المصدر.

drawImage(RasterImage image, Rectangle destRect, Rectangle srcRect, int srcUnit)

public void drawImage(RasterImage image, Rectangle destRect, Rectangle srcRect, int srcUnit)

يرسم الجزء المحدد من الصورة المحددة في الموقع المحدد وبالحجم المحدد.

Parameters:

معاملنوعالوصف
imageRasterImageالصورة التي سيتم رسمها.
destRectRectangleهيكل المستطيل الذي يحدد موقع وحجم الصورة المرسومة. يتم تحجيم الصورة لتناسب المستطيل.
srcRectRectangleهيكل المستطيل الذي يحدد الجزء من كائن الصورة الذي سيتم رسمه.
srcUnitintوحدات القياس المستخدمة بواسطة معامل srcRect.

drawLine(Pen pen, int x1, int y1, int x2, int y2)

public void drawLine(Pen pen, int x1, int y1, int x2, int y2)

يرسم الخط.

Parameters:

معاملنوعالوصف
penPenالقلم الذي يحدد اللون والعرض والنمط للشكل.
x1intالإحداثي السيني للنقطة الأولى.
y1intالإحداثي الصادي للنقطة الأولى.
x2intالإحداثي السيني للنقطة الثانية.
y2intالإحداثي الصادي للنقطة الثانية.

drawLine(Pen pen, Point pt1, Point pt2)

public void drawLine(Pen pen, Point pt1, Point pt2)

يرسم الخط.

Parameters:

معاملنوعالوصف
penPenالقلم الذي يحدد اللون والعرض والنمط للشكل.
pt1Pointالنقطة الأولى.
pt2Pointالنقطة الثانية.

drawPolyline(Pen pen, Point[] points)

public void drawPolyline(Pen pen, Point[] points)

يرسم الخط المتعدد.

Parameters:

معاملنوعالوصف
penPenالقلم الذي يحدد اللون والعرض والنمط للشكل.
pointsPoint[]النقاط.

drawPath(Pen pen, GraphicsPath path)

public void drawPath(Pen pen, GraphicsPath path)

يرسم المسار.

Parameters:

معاملنوعالوصف
penPenالقلم الذي يحدد اللون والعرض والنمط للشكل.
pathGraphicsPathالمسار للرسم.

fillPath(Pen pen, Brush brush, GraphicsPath path)

public void fillPath(Pen pen, Brush brush, GraphicsPath path)

يملىء المسار.

Parameters:

معاملنوعالوصف
penPenالقلم الذي يحدد اللون والعرض والنمط للشكل.
brushBrushالفرشاة التي تحدد خصائص التعبئة.
pathGraphicsPathالمسار للتعبئة.

drawPie(Pen pen, Rectangle rect, float startAngle, float sweepAngle)

public void drawPie(Pen pen, Rectangle rect, float startAngle, float sweepAngle)

يرسم الفطيرة.

Parameters:

معاملنوعالوصف
penPenالقلم الذي يحدد اللون والعرض والنمط للشكل.
rectRectangleحدود القطع الناقص.
startAnglefloatالزاوية بالدرجات المقاسة باتجاه عقارب الساعة من محور x إلى نقطة بدء القوس.
sweepAnglefloatالزاوية بالدرجات مقاسة باتجاه عقارب الساعة من المعامل startAngle إلى نقطة النهاية للقوس.

fillPie(Brush brush, Rectangle rect, float startAngle, float sweepAngle)

public void fillPie(Brush brush, Rectangle rect, float startAngle, float sweepAngle)

يملأ الفطيرة.

Parameters:

معاملنوعالوصف
brushBrushالفرشاة التي تحدد خصائص التعبئة.
rectRectangleحدود القطع الناقص.
startAnglefloatالزاوية بالدرجات المقاسة باتجاه عقارب الساعة من محور x إلى نقطة بدء القوس.
sweepAnglefloatالزاوية بالدرجات مقاسة باتجاه عقارب الساعة من المعامل startAngle إلى نقطة النهاية للقوس.

drawPolygon(Pen pen, Point[] points)

public void drawPolygon(Pen pen, Point[] points)

يرسم المضلع.

Parameters:

معاملنوعالوصف
penPenالقلم الذي يحدد اللون والعرض والنمط للشكل.
pointsPoint[]النقاط.

fillPolygon(Brush brush, Point[] points)

public void fillPolygon(Brush brush, Point[] points)

يملأ المضلع.

Parameters:

معاملنوعالوصف
brushBrushالفرشاة التي تحدد خصائص التعبئة.
pointsPoint[]النقاط.

fillPolygon(Brush brush, Point[] points, int fillMode)

public void fillPolygon(Brush brush, Point[] points, int fillMode)

يملأ المضلع.

Parameters:

معاملنوعالوصف
brushBrushالفرشاة التي تحدد خصائص التعبئة.
pointsPoint[]النقاط.
fillModeintوضع التعبئة.

drawRectangle(Pen pen, int x, int y, int width, int height)

public void drawRectangle(Pen pen, int x, int y, int width, int height)

يرسم المستطيل.

Parameters:

معاملنوعالوصف
penPenالقلم الذي يحدد اللون والعرض والنمط للشكل.
سintالإحداثي السيني للزاوية العلوية اليسرى للمستطيل المراد رسمه.
صintالإحداثي الصادي للزاوية العلوية اليسرى للمستطيل المراد رسمه.
العرضintعرض المستطيل المراد رسمه.
الارتفاعintارتفاع المستطيل المراد رسمه.

drawRectangle(Pen pen, Rectangle rectangle)

public void drawRectangle(Pen pen, Rectangle rectangle)

يرسم المستطيل.

Parameters:

معاملنوعالوصف
penPenالقلم الذي يحدد اللون والعرض والنمط للشكل.
rectangleRectangleالمستطيل المراد رسمه.

fillRectangle(Brush brush, Rectangle rectangle)

public void fillRectangle(Brush brush, Rectangle rectangle)

يملأ المستطيل.

Parameters:

معاملنوعالوصف
brushBrushالفرشاة التي تحدد خصائص التعبئة.
rectangleRectangleالمستطيل المراد تعبئته.

drawString(String string, Font font, Color color, int x, int y)

public void drawString(String string, Font font, Color color, int x, int y)

يرسم النص.

Parameters:

معاملنوعالوصف
سلسلةjava.lang.Stringالسلسلة.
fontFontالخط الذي يحدد تنسيق النص للسلسلة.
colorColorلون النص.
سintالإحداثي السيني للزاوية العلوية اليسرى للنص المرسوم.
صintالإحداثي الصادي للزاوية العلوية اليسرى للنص المرسوم.

Example: This example shows how to load a EMF image from a file and draw a text string over it.

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

com.aspose.imaging.fileformats.emf.EmfImage emfImage = (com.aspose.imaging.fileformats.emf.EmfImage) com.aspose.imaging.Image.load(dir + "test.emf");
try {
    com.aspose.imaging.fileformats.emf.graphics.EmfRecorderGraphics2D graphics =
            com.aspose.imaging.fileformats.emf.graphics.EmfRecorderGraphics2D.fromEmfImage(emfImage);

    // أولاً، احصل على حجم الصورة
    int width = emfImage.getWidth();
    int height = emfImage.getHeight();

    // ثانياً، احسب تحويلًا لوضع سلسلة نصية على القطر الرئيسي للصورة -
    // من الزاوية العليا اليسرى إلى الزاوية السفلى اليمنى.
    float emFontSize = 96f;
    float d = (float) java.lang.Math.sqrt(width * width + height * height);
    float scaleFactor = d / (emFontSize * 5f);

    float tan = ((float) height) / width;
    double radians = java.lang.Math.atan(tan);
    double degrees = (180 * radians) / java.lang.Math.PI;

    com.aspose.imaging.Matrix transform = new com.aspose.imaging.Matrix();
    transform.rotate((float) degrees);
    transform.scale(scaleFactor, scaleFactor);

    // ثم، اضبط التحويل.
    graphics.setTransform(transform);

    // أخيرًا، ضع علامة مائية (سلسلة نصية باللون الوردي) على القطر الرئيسي.
    graphics.drawString("WATERMARK", new com.aspose.imaging.Font(
                    "Courier New", emFontSize),
            com.aspose.imaging.Color.getLightPink(), 0, 0/*, (float)degrees*/);

    // احفظ الصورة مع العلامة المائية إلى ملف EMF آخر.
    com.aspose.imaging.fileformats.emf.EmfImage scaledEmfImage = graphics.endRecording();
    try {
        scaledEmfImage.save(dir + "test.scaled.emf");
    } finally {
        scaledEmfImage.dispose();
    }
} finally {
    emfImage.dispose();
}

drawString(String string, Font font, Color color, int x, int y, float angle)

public void drawString(String string, Font font, Color color, int x, int y, float angle)

يرسم النص.

Parameters:

معاملنوعالوصف
سلسلةjava.lang.Stringالسلسلة.
fontFontالخط الذي يحدد تنسيق النص للسلسلة.
colorColorلون النص.
سintالإحداثي السيني للزاوية العلوية اليسرى للنص المرسوم.
صintالإحداثي الصادي للزاوية العلوية اليسرى للنص المرسوم.
anglefloatالزاوية بالدرجات بين متجه الإزاحة ومحور x للجهاز. متجه الإزاحة موازٍ لخط الأساس لسطر النص.

excludeClip(Rectangle rect)

public void excludeClip(Rectangle rect)

يقوم بتحديث منطقة القص لهذا الكائن Graphics لاستبعاد المنطقة المحددة بواسطة بنية Rectangle.

Parameters:

معاملنوعالوصف
rectRectangleهيكل المستطيل الذي يحدد المستطيل المستثنى من منطقة القص.

excludeClip(Region region)

public void excludeClip(Region region)

يقوم بتحديث منطقة القص لهذا الكائن Graphics لاستبعاد المنطقة المحددة بواسطة Region.

Parameters:

معاملنوعالوصف
regionRegionالمنطقة التي تحدد المنطقة المستثناة من منطقة القص.

intersectClip(RectangleF rect)

public void intersectClip(RectangleF rect)

يقوم بتحديث منطقة القص لهذا الكائن Graphics لتصبح تقاطع منطقة القص الحالية والبنية المحددة Rectangle.

Parameters:

معاملنوعالوصف
rectRectangleFهيكل المستطيل للتقاطع مع منطقة القص الحالية.

intersectClip(Region region)

public void intersectClip(Region region)

يقوم بتحديث منطقة القص لهذا الكائن Graphics لتصبح تقاطع منطقة القص الحالية والـ Region المحدد.

Parameters:

معاملنوعالوصف
regionRegionالمنطقة للتقاطع مع المنطقة الحالية.

resetClip()

public void resetClip()

يعيد ضبط القص.

multiplyTransform(Matrix matrix)

public void multiplyTransform(Matrix matrix)

يضرب التحويل العالمي لهذا الكائن Graphics بالمصفوفة المحددة.

Parameters:

معاملنوعالوصف
matrixMatrixالمصفوفة التي تضرب التحويل العالمي.

multiplyTransform(Matrix matrix, int order)

public void multiplyTransform(Matrix matrix, int order)

يضرب التحويل العالمي لهذا الكائن Graphics بالمصفوفة المحددة بالترتيب المحدد.

Parameters:

معاملنوعالوصف
matrixMatrixالمصفوفة التي تضرب التحويل العالمي.
orderintترتيب الضرب.

translateTransform(float x, float y)

public void translateTransform(float x, float y)

يغير أصل نظام الإحداثيات بإضافة الإزاحة المحددة مسبقًا إلى مصفوفة التحويل لهذا الكائن Graphics.

Parameters:

معاملنوعالوصف
سfloatالإحداثي السيني للترجمة.
صfloatالإحداثي الصادي للترجمة.

translateTransform(float x, float y, int order)

public void translateTransform(float x, float y, int order)

يغير أصل نظام الإحداثيات بتطبيق الإزاحة المحددة على مصفوفة التحويل لهذا الكائن Graphics بالترتيب المحدد.

Parameters:

معاملنوعالوصف
سfloatالإحداثي السيني للترجمة.
صfloatالإحداثي الصادي للترجمة.
orderintيحدد ما إذا كان الإزاحة تُضاف في البداية أم في النهاية إلى مصفوفة التحويل.

rotateTransform(float angle)

public void rotateTransform(float angle)

يطبق الدوران المحدد على مصفوفة التحويل لهذا الكائن Graphics.

Parameters:

معاملنوعالوصف
anglefloatزاوية الدوران بالدرجات.

rotateTransform(float angle, PointF center, int order)

public void rotateTransform(float angle, PointF center, int order)

يطبق الدوران المحدد على مصفوفة التحويل لهذا الكائن Graphics بالترتيب المحدد.

Parameters:

معاملنوعالوصف
anglefloatزاوية الدوران بالدرجات.
centerPointFمركز الدوران.
orderintيحدد ما إذا كان الدوران يُضاف في النهاية أم في البداية إلى تحويل المصفوفة.

scaleTransform(float sx, float sy)

public void scaleTransform(float sx, float sy)

يطبق عملية التحجيم المحددة على مصفوفة التحويل لهذا الكائن Graphics بإضافتها مسبقًا إلى مصفوفة التحويل الخاصة بالكائن.

Parameters:

معاملنوعالوصف
sxfloatعامل المقياس في الاتجاه x.
syfloatعامل المقياس في الاتجاه y.

scaleTransform(float sx, float sy, int order)

public void scaleTransform(float sx, float sy, int order)

يطبق عملية التحجيم المحددة على مصفوفة التحويل لهذا الكائن Graphics بالترتيب المحدد.

Parameters:

معاملنوعالوصف
sxfloatعامل المقياس في الاتجاه x.
syfloatعامل المقياس في الاتجاه y.
orderintيحدد ما إذا كانت عملية التحجيم تُضاف في البداية أم في النهاية إلى مصفوفة التحويل.

getTransform()

public Matrix getTransform()

يحصل على التحويل العالمي.

Returns: Matrix - The transform matrix.

setTransform(Matrix transform)

public void setTransform(Matrix transform)

يضبط التحويل.

Parameters:

معاملنوعالوصف
transformMatrixمصفوفة التحويل الجديدة.

Example: This example shows how to load a EMF image from a file and draw a text string over it.

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

com.aspose.imaging.fileformats.emf.EmfImage emfImage = (com.aspose.imaging.fileformats.emf.EmfImage) com.aspose.imaging.Image.load(dir + "test.emf");
try {
    com.aspose.imaging.fileformats.emf.graphics.EmfRecorderGraphics2D graphics =
            com.aspose.imaging.fileformats.emf.graphics.EmfRecorderGraphics2D.fromEmfImage(emfImage);

    // أولاً، احصل على حجم الصورة
    int width = emfImage.getWidth();
    int height = emfImage.getHeight();

    // ثانياً، احسب تحويلًا لوضع سلسلة نصية على القطر الرئيسي للصورة -
    // من الزاوية العليا اليسرى إلى الزاوية السفلى اليمنى.
    float emFontSize = 96f;
    float d = (float) java.lang.Math.sqrt(width * width + height * height);
    float scaleFactor = d / (emFontSize * 5f);

    float tan = ((float) height) / width;
    double radians = java.lang.Math.atan(tan);
    double degrees = (180 * radians) / java.lang.Math.PI;

    com.aspose.imaging.Matrix transform = new com.aspose.imaging.Matrix();
    transform.rotate((float) degrees);
    transform.scale(scaleFactor, scaleFactor);

    // ثم، اضبط التحويل.
    graphics.setTransform(transform);

    // أخيرًا، ضع علامة مائية (سلسلة نصية باللون الوردي) على القطر الرئيسي.
    graphics.drawString("WATERMARK", new com.aspose.imaging.Font(
                    "Courier New", emFontSize),
            com.aspose.imaging.Color.getLightPink(), 0, 0/*, (float)degrees*/);

    // احفظ الصورة مع العلامة المائية إلى ملف EMF آخر.
    com.aspose.imaging.fileformats.emf.EmfImage scaledEmfImage = graphics.endRecording();
    try {
        scaledEmfImage.save(dir + "test.scaled.emf");
    } finally {
        scaledEmfImage.dispose();
    }
} finally {
    emfImage.dispose();
}