بسم الله الرحمن الرحيم
امتي اخواني اعزائي اصدقائي السلام عليكم ورحمة الله وبركاته
كيف حالكم
ندخل في الدرس بالتركي (نبلش)
اليوم راح تعرف كيف تطبع على ملفات pdf في الحقيقة الطباعة بواسطة الطابعة او الطباعة على ملفات لها صف وحيد وهو Qprinter و Qprinter ونطبع عليها بواسطة Qpainter منطقيا لكي تعرف هذا الموضوع وتبقى معلومة عامة معك , أي صف يرث من QpaintDevice تستطيع ان ترسم فوقه بلا استثناء.
اسهلها عليكم فقط الصفوف التالية ترث من الأخير أي تستطيع ان ترسم فوقها
QPixmap QPicture QImage QPrinter Qwidget Qbitmap
سوف يسألني شخص يقول كيف ترسم على عناصر GraphicsView او الأزرار او او ......
الجواب:
جميع هذه العناصر ترث من Qwidget صراحة انا لا اريد ان اعقد عليكم الموضوع لكن يجب ان تكون لك نبذة عن هذا الموضوع لمزيد من المعلومات راجع كتاب
T H E A R T O F B U I L D I N G Q t A P P L I C A T I O N S
قسم الجرافيكس .
نرجع للطباعة على ملف pdf في الصف printer هناك ثوابت رقمية وهي OutputFormat
تحدد على ماذا تريد ان تطبع ؟؟
في الإفتراضي الطباعة سوف تكون بواسطة الطابعة ولكن نحن سوف نغيرها الى الطباعة الى ملف pdf
وسوف نكتب الكود على النحو التالي
QPrinter printer;
printer.setOutputFormat(QPrinter::PdfFormat);
وبعد ذلك يجب ان نحدد ملف المخرج وننشئ به صفحة جديدة
printer.setOutputFileName("r.pdf");
printer.newPage();
ثم نبدأ بالرسم على الملف
QPainter painter(&printer);
painter.setBrush(QBrush(Qt::red));
painter.drawRect(20,20,100,100);
painter.end();
وكذا انتهينا من الرسم وصار عندنا هذا الشكل