قص صفحات PDF برمجياً C#

الحصول على خصائص الصفحة

كل صفحة في ملف PDF تحتوي على عدد من الخصائص، مثل العرض، الارتفاع، صندوق النزيف، صندوق القص وصندوق القطع. يتيح لك Aspose.PDF الوصول إلى هذه الخصائص.

  • صندوق الوسائط: صندوق الوسائط هو أكبر صندوق صفحة. يتوافق مع حجم الصفحة (مثل A4، A5، US Letter، إلخ) الذي تم اختياره عند طباعة المستند إلى PostScript أو PDF. بعبارة أخرى، يحدد صندوق الوسائط الحجم الفعلي للوسائط التي يتم عرض مستند PDF عليها أو طباعته.
  • صندوق النزيف: إذا كان المستند يحتوي على نزيف، فسيكون لدى PDF أيضاً صندوق نزيف. النزيف هو مقدار اللون (أو العمل الفني) الذي يمتد إلى ما وراء حافة الصفحة. يُستخدم لضمان أنه عند طباعة المستند وقطعه إلى الحجم (“قصه”)، سيصل الحبر إلى حافة الصفحة. حتى إذا تم قص الصفحة بشكل غير دقيق - قطعها قليلاً بعيداً عن علامات القص - فلن تظهر أي حواف بيضاء على الصفحة.
  • صندوق القطع: يشير صندوق القطع إلى الحجم النهائي للمستند بعد الطباعة والقص.
  • صندوق الفن: صندوق الفن هو الصندوق المرسوم حول المحتويات الفعلية للصفحات في مستنداتك. يُستخدم هذا الصندوق عند استيراد مستندات PDF في تطبيقات أخرى.
  • صندوق القص: صندوق القص هو حجم “الصفحة” الذي يتم عرض مستند PDF الخاص بك به في Adobe Acrobat. في العرض العادي، يتم عرض محتويات صندوق القص فقط في Adobe Acrobat. للحصول على أوصاف مفصلة لهذه الخصائص، اقرأ مواصفات Adobe.Pdf، وخاصة 10.10.1 حدود الصفحة.
  • Page.Rect: التقاطع (المستطيل المرئي عادةً) بين MediaBox وDropBox. توضح الصورة أدناه هذه الخصائص. للحصول على مزيد من التفاصيل، يرجى زيارة هذه الصفحة.

مقتطف الشيفرة التالي يعمل أيضاً مع مكتبة Aspose.PDF.Drawing.

يوضح المقتطف أدناه كيفية قص الصفحة:

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void CropPage()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_Pages();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "CropPageInput.pdf"))
    {
        Console.WriteLine(document.Pages[1].CropBox);
        Console.WriteLine(document.Pages[1].TrimBox);
        Console.WriteLine(document.Pages[1].ArtBox);
        Console.WriteLine(document.Pages[1].BleedBox);
        Console.WriteLine(document.Pages[1].MediaBox);
        // Create new Box rectangle
        var newBox = new Rectangle(200, 220, 2170, 1520);
        document.Pages[1].CropBox = newBox;
        document.Pages[1].TrimBox = newBox;
        document.Pages[1].ArtBox = newBox;
        document.Pages[1].BleedBox = newBox;
        // Save PDF document
        document.Save(dataDir + "CropPage_out.pdf");  
    }
}

في هذا المثال، استخدمنا ملف عينة هنا. في البداية، تبدو صفحتنا كما هو موضح في الشكل 1.

بعد التغيير، ستبدو الصفحة كما في الشكل 2.