الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

الطباعة من اليمين الى اليسار

بدأه خالد حاتم كخن في 20 يوليو 2009 · 6 رد · 887 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

تحية طيبة :

إخواني الاعزاء انا احاول اعداد تقرير طباعة باللغة العربية .. من خلال استخدام ال printDocument .. المشكلة التي اواجهها هي كيفية ترتيب الجمل فوق بعضها البض بحيث تبتدأ جميعها من عند حد واحد من جهة اليمين وليس اليسار .. حاولت وبحثت .. لكن لم أجد جدوى .. فهل هناك طريقة مجدية؟؟

دمتم بخير.

#2

هذا كود مبسط لطباعة نص عربي من اليمين إلى اليسار :

using System.Drawing;
using System.Drawing.Printing;

namespace ConsoleApplication1
{
	class Program
	{
		static PrintDocument pDoc = null;
		static void Main(string[] args)
		{
			pDoc = new PrintDocument();
			pDoc.PrintPage += new PrintPageEventHandler(pDoc_PrintPage);
			pDoc.Print();
		}

		static void pDoc_PrintPage(object sender, PrintPageEventArgs e)
		{
			string s = "تحية طيبة :\n\nإخواني الاعزاء انا احاول اعداد تقرير طباعة باللغة العربية .. من خلال استخدام ال printDocument .. المشكلة التي اواجهها هي كيفية ترتيب الجمل فوق بعضها البض بحيث تبتدأ جميعها من عند حد واحد من جهة اليمين وليس اليسار .. حاولت وبحثت .. لكن لم أجد جدوى .. فهل هناك طريقة مجدية؟؟\n\nدمتم بخير.";
			Font f = new Font("Arial", 12.0f);
			RectangleF rc = e.PageSettings.Bounds;
			StringFormat sf = new StringFormat(StringFormatFlags.DirectionRightToLeft);
			sf.Alignment = StringAlignment.Near;
			sf.LineAlignment = StringAlignment.Near;
			e.Graphics.DrawString(s, f, Brushes.Black, rc, sf);
		}
	}
}
#3

أخى محمد لى تعليق بسيط

اقتباس
namespace ConsoleApplication1

هل هذا التطبيقConsoleApplication أم WindowsApplication

تم تعديل هذه المشاركة بواسطة amr.alsaidy في 20 يوليو 2009 في 20:35

 وممّا زادنـــي شرفــاً وتيهــاً   **  وكدت بأخمصي أطأ الثريّا

دخولي تحت قولك يا عبادي  **   وأن صيّرت أحمد لي نبيّـاً

#4

ConsoleApplication و لكن المهم هو ما بداخل الدالة pDoc_PrintPage التي هي تنادى عند الحدت PrintPage للComponent PrintDocument و الباقي فقط للتجربة و تبسيط المثال.

#5

أخى تعليقى كان بسبب أننى ترجمت التطبيق ك ConsoleApplication

ولكن لم أجد using System.Drawing; متاحه

وشكرا

 وممّا زادنـــي شرفــاً وتيهــاً   **  وكدت بأخمصي أطأ الثريّا

دخولي تحت قولك يا عبادي  **   وأن صيّرت أحمد لي نبيّـاً

#6

آه نعم يجب زيادة reference لـ System.Drawaing للمشروع عن طريق القائمة Project >> Add reference

#7

تحية طيبة :

أخي "محمد رضى" لساني يعجز عن شكرك .. فقد حللت لي مسألة أخذت مني الكثير من الوقت والجهد .. فبارك الله فيك.

واعذرني اخي على الاطالة بالرد فذلك خارج عن ارادتي اذ ان اتصال الانترنت في الاونة الاخيرة كان نادرا بسسب اعمال الصيانة عندنا.

دمتم بخير،

خالد الكخن.

مواضيع مشابهة