Visual Basic Foro

Programación => Visual Basic 6 => Mensaje iniciado por: E N T E R en Febrero 20, 2013, 09:40:25 pm

Título: [APORTE] Imprimir una imagen y alinearlo con Printer.Print
Publicado por: E N T E R en Febrero 20, 2013, 09:40:25 pm
Hola compañeros es un pequeño aporte ya que no estaba aportanto nada. Es una pequeña función que cree para imprimir un logo o cualquier imagen con el objeto Printer y alinearlo según se desee.

FUNCION

Código: (VB) [Seleccionar]
Public Function ImprimirLogo(PathImagen As String, Alignment As AlignmentConstants, pY As Long, tAltura As Long)   
    Dim tAncho As Long
    Dim xFoto As IPictureDisp       
    Set xFoto = LoadPicture(PathImagen)
    tAncho = Round(Printer.ScaleX(xFoto.Width, vbHimetric, vbMillimeters))       
    Select Case Alignment
        Case vbCenter
            pX = (Printer.ScaleWidth - tAncho) \ 2
        Case vbLeftJustify
            pX = 10
        Case vbRightJustify
            pX = Printer.ScaleWidth - tAncho - 10                       
    End Select   
    Printer.PaintPicture LoadPicture(PathImagen), pX, pY, tAncho, tAltura
    Set xFoto = Nothing   
End Function

COMO USAR

Código: (VB) [Seleccionar]
Private Sub Form_Load()
   
    Printer.ScaleMode = vbMillimeters
    ImprimirLogo ("c:\logo1.jpg"), vbLeftJustify, 10, 26   'Alinea a la izquierda.
    ImprimirLogo ("c:\logo2.jpg"), vbCenter, 10, 26        'Alinea a al centro de la hoja.
    ImprimirLogo ("c:\logo3.jpg"), vbRightJustify, 10, 26  'Alinea a al derecha.
    Printer.EndDoc
   
End Sub

EJEMPLO

(http://snag.gy/DEMNS.jpg)
Título: Re:[APORTE] Imprimir una imagen y alinearlo con Printer.Print
Publicado por: YAcosta en Febrero 20, 2013, 10:57:39 pm
Interesante para los que no usamos Cristal para hacer catálogos de productos.