Tlač z dvoch zásobníkov   otázka

VB.NET, Tisk

Prosím už si neviem pomôcť - nastaviť veľkosť papiera.

Potrebujem programovo meniť zdroj, rozmer a orientáciu papiera.

Orientáciu zmení ale ostatné dva nie. Pričom pre rozmer hlási

problém. Prikladám kód VB2005 expres

    Private Sub Tlačiť_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Tlačiť.Click
        Dim prDoc As New PrintDocument
        Try
            AddHandler prDoc.PrintPage, AddressOf Me.TlačVstup
            prDoc.DefaultPageSettings.PaperSource.SourceName = "Tray 1"
            prDoc.DefaultPageSettings.Landscape = True
            'prDoc.DefaultPageSettings.PaperSize.PaperName = "A4"
            'prDoc.DefaultPageSettings.PaperSize.Height = 297     '1169
            'prDoc.DefaultPageSettings.PaperSize.Width = 210      ' 827
            prDoc.DefaultPageSettings.PaperSize.RawKind = 1
            prDoc.Print()
        Catch ex As Exception
            MessageBox.Show("Problém s tlačou", ex.ToString)
        End Try
        Znovu()
        MenuStrip1.Enabled = True
    End Sub

    Private Sub TlačVstup(ByVal sender As System.Object, ByVal ev As PrintPageEventArgs)
        ev.Graphics.DrawString(txt1.Text, New Font("Courier New", 10, FontStyle.Regular), Brushes.Black, 400, 2)
        ev.Graphics.DrawString(txt2.Text, New Font("Courier New", 14, FontStyle.Bold), Brushes.Black, 580, 156)
        ev.HasMorePages = False
    End Sub

Možnosť ...PaperSize.RawKind = 1 prejde ale neviem čo robí.

nahlásit spamnahlásit spam 2 / 2 odpovědětodpovědět

On vám nikdo neodpověděl?

Pro nové nastavení stránky si vytvořte nové nastvení stránky (New PageSettings) nastavte a celé zaměňte.

nahlásit spamnahlásit spam -3 / 3 odpovědětodpovědět

Ďakujem za snahu, ale neviem kde robím chybu


    Private Sub TlačTržby(ByVal sender As System.Object, ByVal ev As PrintPageEventArgs)            ' left TOP
        ev.Graphics.DrawString(TB8.Text, New Font("Courier New", 10, FontStyle.Regular), _
                                                                     Brushes.Black, 0, 0)
        ev.HasMorePages = False
    End Sub

    Private Sub TlačTržba_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
                                                                             Handles TlačTržba.Click
        Try
            Dim prDoc As New PrintDocument
            Dim pgTržba As New PageSettings
            pgTržba.Landscape = False
            pgTržba.PaperSource.SourceName = "Tray 1"
            AddHandler prDoc.PrintPage, AddressOf Me.TlačTržby
            prDoc.Print()
        Catch ex As Exception
            MessageBox.Show("Problém s tlačou", ex.ToString)
        End Try
        EndTržba_Click(sender, e)
    End Sub

nahlásit spamnahlásit spam 2 / 2 odpovědětodpovědět

Dim prDoc As New PrintDocument

Dim pgTržba As New PageSettings

pgTržba.Landscape = False

pgTržba.PaperSource.SourceName = "Tray 1"

prDoc.DefaultPageSettings = pgTržba

nahlásit spamnahlásit spam -2 / 2 odpovědětodpovědět

Previedol som úpravu - už mi reaguje na zmenu orientácie

ale nemení zdroj-zásobnk papiera.

Bude to asi tlačiarňou "LEXMARK E250 d".

Previedol som následujúci test pre rôzne zdroje papiera

        txt.Text &= "Zdroj    " & PrintDocument1.PrinterSettings.DefaultPageSettings.PaperSource.SourceName & vbCrLf
        txt.Text &= "Zdroj    " & PrintDocument1.PrinterSettings.DefaultPageSettings.PaperSource.Kind & vbCrLf

Hodnota "Kind" stále = 257

Veľmi pekne ďakujem za navigáciu a prikladám úpravu

Imports system.drawing.printing
Public Class Form1
    Public prDoc As New PrintDocument
    Public pgTržba, pgVstup As New PageSettings

    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        pgVstup.Landscape = True
        pgVstup.PaperSource.SourceName = "Manual paper"
        pgTržba.Landscape = True
        pgTržba.PaperSource.SourceName = "Tray 1"
    End Sub

    Private Sub btnVstup_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVstup.Click
        Try
            AddHandler prDoc.PrintPage, AddressOf Me.TlačVstup
            prDoc.DefaultPageSettings = pgVstup
            prDoc.Print()
        Catch ex As Exception
            MessageBox.Show("Problém s tlačou", ex.ToString)
        End Try
    End Sub

    Private Sub TlačVstup(ByVal sender As System.Object, ByVal ev As PrintPageEventArgs)
        ev.Graphics.DrawString(txt1.Text, New Font("Courier New", 10, FontStyle.Regular), Brushes.Black, 400, 2)
        ev.Graphics.DrawString(txt2.Text, New Font("Courier New", 14, FontStyle.Bold), Brushes.Black, 580, 156)
        ev.HasMorePages = False
    End Sub

    Private Sub btnTržba_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnTržba.Click
        Try
            AddHandler prDoc.PrintPage, AddressOf Me.TlačTržby
            prDoc.DefaultPageSettings = pgTržba
            prDoc.Print()
        Catch ex As Exception
            MessageBox.Show("Problém s tlačou", ex.ToString)
        End Try
    End Sub

    Private Sub TlačTržby(ByVal sender As System.Object, ByVal ev As PrintPageEventArgs)
        ev.Graphics.DrawString(TB8.Text, New Font("Courier New", 10, FontStyle.Regular), Brushes.Black, 0, 0)
        ev.HasMorePages = False
    End Sub
End Class

Ešte raz ďakujem

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback