vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Re: Druckerränder auslesen 
Autor: ModeratorDaveS (Moderator)
Datum: 10.11.05 20:43

Tut mir leid, dein Beitrag ist irgendwie übersehen worden. Wie t&n schreibt, es geht mit GetDeviceCaps() API. Hier ist eine Klasse (aus einem CodeProject Beispiel)
 
Option Strict On
 
Imports System.Drawing
Imports System.Drawing.Printing
Imports System.Runtime.InteropServices
 
Public Class PrinterBounds
 
    <DllImport("gdi32.dll")> Private Shared Function GetDeviceCaps(ByVal hdc _
      As IntPtr, ByVal capindex As Int32) As Integer
    End Function
 
    Private Const PHYSICALOFFSETX As Integer = 112
    Private Const PHYSICALOFFSETY As Integer = 113
 
    Public Bounds As Rectangle
    Public HardMarginLeft As Integer
    Public HardMarginTop As Integer
 
    Public Sub New(ByVal e As PrintPageEventArgs)
 
        Dim hDC As IntPtr = e.Graphics.GetHdc()
 
        HardMarginLeft = GetDeviceCaps(hDC, PHYSICALOFFSETX)
        HardMarginTop = GetDeviceCaps(hDC, PHYSICALOFFSETY)
 
        e.Graphics.ReleaseHdc(hDC)
 
        HardMarginLeft = CInt(HardMarginLeft * 100.0 / e.Graphics.DpiX)
        HardMarginTop = CInt(HardMarginTop * 100.0 / e.Graphics.DpiY)
 
        Bounds = e.MarginBounds
 
        Bounds.Offset(-HardMarginLeft, -HardMarginTop)
    End Sub
End Class

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Druckerränder auslesen1.100Mafiosi261126.10.05 13:48
Re: Druckerränder auslesen700t&n10.11.05 19:40
Re: Druckerränder auslesen1.034ModeratorDaveS10.11.05 20:43

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel