العمل مع اللوحات (canvases) داخل XPS
قص (clip) وتحويل (transform) اللوحات في ملفات XPS باستخدام C++ API
في ملفات XPS، اللوحة (canvas) هي منطقة مستطيلة على الصفحة يمكن رسم المحتوى المرئي فيها، مثل النصوص والصور والأشكال. وهي تعمل كحاوية لهذه العناصر وتوفر إطارًا لتنظيمها وترتيبها في طبقات. يمكن إعادة استخدام اللوحات في أجزاء مختلفة من المستند أو حتى في مستندات متعددة، مما يوفر طريقة مرنة لتنظيم المحتوى داخل مستند XPS. الخصائص الرئيسية للوحات في ملفات XPS:
- يمكن تداخل اللوحات (canvases) داخل لوحات أخرى، مما يخلق بنية هرمية تتيح تخطيطات (layouts) معقدة وتجميع العناصر.
- يمكن تحويل اللوحات باستخدام عمليات مختلفة، مثل الإزاحة (translation) والتدوير (rotation) والتحجيم (scaling). يتيح ذلك تحديد المواضع وتغيير أحجام المحتوى بمرونة.
- يمكن قص (clip) اللوحات إلى مناطق محددة، مما يحد من المساحة المرئية لمحتوياتها. وهذا مفيد لإنشاء أشكال وتأثيرات معقدة.
- يمكن أن تحتوي اللوحات على عناصر مرئية مختلفة، بما في ذلك تشغيل النصوص (text runs) والفقرات (paragraphs) ومربعات النص (text boxes). كما يمكن أن تحتوي على صور وأشكال هندسية ولوحات أخرى.
إدارة اللوحات في المستندات هي إحدى الميزات التي يوفرها Aspose.Page لـ C++. يعمل هذا الحل مع لغات وصف الصفحات المختلفة، وخاصة XPS.
لتحويل (transform) لوحات ملف XPS، اتبع الدليل أدناه:
- أنشئ ملف XPS باستخدام فئة XpsDocument.
- أنشئ اللوحة الرئيسية المشتركة لجميع عناصر الصفحة باستخدام الطريقة AddCanvas().
- قم بعمل إزاحات يسرى (left) وعلوية (top) في اللوحة الرئيسية باستخدام الطريقة CreateMatrix().
- أنشئ هندسة مسار مستطيل (rectangle path geometry) باستخدام الطريقة CreatePathGeometry().
- أنشئ تعبئة (fill) للمستطيلات باستخدام فئة XpsBrush.
- لإنشاء مستطيل في اللوحة 2 وملئه، استخدم فئة XpsPath.
- لنقل اللوحة 3 لوضع مستطيل جديد أسفل المستطيل السابق، استخدم الطريقة CreateMatrix().
- لنقل هذه اللوحة إلى الجانب الأيمن من الصفحة، استخدم الطريقة Translate().
- لتحجيم (scale) اللوحة 4، استدعِ الطريقة Scale().
- لتدوير اللوحة 5 حول نقطة بمقدار 45 درجة؛ الطريقة RotateAround() مفيدة هنا.
- احفظ مستند XPS المعدَّل باستخدام الطريقة XpsDocument.Save().
تحويل اللوحة (canvas transformation)
لقص (clip) لوحات ملف XPS، اتبع الدليل أدناه:
- أنشئ أو افتح ملف XPS باستخدام فئة XpsDocument.
- أنشئ اللوحة الرئيسية المشتركة لجميع عناصر الصفحة باستخدام الطريقة AddCanvas().
- قم بعمل إزاحات يسرى وعلوية في اللوحة الرئيسية باستخدام الطريقة CreateMatrix().
- أنشئ هندسة مسار مستطيل باستخدام الطريقة CreatePathGeometry().
- أنشئ تعبئة للمستطيلات باستخدام فئة XpsBrush.
- لإضافة لوحة أخرى مع قص (clip) إلى اللوحة الرئيسية، استدعِ الطريقة AddCanvas() مرة أخرى.
- أنشئ هندسة دائرية (circle geometry) للقص باستخدام فئة XpsPathGeometry.
- لإنشاء مستطيل في هذه اللوحة وملئه، استخدم فئة XpsPath.
- أضف لوحة أخرى بالطريقة AddCanvas()، ثم أنشئ مستطيلًا في هذه اللوحة وارسم محيطه (stroke) باستخدام فئة XpsPathGeometry.
- احفظ مستند XPS المعدَّل باستخدام الطريقة XpsDocument.Save().
قص اللوحة (canvas clipping)
XPS ما هو XPS تنسيق الملف
تنسيق XPS (XML Paper Specification) يشبه PDF من حيث كونه تنسيقاً مستقلاً عن النظام. يُنشأ باستخدام HTML وXML، ويُحافظ على مظهر المستند عبر مختلف الأنظمة.