Codice categoria pubblico Form1
Il sommergibile riservato Button1_Click (mittente di ByVal come System.Object, ByVal e come System.EventArgs) tratta Button1.Click
Lo strToPrint fioco come stringa = “qui è„ & vbTab & “stringa con il qualche„ & vbTab & _
“ha incluso gli arresti di linguetta„ & vbTab & “e„ & vbCrLf & _
vbTab & vbTab & “una nuova linea„ & vbTab & “ugualmente„
M_printer fioco come nuovo iHandlePrinting
m_printer.PrinterFont = nuova fonte (“corriere nuovo„, 9, FontStyle.Bold)
'Codice R di invidia CONTRO
m_printer.DefaultPageSettings.Margins.Left = 10
m_printer.DefaultPageSettings.Margins.Top = 10
m_printer.DefaultPageSettings.Margins.Bottom = 50
'Regolare la proprietà di TextToPrint
m_printer.TextToPrint = il ~~~ del "" & del vbCrLf & dello strToPrint 'nel vostro codice, rimuovono questa linea
''' m_printer.TextToPrint = "" & vbCrLf & ~~~ e uncomment di Me.txt SelectedRecord.Text 'questa linea.
'Regolare gli arresti di linguetta required. Si noti che il ~~~ di ogni specifica della linguetta 'aggiunge le linee simili a.
'è il contrappeso ~~~ da tabella precedente 'questo prima dell'invocazione
sngaTabStops fiochi come singoli () = {100.0F, 150.0F, 300.0F} '~~~ il metodo della stampa.
m_printer.TabStops = ~~~ degli sngaTabStops '
'Fare funzionare l'ordine di stampa
m_printer. Stampa ()
Sommergibile dell'estremità
Codice categoria dell'estremità
Importazioni System.Drawing
Importazioni System.Drawing.Printing
Codice categoria pubblico che iHandlePrinting: Eredita Printing.PrintDocument
#Region “variabili della proprietà„
'''
Variabile della proprietà del ''' per la fonte che l'utente desidera usare
'''
'''
_font riservato come fonte
'''
La variabile della proprietà del ''' per il testo a be è stampata
'''
'''
_text riservato come stringa
I _tabStops riservati come singolo () = {0.0F} '~~~ aggiungono questo allineamento.
Regione del #End
#Region “proprietà di codice categoria„
I tabstop della proprietà pubblica () come singolo () '~~~ aggiungono questa proprietà.
Ottenere 'il ~~~
Restituire ~~~ dei _tabStops '
L'estremità ottiene 'il ~~~
Insieme (valore di ByVal come singolo ()) '~~~
_tabStops = ~~~ di valore '
'~~~ regolato estremità
~~~ della proprietà dell'estremità '
'''
Proprietà del ''' per tenere il testo che deve essere stampato
'''
'''
Stringa del ''' A
'''
Proprietà pubblica TextToPrint () come stringa
Ottenere
Restituire il _text
L'estremità ottiene
Regolar (valore di ByVal come stringa)
_text = valore
Insieme dell'estremità
Proprietà dell'estremità
La funzione pubblica ShowPrintDialog () come ' tipo booleano del ~~~* dovrebbe essere dichiarata!
ShowPrintDialog (me)
Di ritorno allineare
Concludere la funzione
La funzione riservata ShowPrintDialog (myDocumentToPrint di ByRef come PrintDocument) come ' tipo booleano del ~~~* dovrebbe essere dichiarata!
Psd fioco come nuovo PageSetupDialog
Con psd
.AllowMargins = allineano
.AllowOrientation = allineano
.AllowPaper = allineano
.AllowPrinter = allineano
.ShowHelp = allineano
.ShowNetwork = allineano
. Documento = myDocumentToPrint
Estremità con
psd.ShowDialog ()
Di ritorno allineare
Concludere la funzione
'''
Proprietà del ''' per tenere la fonte che gli utenti desidera usare
'''
'''
'''
'''
Proprietà pubblica PrinterFont () come fonte
'Permette che l'utente ignori la fonte di difetto
Ottenere
Restituire il _font
L'estremità ottiene
Regolar (valore di ByVal come fonte)
_font = valore
Insieme dell'estremità
Proprietà dell'estremità
Regione del #End
#Region “costruttori del codice categoria„
'''
Costruttore vuoto del '''
'''
'''
Nuovi secondari pubblici ()
'Regolare il flusso della lima
MyBase.New ()
'Esemplificare fuori la proprietà del testo ad una stringa vuota
_text = String.Empty
Sommergibile dell'estremità
'''
Costruttore del ''' per inizializzare il nostro oggetto di stampa
''' ed il testo che ha supposto per essere stampa
'''
Testo del ''' che sarà stampato
'''
Nuovo secondario pubblico (streptococco di ByVal come stringa)
'Regolare il flusso della lima
MyBase.New ()
'Fissare il nostro valore di una proprietà del testo
_text = streptococco
Sommergibile dell'estremità
Regione del #End
#Region “OnBeginPrint„
'''
Provvigione supplementare del ''' il metodo di OnBeginPrint di difetto dell'oggetto di PrintDocument
'''
'''
'''
Protettivo ignora OnBeginPrint secondario (ByVal e come Printing.PrintEventArgs)
'Fare funzionare il codice basso
MyBase.OnBeginPrint (e)
'Controllare per vedere se l'utente fornisse una fonte
'se non facessero allora stabilizziamo a Times New Roman
Se il _font allora è niente
'Generare la fonte che abbiamo bisogno di
_font = nuova fonte (“Times New Roman„, 10)
Concluder se
Concludere il sommergibile
Regione del #End
#Region “OnPrintPage„
'''
Provvigione supplementare del ''' il metodo di OnPrintPage di difetto del PrintDocument
'''
'''
Il ''' questo fornisce la logica della stampa per il nostro documento
Protettivo ignora OnPrintPage secondario (ByVal e come Printing.PrintPageEventArgs)
'Fare funzionare il codice basso
MyBase.OnPrintPage (e)
'Dichiarare le variabili locali state necessarie
curChar statico come numero intero
printHeight fioco come numero intero
printWidth fioco come numero intero
leftMargin fioco come numero intero
rightMargin fioco come numero intero
Linee fioche come Int32
Oscurare i carboni come Int32
'Regolare il formato ed i margini di zona di stampa
Con MyBase.DefaultPageSettings
printHeight = .PaperSize.Height -. Margins.Top -. Margins.Bottom
printWidth = .PaperSize.Width -. Margins.Left -. Margins.Right
leftMargin =. Margins.Left 'X
rightMargin =. Margins.Top 'Y
Estremità con
'Controllare se l'utente selezionato stampare nel modo di paesaggio
'se facessero allora dobbiamo scambiare i parametri larghezza/di altezza
Se MyBase.DefaultPageSettings.Landscape allora
Tmp fioco come numero intero
tmp = printHeight
printHeight = printWidth
printWidth = tmp
Concluder se
'Ora dobbiamo determinare il numero delle linee totale
'stiamo andando essere stampa
numLines fiochi come Int32 = CInt (printHeight/PrinterFont.Height)
'Generare una stampa di rettangolo sono per il nostro documento
Oscurare il printArea come nuovo RectangleF (leftMargin, rightMargin, printWidth, printHeight)
'Usare il codice categoria di StringFormat per la disposizione del testo del nostro documento
Oscurare la disposizione come nuovo StringFormat (StringFormatFlags.LineLimit)
il ~~~ di format.SetTabStops (0.0F, _tabStops ) 'aggiunge questa linea.
'Misura altretanti caratteri come possiamo nella zona di stampa
e.Graphics.MeasureString (_text. Sottostringa (RemoveZeros (curChar)), PrinterFont, nuovo SizeF (printWidth, printHeight), disposizione, carboni, linee)
'Stampare la pagina
e.Graphics.DrawString (_text. Sottostringa (RemoveZeros (curChar)), PrinterFont, Brushes.Black, printArea, disposizione)
'Aumentare il conteggio corrente del carbone
carboni curChar di +=
'Detemine se ci è più testo da stampare, se
'ci è il dire che lo stampatore là è venente
Se curChar <>
Funzione del ''' per sostituire qualsiasi zeri dentro il formato ad un 1
Il ''' zero scompiglierà in su la zona di stampa
'''
Valore del ''' da controllare
'''
'''
Funzione pubblica RemoveZeros (valore di ByVal come numero intero) come numero intero
'Controllare il valore passato nella funzione,
'se il valore è un 0 (zero) allora restituire un 1,
'al contrario ritorno che il valore è passato dentro
Selezionare il valore di caso
Caso 0
Ritorno 1
Caso altrimenti
Valore di ritorno
Estremità prescelta
Funzione di conclusione
Regione del #End
Codice categoria dell'estremità
|