Classe pública Form1
O submarino confidencial Button1_Click (remetente de ByVal como System.Object, ByVal e como System.EventArgs) segura Button1.Click
O strToPrint não ofuscante como a corda = “é aqui” & vbTab & “corda com algum” & vbTab & _
“encaixou batentes de aba” & vbTab & “e” & vbCrLf & _
vbTab & vbTab & “uma nova linha” & vbTab & “demasiado”
M_printer não ofuscante como iHandlePrinting novo
m_printer.PrinterFont = pia batismal nova (“correio novo”, 9, FontStyle.Bold)
'Código R da inveja CONTRA
m_printer.DefaultPageSettings.Margins.Left = 10
m_printer.DefaultPageSettings.Margins.Top = 10
m_printer.DefaultPageSettings.Margins.Bottom = 50
'Ajustar a propriedade de TextToPrint
m_printer.TextToPrint = o ~~~ do "" & do vbCrLf & do strToPrint 'em seu código, removem esta linha
''' m_printer.TextToPrint = "" & vbCrLf & ~~~ e uncomment de Me.txt SelectedRecord.Text 'esta linha.
'Ajustar os batentes de aba required. Anotar que o ~~~ de cada especificação da aba 'adiciona as linhas similares a.
'é o offset da aba precedente. '~~~ isto antes da invocação
sngaTabStops não ofuscantes como únicos () = {100.0F, 150.0F, 300.0F} '~~~ o método da cópia.
m_printer.TabStops = ~~~ dos sngaTabStops '
'Funcionar o comando de cópia
m_printer. Cópia ()
Submarino da extremidade
Classe da extremidade
Importações System.Drawing
Importações System.Drawing.Printing
Classe pública que iHandlePrinting: Herda Printing.PrintDocument
#Region da “variáveis propriedade”
'''
Variável da propriedade do ''' para a pia batismal que o usuário deseja se usar
'''
'''
_font confidencial como a pia batismal
'''
A variável da propriedade do ''' para o texto a seja imprimida
'''
'''
_text confidencial como a corda
Os _tabStops confidenciais como único () = {0.0F} '~~~ adicionam esta disposição.
Região do #End
#Region de “propriedades classe”
As tabulação da propriedade pública () como o único () '~~~ adicionam esta propriedade.
Começ 'o ~~~
Retornar ~~~ dos _tabStops '
A extremidade começ 'o ~~~
Jogo (valor de ByVal como único ()) '~~~
_tabStops = ~~~ do valor '
'~~~ ajustado extremidade
~~~ da propriedade da extremidade '
'''
Propriedade do ''' para prender o texto que deve ser imprimido
'''
'''
Corda do ''' A
'''
Propriedade pública TextToPrint () como a corda
Começ
Retornar o _text
A extremidade começ
Ajustar (valor de ByVal como a corda)
_text = valor
Jogo da extremidade
Propriedade da extremidade
A função pública ShowPrintDialog () como ' o tipo bôoleano do ~~~* deve ser declarada!
ShowPrintDialog (eu)
Do retorno retificar
Terminar a função
A função confidencial ShowPrintDialog (myDocumentToPrint de ByRef como PrintDocument) como ' o tipo bôoleano do ~~~* deve ser declarada!
Psd não ofuscante como PageSetupDialog novo
Com psd
.AllowMargins = retificam
.AllowOrientation = retificam
.AllowPaper = retificam
.AllowPrinter = retificam
.ShowHelp = retificam
.ShowNetwork = retificam
. Original = myDocumentToPrint
Extremidade com
psd.ShowDialog ()
Do retorno retificar
Terminar a função
'''
Propriedade do ''' para prender a pia batismal que os usuários desejam se usar
'''
'''
'''
'''
Propriedade pública PrinterFont () como a pia batismal
'Permite que o usuário cancele a pia batismal do defeito
Começ
Retornar o _font
A extremidade começ
Ajustar (valor de ByVal como a pia batismal)
_font = valor
Jogo da extremidade
Propriedade da extremidade
Região do #End
#Region da “construtores classe”
'''
Construtor vazio do '''
'''
'''
Novos secundários públicos ()
'Ajustar o córrego da lima
MyBase.New ()
'Instantiate para fora a propriedade do texto a uma corda vazia
_text = String.Empty
Submarino da extremidade
'''
Construtor do ''' para inicializar nosso objeto da impressão
''' e o texto que sups para ser impressão
'''
Texto do ''' que será imprimido
'''
Novo secundário público (estreptococo de ByVal como a corda)
'Ajustar o córrego da lima
MyBase.New ()
'Ajustar nosso valor dos bens imóveis do texto
_text = estreptococo
Submarino da extremidade
Região do #End
#Region “OnBeginPrint”
'''
Ultrapassagem do ''' o método de OnBeginPrint do defeito do objeto de PrintDocument
'''
'''
'''
Protegido cancela OnBeginPrint secundário (ByVal e como Printing.PrintEventArgs)
'Funcionar o código baixo
MyBase.OnBeginPrint (e)
'Verific para ver se o usuário forneceu uma pia batismal
'se não fizeram então nós optamos Times New Roman
Se o _font não é nada então
'Criar a pia batismal que nós precisamos
_font = pia batismal nova (“Times New Roman”, 10)
Terminar se
Terminar o submarino
Região do #End
#Region “OnPrintPage”
'''
Ultrapassagem do ''' o método de OnPrintPage do defeito do PrintDocument
'''
'''
O ''' isto fornece a lógica da cópia para nosso original
Protegido cancela OnPrintPage secundário (ByVal e como Printing.PrintPageEventArgs)
'Funcionar o código baixo
MyBase.OnPrintPage (e)
'Declarar as variáveis locais necessários
curChar de estática como o inteiro
printHeight não ofuscante como o inteiro
printWidth não ofuscante como o inteiro
leftMargin não ofuscante como o inteiro
rightMargin não ofuscante como o inteiro
Linhas não ofuscantes como Int32
Escurecer carvões animais como Int32
'Ajustar o tamanho e as margens da área de cópia
Com MyBase.DefaultPageSettings
printHeight = .PaperSize.Height -. Margins.Top -. Margins.Bottom
printWidth = .PaperSize.Width -. Margins.Left -. Margins.Right
leftMargin =. Margins.Left 'X
rightMargin =. Margins.Top 'Y
Extremidade com
'Verific se o usuário selecionado imprimir na modalidade de paisagem
'se fizeram então nós precisamos de trocar parâmetros da altura/largura
Se MyBase.DefaultPageSettings.Landscape então
Tmp não ofuscante como o inteiro
tmp = printHeight
printHeight = printWidth
printWidth = tmp
Terminar se
'Agora nós precisamos de determinar o número de linhas total
'nós estamos indo ser impressão
numLines não ofuscantes como Int32 = CInt (printHeight/PrinterFont.Height)
'Criar uma impressão do retângulo são para nosso original
Escurecer o printArea como RectangleF novo (leftMargin, rightMargin, printWidth, o printHeight)
'Usar a classe de StringFormat para a disposição do texto de nosso original
Escurecer o formato como StringFormat novo (StringFormatFlags.LineLimit)
o ~~~ de format.SetTabStops (0.0F, _tabStops ) 'adiciona esta linha.
'Caber tantos como caráteres como nós podemos na área de cópia
e.Graphics.MeasureString (_text. Substring (RemoveZeros (curChar)), PrinterFont, SizeF novo (printWidth, printHeight), formato, carvões animais, linhas)
'Imprimir a página
e.Graphics.DrawString (_text. Substring (RemoveZeros (curChar)), PrinterFont, Brushes.Black, printArea, formato)
'Aumentar a contagem atual do carvão animal
carvões animais curChar de +=
'Detemine se há mais texto a imprimir, se
'há dizer que a impressora lá é de vinda
Se curChar <>
Função do ''' para substituir dentro alguns zero o tamanho a um 1
O ''' zero sujará acima a área de impressão
'''
Valor do ''' a verific
'''
'''
Função pública RemoveZeros (valor de ByVal como o inteiro) como o inteiro
'Verific o valor passado na função,
'se o valor é um 0 (zero) então retornar um 1,
'de outra maneira retorno que o valor passou dentro
Selecionar o valor do caso
Caso 0
Retorno 1
Caso mais
Valor do retorno
Extremidade seleta
Função do fim
Região do #End
Classe da extremidade
|