التخطي إلى المحتوى الرئيسي

كلاس جاهز لطباعة النصوص - VB.NET class to print text Strings

Public Class TextPrint
   ' Inherits all the functionality of a PrintDocument 
   Inherits Printing.PrintDocument
   ' Private variables to hold default font and text 
   Private fntPrintFont As Font
   Private strText As String
   Public Sub New(ByVal Text As String)
       ' Sets the file stream 
       MyBase.New()
       strText = Text
   End Sub
   Public Property Text() As String
       Get
           Return strText
       End Get
       Set(ByVal Value As String)
           strText = Value
       End Set
   End Property
   Protected Overrides Sub OnBeginPrint(ByVal ev As Printing.PrintEventArgs)
       ' Run base code 
       MyBase.OnBeginPrint(ev)
       ' Sets the default font 
       If fntPrintFont Is Nothing Then
           fntPrintFont = New Font("Times New Roman", 12                                            )
       End If
   End Sub
   Public Property Font() As Font
       ' Allows the user to override the default font 
       Get
           Return fntPrintFont
       End Get
       Set(ByVal Value As Font)
           fntPrintFont = Value
       End Set
   End Property
   Protected Overrides Sub OnPrintPage(ByVal ev _
       As Printing.PrintPageEventArgs)
       ' Provides the print logic for our document 

       ' Run base code 
       MyBase.OnPrintPage(ev)
       ' Variables 
       Static intCurrentChar As Integer
       Dim intPrintAreaHeight, intPrintAreaWidth, _
           intMarginLeft, intMarginTop As Integer
       ' Set printing area boundaries and margin coordinates 
       With MyBase.DefaultPageSettings
           intPrintAreaHeight = .PaperSize.Height - .Margins.Top - .Margins.Bottom
           intPrintAreaWidth = .PaperSize.Width - .Margins.Left - .Margins.Right
           intMarginLeft = .Margins.Left 'X
           intMarginTop = .Margins.Top   'Y
       End With
       ' If Landscape set, swap printing height/width 
       If MyBase.DefaultPageSettings.Landscape Then
           Dim intTemp As Integer
           intTemp = intPrintAreaHeight
           intPrintAreaHeight = intPrintAreaWidth
           intPrintAreaWidth = intTemp
       End If
          ' Calculate total number of lines 
          Dim intLineCount As Int32= CInt(intPrintAreaHeight / Font.Height)
          ' Initialize rectangle printing area 
       Dim rectPrintingArea As New RectangleF(intMarginLeft, intMarginTop, _
           intPrintAreaWidth, intPrintAreaHeight)
       ' Initialise StringFormat class, for text layout 
       Dim objSF As New StringFormat(StringFormatFlags.LineLimit)
       ' Figure out how many lines will fit into rectangle 
       Dim intLinesFilled, intCharsFitted As Int32
       ev.Graphics.MeasureString(Mid(strText, _
                   UpgradeZeros(intCurrentChar)), Font, _
                   New SizeF(intPrintAreaWidth, intPrintAreaHeight), objSF, _
                   intCharsFitted, intLinesFilled)
       ' Print the text to the page 
       ev.Graphics.DrawString(Mid(strText, _
           UpgradeZeros(intCurrentChar)), Font, _
           Brushes.Black, rectPrintingArea, objSF)
       ' Increase current char count
       intCurrentChar += intCharsFitted
       ' Check whether we need to print more 
       If intCurrentChar < strText.Length Then
           ev.HasMorePages = True
       Else
           ev.HasMorePages = False
           intCurrentChar = 0
       End If
   End Sub
   Public Function UpgradeZeros(ByVal Input As Integer) As Integer
       ' Upgrades all zeros to ones 
       ' - used as opposed to defunct IIF or messy If statements 
       If Input = 0 Then
           Return 1
       Else
           Return Input
       End If
   End Function
End Class

Please SUBSCRIBE to get new articles directly into your Email inbox!

تعليقات

المشاركات الشائعة من هذه المدونة

إنشاء فلاشة قادرة على سرقة جميع الباسووردات الموجودة على أي حاسوب تتصل به

أهلا بكم على موقع ديف نوبا لتعليم البرمجة. اليوم سنتعرف على طريقة حديثة يستعملها الكراكرز ( الهاكرز الغير أخلاقيين ) لسرقة الباسوردات ( كلمات المرور والأرقام السرية لكل المواقع التى تسجل دخول عليها ) الموجودة على أي حاسوب فقط عبر فلاشة يو إس بى USB عادية جداً. لاحظ! هذه التدوينة كتبتها للتوعية والتعليم، وليس بهدف الإختراق أو السرقة بأى شكل من الأشكال. ولكن من حقك أن تعرف كيف يخترق الكراكرز والهاكرز الناس لكى تتعلم كيف تحمى نفسك. كما ذكرنا في المقدمة سنقوم بإعداد فلاشة USB بمجرد أن يوضع أو أن يتصل بالحاسوب ( الكمبيوتر أو اللابتوب ) ستظهر رسالة تطلب فحص الفلاشة بعد النقر عليها سيتم سرقة جميع الباسووردات والأرقام السرية الموجودة بالحاسوب مثل كلمات مرور الفيسبوك، وتويتر، وجوجل بلس، وجميع المواقع وحتى البنوك الإلكترونية. كيف يحدث هذا الاختراق بهذه السهولة؟ ننتقل للشرح التطبيقي لكي تعرف : نبدأ بالأدوات التي ستحتاجها لعمل هذه الفلاشة الهاكر: 1. حاسوب ( كمبيوتر مكتبى، أو لابتوب ) 2. فلاشة يو إس بى USB 3. برنامج Web Browser Pass View ويمكنك تحميله من هنا . خطوات عمل فلا...

كيف تصبح هكر ( Ethic Hacker )

أهلاً بك فى موقع ديف نوبا للبرمجة. فى هذه التدوينة سوف أشرح لك كيف تصبح هاكر أخلاقى متخصص فى أمن المعلومات. فى البداية من هو حقاً الهاكر؟ الهاكر هو مبرمج يفهم البرمجة بشكل عميق بكل تفاصيلها وله تعليم وخبرة كبيرة فى هذا المجال، يفهم النظام ويعرف كيف يحصل على ثغرات فى النظام، يعرف طريقة الحماية ويحاول أن يتخطى الحماية أو يكسرها. كل هذه الأمور الخطيرة يعملها من أجل اصلاح النظام وليس تدميرة رغم أنه قادر على تدميرة. فى هذه التدوينة سنتحدث عن كل ما يحتاجة الإنسان ليُصبح هاكر محترف قادر على اختراق الأنظمة المختلفة بشتى أنواعها من أجل حمايتها وأمن معلوماتها. قبل أن تصبح هاكر، عليك أن تعرف تصنيفك بين الهاكرز!.. أى ماذا تريد أن تصبح؟ هاكر أخلاقى متخصص فى أمن المعلومات، أم هاكر أسود متخصص فى التدمير والتخريب، أم هاكر متقلب! الهاكر هم ثلاثة أنواع على الأقل؛ الهاكر ذو القبعة البيضاء وهو هاكر متخصص فى أمن المعلومات، يحاول اختراق النظام من أجل اصلاحه وتطويرة وتقويته وسد ثغراته. أما الهاكر ذو القبعة السوداء فهو هاكر متخصص فى قرصنة المواقع والأنظمة والشبكات من أجل التخريب والت...

كيف تصبح مبرمج محترف من الصفر؟

أهلاً بك فى موقع ديف نوبا لتعليم البرمجة وشرح البرامج . أقدم لك اليوم خطوات كيف تصبح مبرمج وتؤهل نفسك للعمل كمبرمج فى سوق العمل؟ الكثير من الناس يتمنى أن يُصبح مبرمج! ولكن لا يصل لهدفه لأنه استمر بشكل خاطئ فى طريق خطأ. ولكن فى هذه التدوينة أشرح لك أهم الأشياء والخطوات لكى تصبح مبرمج محترف وقادر على العمل كمبرمج فى الوظائف المختلفه فى سوق العمل التقنى. فى البداية عليك أن تعرف أنه تُطلق كلمة "Developer" أو "مطور" باللغة العربية على المبرمج  الذى يُمارس وظيفة البرمجة، لذلك كلمة "Programmer" تساوى كلمة "Developer" فى المعنى وسوف تعتاد على سَماع كلمة "Developer" كثيراً فى سوق العمل التقنى والبرمجى. كيف أبدأ طريقى إلى البرمجة؟ هذا سؤال هام جداً. ولكن يجب أن تحدد هدفك بشكل أكثر دقة لأن مجال البرمجة متشعب وبه الكثير جداً من التخصصات. ولكن سوق العمل فى مصر يحتاج إلى تخصصات محددة وهى تتخلص فى الوظائف الآتية. 1. مطور تطبيقات ويندوز Windows Applications Developer وهو المبرمج الذى يقوم بتصميم وبرمجة التطبيقات من النوع Windows Appli...