تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
(تم الحل) كيف يتم جمع محتويات 2 Richtextbox أو أكثر عن طريق Rtf
#4
وعليكم السلام ورحمة الله وبركاته

تفضل هالطريقة بدون عملية نسخ :
كود :
Public Function MargeRTF(str1 As String, str2 As String)
        Dim FontTable1 = (From Txt In Strings.Split(JustAfter(str1, "{\fonttbl", "}}") & "}", "}{") Select Txt.TrimStart("{").TrimEnd("}"))
        Dim FontTable2 = (From Txt In Strings.Split(JustAfter(str2, "{\fonttbl", "}}") & "}", "}{") Select Txt.TrimStart("{").TrimEnd("}"))
        Dim ColorTable1 = (From Txt In Strings.Split(JustAfter(str1, "{\colortbl ;", "}"), ";") Select Txt Where Txt.Trim.Length > 0)
        Dim ColorTable2 = (From Txt In Strings.Split(JustAfter(str2, "{\colortbl ;", "}"), ";") Select Txt Where Txt.Trim.Length > 0)
        Dim Text1 As String = JustAfter(str1, ";}" & Chr(13), "}")
        Dim Text2 As String = JustAfter(str2, ";}" & Chr(13), "}")
        Dim HeaderText As String = JustAfter(str1, "{", "{")
        Dim MargedText As String = ""
        Dim FontTable As New List(Of String)
        Dim ColorTable As New List(Of String)
        If Text1 Is Nothing Then Text1 = JustAfter(str1, "}}" & Chr(13), "}")
        If Text2 Is Nothing Then Text2 = JustAfter(str2, "}}" & Chr(13), "}")
        FontTable.AddRange(FontTable1)
        ColorTable.AddRange(ColorTable1)
        ColorTable.AddRange(ColorTable2)
        For I = 0 To FontTable2.Count - 1
            FontTable.Add(FontTable1(I).Replace("\f" & I, "\f" & FontTable1.Count + I))
        Next
        Dim Font As String = "{" & Strings.Join(FontTable.ToArray, "}{").Replace("}}{{", "}{") & "}"
        Dim Color As String = Strings.Join(ColorTable.ToArray, ";") & ";"
        For I = 0 To FontTable2.Count - 1
            Text2 = Text2.Replace("\f" & I, "\f" & FontTable1.Count + I)
        Next
        For I = 1 To ColorTable2.Count
            Text2 = Text2.Replace("\cf" & I, "\cf" & ColorTable1.Count + I)
        Next
        MargedText += "{" & HeaderText & "{\fonttbl" & Font & "}" & vbNewLine
        MargedText += "{\colortbl ;" & Color & "}" & vbNewLine
        MargedText += Text1 & vbNewLine
        MargedText += Text2 & vbNewLine & "}"
        Return MargedText
    End Function

    Public Function JustAfter(ByVal Str As String, ByVal Seq As String, ByVal SeqEnd As String) As String
        Dim Orgi As String = Str
        Try
            Str = Str.ToLower()
            Seq = Seq.ToLower()
            SeqEnd = SeqEnd.ToLower()
            Dim i As Integer = Str.IndexOf(Seq)
            If i < 0 Then Return Nothing

            i = i + Seq.Length
            Dim j As Integer = Str.IndexOf(SeqEnd, i)
            Dim [end] As Integer
            If j > 0 Then [end] = j - i Else [end] = Str.Length - i

            Return Orgi.Substring(i, [end])
        Catch generatedExceptionName As Exception
            Return ""
        End Try
    End Function

كود :
RichTextBox3.Rtf = MargeRTF(RichTextBox1.Rtf, RichTextBox2.Rtf)


وفقك الله
الرد }}}
تم الشكر بواسطة:


الردود في هذا الموضوع
(تم الحل) كيف يتم جمع محتويات 2 Richtextbox أو أكثر عن طريق Rtf - بواسطة Osama_Ghareeb - 02-12-12, 05:31 PM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [VB.NET] استفسار بخصوص البحث في RichTextBox SerialPort dubai.eig 2 664 18-06-25, 11:09 AM
آخر رد: dubai.eig
  [سؤال] سؤال ترددت قبل نشرة:طابعة الباركود لماذا تطبع أكثر من ليبل فارغ قبل السليم dr.programming 1 514 20-04-25, 09:26 PM
آخر رد: Kamil
  ما الحل dwidar07@gmail.com 3 428 21-02-25, 01:08 AM
آخر رد: أبو خالد الشكري
  ارجو تعديل الكود جلب البيانات عن طريق اجراء مخزن - مرفق مثال new_programer 0 625 05-02-25, 01:51 AM
آخر رد: new_programer
  كيف يمكن اضافة عناصر للكومبوبوكس اثناء تشغيل البرنامج عن طريق المستخدم haithammoftah 3 2,164 30-09-24, 12:52 AM
آخر رد: asmarsou
  أريد تحديد صلاحيات المستخدمين عن طريق حقل في جدول قاعدة البيانات F.H.M 0 329 12-09-24, 06:29 PM
آخر رد: F.H.M
  كيفيه التعامل مع ملفات الدروب بوكس عن طريق api ackore 3 468 22-08-24, 06:13 AM
آخر رد: ackore
  فتح ملف اكسيل عن طريق الفيجوال بيسك 2015 Emam emam 0 280 19-07-24, 05:14 PM
آخر رد: Emam emam
  [سؤال] أرغب في شريط ضبط الخطوط في أداة RichTextBox والكود كما بالصورة Mostchar 1 392 02-04-24, 01:01 AM
آخر رد: justforit
  محتاج تشفير فيديو وتشغلية عن طريق البرنامج فقط new_programer 1 464 22-02-24, 12:09 PM
آخر رد: AHMED213

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم