Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Inventor VBA
  Zeichnung wird nicht gedruuckt

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Zeichnung wird nicht gedruuckt (589 mal gelesen)
Stechi
Mitglied
Informatiker


Sehen Sie sich das Profil von Stechi an!   Senden Sie eine Private Message an Stechi  Schreiben Sie einen Gästebucheintrag für Stechi

Beiträge: 75
Registriert: 17.01.2008

Hi Smoke2004,<P>und wie in VBA? Habe in VBA nichts äquivalentes gefunden.<P>Gruß<P>Stechi

erstellt am: 30. Apr. 2010 11:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,

ich möchte aus einem VB 6.0-Programm eine Zeichnung auf eine OCE-Anlage drucken. Es wird auch die Zeichnung gedruckt, aber nicht richtig. Sie wird immer abgeschnitten, egal welche Einstellungen ich vornehme. Ich verwende den Printmanager, der wie folgt deklariert ist:

Code:
Dim Oprintmanager as DrawingPrintManger

Der Code zum Drucken sieht so aus:

Code:
Oprintmanager.Printer = Name des Treiber bzw. Druckers     
    ' Farbauswahl
    If optsw.value = True Then
      Oprintmanager.AllColorsAsBlack = True
    Else
      Oprintmanager.AllColorsAsBlack = False
      Oprintmanager.ColorMode = kPrintColorPalette
    End If
    ' Papierformatauswahl
    If cboPapierformat.text = "" Then
      MsgBox "Papierformat auswählen!"
      cboPapierformat.SetFocus
      Exit Sub
    Else
      'Oprintmanager.Orientation = kPortraitOrientation
      Select Case cboPapierformat.text
          Case "A0"
              Oprintmanager.PaperSize = kPaperSizeA0
              Oprintmanager.Orientation = kLandscapeOrientation
          Case "A1"
              Oprintmanager.PaperSize = kPaperSizeA1
              Oprintmanager.Orientation = kLandscapeOrientation
          Case "A2"
              Oprintmanager.PaperSize = kPaperSizeA2
              Oprintmanager.Orientation = kLandscapeOrientation
          Case "A3"
              Oprintmanager.PaperSize = kPaperSizeA3
              Oprintmanager.Orientation = kLandscapeOrientation
          Case "A4"
              Oprintmanager.PaperSize = kPaperSizeA4
              Oprintmanager.Orientation = kPortraitOrientation
      End Select
    End If
      ' Druckbereich festlegen
      If optGrenzen.value = True Then
        If CInt(right(txtFormat.text, 1)) >= CInt(right(cboPapierformat.text, 1)) Then
            Oprintmanager.ScaleMode = kPrintFullScale
        Else
            txtMaßstab.text = "Anpassen"
            Oprintmanager.ScaleMode = kPrintBestFitScale
        End If
      Else
        ' Anzeigen vom Zeichnungsmaßstab
        temp = Odrawdoc.ActiveSheet.DrawingViews(1).Scale
        Select Case temp
            Case "1"
              txtMaßstab.text = "1 : 1"
            Case "0,5"
              txtMaßstab.text = "1 : 2"
            Case "0,2"
              txtMaßstab.text = "1 : 5"
            Case "0,1"
              txtMaßstab.text = "1 : 10"
            Case "0,05"
              txtMaßstab.text = "1 : 20"
            Case "0,02"
              txtMaßstab.text = "1 : 50"
            Case "2"
              txtMaßstab.text = "2 : 1"
            Case "5"
              txtMaßstab.text = "5 : 1"
            Case Else
              MsgBox " Das eingebene Format gibt es nicht! Es gibt nur folgende Format: 1 : 1, 1 : 2, 1 : 5, 1 : 10, 1 : 20, 1 : 50, 2 : 1 und 5 : 1! Bitte Format dementsprechend in der Drawing View(1) ändern!"
              Exit Sub
          End Select
          Oprintmanager.ScaleMode = kPrintCurrentWindow
      End If
      ' Druckseiten festlegen
      If optaktSeite.value = True Then
        Oprintmanager.PrintRange = kPrintCurrentSheet
      Else
        Oprintmanager.PrintRange = kPrintAllSheets
      End If
      ' Drehung festlegen
      If fraDrehung.Enabled = True Then
        If opt0°.value Then
            Oprintmanager.Rotate90Degrees = False
        Else
            Oprintmanager.Rotate90Degrees = True
        End If
      Else
        Oprintmanager.Rotate90Degrees = True
      End If
      If cboPlotter.text = "OCE_9800" Then
            Oprintmanager.PrintToFile ("C:\Temp\oceout.plt")
            ' Ermitteln des letzten Backslashes im String
            For i = 1 To Len(Odrawdoc.FullFileName)
                If Mid$(Odrawdoc.FullFileName, i, 1) = "\" Then
                  pos = i
                End If
            Next i
            NAME = Mid(Odrawdoc.FullFileName, pos + 1, Len(Odrawdoc.FullFileName))
           
                tmp = Plotexe & " C:\Temp\oceout.plt@&@" & Odrawdoc.ActiveSheet.Width * 10 & " mm  x " & Odrawdoc.ActiveSheet.Height * 10 & "  mm" & "&@&" & NAME
                ausfuehrung = Shell(tmp, vbNormalFocus)

Anmerkung: "Plotexe" ist eine Variable, die im Programm gesetzt wird und für den Shell-Anweisung gebraucht wird.
Mir scheint, daß die Einstellungen nicht an den Druckertreiber (hier: OCE9800) weitergegeben werden. Warum nicht?
Ziussatzinformation:  Der Treiber für die OCE-Anlage wurde neu installiert und wieder zurückgesetzt, sodaß wieder der alter Treiber aktiv ist!
Für jeden Hinweis bin ich dankbar!

Gruß

Markus

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

stargazer
Mitglied
Dipl. Ing.


Sehen Sie sich das Profil von stargazer an!   Senden Sie eine Private Message an stargazer  Schreiben Sie einen Gästebucheintrag für stargazer

Beiträge: 35
Registriert: 02.04.2005

erstellt am: 05. Mai. 2010 20:57    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Stechi 10 Unities + Antwort hilfreich

Hallo Stechi,

bei OCE-Plottern kann man die Drucker-Einstellung per RFC durchführen.

Schau Dir mal das an:
http://ww3.cad.de/foren/ubb/Forum431/HTML/000069.shtml

Gruß
Marco

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz