MetafileRecorderGraphics2D
Inheritance: java.lang.Object
public abstract class MetafileRecorderGraphics2D
رسومات مسجل ملفات ميتا
المنشئات
| المنشئ | الوصف |
|---|---|
| MetafileRecorderGraphics2D() |
الطرق
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:
| معامل | نوع | الوصف |
|---|---|---|
| value | Region | منطقة القص. |
getClipBounds()
public RectangleF getClipBounds()
يحصل على clip bounds.
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:
| معامل | نوع | الوصف |
|---|---|---|
| value | Color | لون الخلفية. |
clear()
public void clear()
يمسح حالة كائن graphics
drawArc(Pen pen, Rectangle rect, float startAngle, float arcAngle)
public void drawArc(Pen pen, Rectangle rect, float startAngle, float arcAngle)
يرسم قوسًا يمثل جزءًا من إهليلج محدد بواسطة بنية Rectangle.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| pen | Pen | قلم يحدد اللون والعرض والنمط للشكل. |
| rect | Rectangle | حدود القطع الناقص. |
| startAngle | float | الزاوية بالدرجات مقاسة باتجاه عقارب الساعة من محور x إلى نقطة البداية للقوس. |
| arcAngle | float | الزاوية بالدرجات مقاسة باتجاه عقارب الساعة من معلمة 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:
| معامل | نوع | الوصف |
|---|---|---|
| pen | Pen | قلم يحدد اللون والعرض والنمط للشكل. |
| pt1 | Point | نقطة البداية للمنحنى. |
| pt2 | Point | نقطة التحكم الأولى للمنحنى. |
| pt3 | Point | نقطة التحكم الثانية للمنحنى. |
| pt4 | Point | نقطة النهاية للمنحنى. |
drawPolyCubicBezier(Pen pen, Point[] points)
public void drawPolyCubicBezier(Pen pen, Point[] points)
يرسم منحنى بيزير مكعب متعدد.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| pen | Pen | قلم يحدد اللون والعرض والنمط للشكل. |
| points | Point[] | النقاط. |
drawEllipse(Pen pen, Rectangle rect)
public void drawEllipse(Pen pen, Rectangle rect)
يرسم الإهليلج.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| pen | Pen | قلم يحدد اللون والعرض والنمط للشكل. |
| rect | Rectangle | حدود القطع الناقص. |
fillEllipse(Brush brush, Rectangle rect)
public void fillEllipse(Brush brush, Rectangle rect)
يملأ الإهليلج.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| brush | Brush | فرشاة تحدد خصائص التعبئة. |
| rect | Rectangle | حدود القطع الناقص. |
drawImage(RasterImage image, Point location)
public void drawImage(RasterImage image, Point location)
يرسم الصورة المحددة، باستخدام حجمها الفيزيائي الأصلي، في الموقع المحدد.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| image | RasterImage | الصورة المراد رسمها. |
| location | Point | موقع الزاوية العلوية اليسرى للصورة المرسومة. |
drawImage(byte[] imageBytes, Rectangle destRect, int srcUnit)
public final void drawImage(byte[] imageBytes, Rectangle destRect, int srcUnit)
يرسم الصورة.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| imageBytes | byte[] | بايتات الصورة. |
| destRect | Rectangle | مستطيل الوجهة. |
| srcUnit | int | وحدة المصدر. |
drawImage(InputStream stream, Rectangle destRect, int srcUnit)
public final void drawImage(InputStream stream, Rectangle destRect, int srcUnit)
يرسم الصورة.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| تدفق | java.io.InputStream | التدفق. |
| destRect | Rectangle | مستطيل الوجهة. |
| srcUnit | int | وحدة المصدر. |
drawImage(RasterImage image, Rectangle destRect, Rectangle srcRect, int srcUnit)
public void drawImage(RasterImage image, Rectangle destRect, Rectangle srcRect, int srcUnit)
يرسم الجزء المحدد من الصورة المحددة في الموقع المحدد وبالحجم المحدد.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| image | RasterImage | الصورة المراد رسمها. |
| destRect | Rectangle | هيكل المستطيل الذي يحدد موقع وحجم الصورة المرسومة. يتم تحجيم الصورة لتناسب المستطيل. |
| srcRect | Rectangle | هيكل المستطيل الذي يحدد الجزء من كائن الصورة المراد رسمه. |
| srcUnit | int | وحدات القياس المستخدمة بواسطة معلمة 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:
| معامل | نوع | الوصف |
|---|---|---|
| pen | Pen | قلم يحدد اللون والعرض والنمط للشكل. |
| x1 | int | الإحداثي السيني للنقطة الأولى. |
| y1 | int | الإحداثي الصادي للنقطة الأولى. |
| x2 | int | الإحداثي السيني للنقطة الثانية. |
| y2 | int | الإحداثي الصادي للنقطة الثانية. |
drawLine(Pen pen, Point pt1, Point pt2)
public void drawLine(Pen pen, Point pt1, Point pt2)
يرسم الخط.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| pen | Pen | قلم يحدد اللون والعرض والنمط للشكل. |
| pt1 | Point | النقطة الأولى. |
| pt2 | Point | النقطة الثانية. |
drawPolyline(Pen pen, Point[] points)
public void drawPolyline(Pen pen, Point[] points)
يرسم الخط المتعدد.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| pen | Pen | قلم يحدد اللون والعرض والنمط للشكل. |
| points | Point[] | النقاط. |
drawPath(Pen pen, GraphicsPath path)
public void drawPath(Pen pen, GraphicsPath path)
يرسم المسار.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| pen | Pen | قلم يحدد اللون والعرض والنمط للشكل. |
| path | GraphicsPath | المسار للرسم. |
fillPath(Pen pen, Brush brush, GraphicsPath path)
public void fillPath(Pen pen, Brush brush, GraphicsPath path)
يملأ المسار.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| pen | Pen | قلم يحدد اللون والعرض والنمط للشكل. |
| brush | Brush | فرشاة تحدد خصائص التعبئة. |
| path | GraphicsPath | المسار للتعبئة. |
drawPie(Pen pen, Rectangle rect, float startAngle, float sweepAngle)
public void drawPie(Pen pen, Rectangle rect, float startAngle, float sweepAngle)
يرسم الفطيرة.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| pen | Pen | قلم يحدد اللون والعرض والنمط للشكل. |
| rect | Rectangle | حدود القطع الناقص. |
| startAngle | float | الزاوية بالدرجات مقاسة باتجاه عقارب الساعة من محور x إلى نقطة البداية للقوس. |
| sweepAngle | float | الزاوية بالدرجات مقاسة باتجاه عقارب الساعة من معلمة startAngle إلى نقطة النهاية للقوس. |
fillPie(Brush brush, Rectangle rect, float startAngle, float sweepAngle)
public void fillPie(Brush brush, Rectangle rect, float startAngle, float sweepAngle)
يملأ الفطيرة.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| brush | Brush | فرشاة تحدد خصائص التعبئة. |
| rect | Rectangle | حدود القطع الناقص. |
| startAngle | float | الزاوية بالدرجات مقاسة باتجاه عقارب الساعة من محور x إلى نقطة البداية للقوس. |
| sweepAngle | float | الزاوية بالدرجات مقاسة باتجاه عقارب الساعة من معلمة startAngle إلى نقطة النهاية للقوس. |
drawPolygon(Pen pen, Point[] points)
public void drawPolygon(Pen pen, Point[] points)
يرسم المضلع.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| pen | Pen | قلم يحدد اللون والعرض والنمط للشكل. |
| points | Point[] | النقاط. |
fillPolygon(Brush brush, Point[] points)
public void fillPolygon(Brush brush, Point[] points)
يملأ المضلع.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| brush | Brush | فرشاة تحدد خصائص التعبئة. |
| points | Point[] | النقاط. |
fillPolygon(Brush brush, Point[] points, int fillMode)
public void fillPolygon(Brush brush, Point[] points, int fillMode)
يملأ المضلع.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| brush | Brush | فرشاة تحدد خصائص التعبئة. |
| points | Point[] | النقاط. |
| fillMode | int | وضع التعبئة. |
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:
| معامل | نوع | الوصف |
|---|---|---|
| pen | Pen | قلم يحدد اللون والعرض والنمط للشكل. |
| x | int | الإحداثي السيني للزاوية العليا اليسرى للمستطيل المراد رسمه. |
| y | int | الإحداثي الصادي للزاوية العليا اليسرى للمستطيل المراد رسمه. |
| width | int | عرض المستطيل المراد رسمه. |
| height | int | ارتفاع المستطيل المراد رسمه. |
drawRectangle(Pen pen, Rectangle rectangle)
public void drawRectangle(Pen pen, Rectangle rectangle)
يرسم المستطيل.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| pen | Pen | قلم يحدد اللون والعرض والنمط للشكل. |
| rectangle | Rectangle | المستطيل المراد رسمه. |
fillRectangle(Brush brush, Rectangle rectangle)
public void fillRectangle(Brush brush, Rectangle rectangle)
يملأ المستطيل.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| brush | Brush | فرشاة تحدد خصائص التعبئة. |
| rectangle | Rectangle | المستطيل المراد تعبئته. |
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 | السلسلة. |
| font | Font | الخط الذي يحدد تنسيق النص للسلسلة. |
| color | Color | لون النص. |
| x | int | الإحداثي السيني للزاوية العليا اليسرى للنص المرسوم. |
| y | 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 | السلسلة. |
| font | Font | الخط الذي يحدد تنسيق النص للسلسلة. |
| color | Color | لون النص. |
| x | int | الإحداثي السيني للزاوية العليا اليسرى للنص المرسوم. |
| y | int | الإحداثي الصادي للزاوية العليا اليسرى للنص المرسوم. |
| angle | float | الزاوية بالدرجات بين متجه الإزاحة ومحور x للجهاز. متجه الإزاحة موازٍ لخط الأساس لسطر من النص. |
excludeClip(Rectangle rect)
public void excludeClip(Rectangle rect)
يقوم بتحديث منطقة القص لهذه الرسومات لاستبعاد المنطقة المحددة بواسطة بنية مستطيل.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| rect | Rectangle | بنية المستطيل التي تحدد المستطيل لاستبعاده من منطقة القص. |
excludeClip(Region region)
public void excludeClip(Region region)
يقوم بتحديث منطقة القص لهذه الرسومات لاستبعاد المنطقة المحددة بواسطة منطقة.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| region | Region | المنطقة التي تحدد المنطقة لاستبعاده من منطقة القص. |
intersectClip(RectangleF rect)
public void intersectClip(RectangleF rect)
يقوم بتحديث منطقة القص لهذه الرسومات لتصبح تقاطع منطقة القص الحالية والبنية المستطيلة المحددة.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| rect | RectangleF | بنية المستطيل للتقاطع مع منطقة القص الحالية. |
intersectClip(Region region)
public void intersectClip(Region region)
يقوم بتحديث منطقة القص لهذه الرسومات لتصبح تقاطع منطقة القص الحالية والمنطقة المحددة.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| region | Region | المنطقة للتقاطع مع المنطقة الحالية. |
resetClip()
public void resetClip()
يعيد تعيين القص.
multiplyTransform(Matrix matrix)
public void multiplyTransform(Matrix matrix)
يضرب تحويل العالم لهذه الرسومات بالمصفوفة المحددة.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| matrix | Matrix | المصفوفة التي تضرب تحويل العالم. |
multiplyTransform(Matrix matrix, int order)
public void multiplyTransform(Matrix matrix, int order)
يضرب تحويل العالم لهذه الرسومات بالمصفوفة المحددة بالترتيب المحدد.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| matrix | Matrix | المصفوفة التي تضرب تحويل العالم. |
| الترتيب | int | ترتيب الضرب. |
translateTransform(float x, float y)
public void translateTransform(float x, float y)
يغيّر أصل نظام الإحداثيات بإلحاق الترجمة المحددة إلى مصفوفة التحويل لهذه الرسومات.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| x | float | الإحداثي السيني للترجمة. |
| y | float | الإحداثي الصادي للترجمة. |
translateTransform(float x, float y, int order)
public void translateTransform(float x, float y, int order)
يغيّر أصل نظام الإحداثيات بتطبيق الترجمة المحددة على مصفوفة التحويل لهذه الرسومات بالترتيب المحدد.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| x | float | الإحداثي السيني للترجمة. |
| y | float | الإحداثي الصادي للترجمة. |
| الترتيب | int | يحدد ما إذا كانت الترجمة تُضاف في البداية أو في النهاية إلى مصفوفة التحويل. |
rotateTransform(float angle)
public void rotateTransform(float angle)
يطبق الدوران المحدد على مصفوفة التحويل لهذه الرسومات.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| angle | float | زاوية الدوران بالدرجات. |
rotateTransform(float angle, PointF center, int order)
public void rotateTransform(float angle, PointF center, int order)
يطبق الدوران المحدد على مصفوفة التحويل لهذه الرسومات بالترتيب المحدد.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| angle | float | زاوية الدوران بالدرجات. |
| center | PointF | مركز الدوران. |
| الترتيب | int | يحدد ما إذا كان الدوران يُضاف في النهاية أو يُسبق إلى تحويل المصفوفة. |
scaleTransform(float sx, float sy)
public void scaleTransform(float sx, float sy)
يطبق عملية التحجيم المحددة على مصفوفة التحويل الخاصة بهذا Graphics عن طريق إضافتها في بداية مصفوفة التحويل الخاصة بالكائن.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| sx | float | عامل المقياس في الاتجاه السيني. |
| sy | float | عامل المقياس في الاتجاه الصادي. |
scaleTransform(float sx, float sy, int order)
public void scaleTransform(float sx, float sy, int order)
يطبق عملية التحجيم المحددة على مصفوفة التحويل الخاصة بهذا Graphics بالترتيب المحدد.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| sx | float | عامل المقياس في الاتجاه السيني. |
| sy | float | عامل المقياس في الاتجاه الصادي. |
| الترتيب | int | يحدد ما إذا كانت عملية التحجيم تُسبق أو تُضاف إلى مصفوفة التحويل. |
getTransform()
public Matrix getTransform()
يحصل على تحويل العالم.
Returns: Matrix - The transform matrix.
setTransform(Matrix transform)
public void setTransform(Matrix transform)
يضبط التحويل.
Parameters:
| معامل | نوع | الوصف |
|---|---|---|
| transform | Matrix | مصفوفة التحويل الجديدة. |
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();
}