Autor Tema: Imprimir con Printer.CurrentX y Printer.CurrentY  (Leído 8279 veces)

0 Usuarios y 1 Visitante están viendo este tema.

E N T E R

  • Petabyte
  • ******
  • Mensajes: 1062
  • Reputación: +57/-13
  • www.enterpy.com
    • Ver Perfil
    • www.enterpy.com
Imprimir con Printer.CurrentX y Printer.CurrentY
« en: Abril 09, 2015, 10:55:04 am »
Hola tengo un proyecto en donde utilizo Printer.CurrentX y Printer.CurrentY

Lo que pasa es que al llegar al final de la pagina no continua bien la impresion saltea por cada linea una hoja.

Este es mi codigo.

Código: (VB) [Seleccionar]
Private Sub Command1_Click()
   
    Dim Contar As Long
           
    Printer.ScaleMode = vbMillimeters
   
    For i = 1 To 200

        Contar = Contar + 4
       
        Printer.CurrentX = 35
        Printer.CurrentY = 28 + Contar
       
        Printer.Print "HOLA"
               
    Next i

    Printer.EndDoc
   
End Sub

Aca una imagen como queda.


http://snag.gy/fHbVR.jpg
CIBER GOOGLE - CONCEPCIÓN PARAGUAY
www.enterpy.com
Primera regla de la programacion, para que vas a hacerlo complicado si lo puedes hacer sencillo

Jeronimo

  • Gigabyte
  • ****
  • Mensajes: 402
  • Reputación: +33/-2
    • Ver Perfil
Re:Imprimir con Printer.CurrentX y Printer.CurrentY
« Respuesta #1 en: Abril 09, 2015, 12:10:32 pm »
Hola.
¿Te fijaste qué pasa si definís el tamaño de la hoja (Printer.PaperSize)?

Jerónimo

E N T E R

  • Petabyte
  • ******
  • Mensajes: 1062
  • Reputación: +57/-13
  • www.enterpy.com
    • Ver Perfil
    • www.enterpy.com
Re:Imprimir con Printer.CurrentX y Printer.CurrentY
« Respuesta #2 en: Abril 09, 2015, 12:44:40 pm »
si igual me hace asi amigo
CIBER GOOGLE - CONCEPCIÓN PARAGUAY
www.enterpy.com
Primera regla de la programacion, para que vas a hacerlo complicado si lo puedes hacer sencillo

YAcosta

  • Moderador Global
  • Exabyte
  • *****
  • Mensajes: 2853
  • Reputación: +160/-38
  • Daddy de Qüentas y QüeryFull
    • Ver Perfil
    • Personal
Re:Imprimir con Printer.CurrentX y Printer.CurrentY
« Respuesta #3 en: Abril 09, 2015, 01:05:19 pm »
Y probaste con

Printer.NewPage
Me encuentras en YAcosta.com

E N T E R

  • Petabyte
  • ******
  • Mensajes: 1062
  • Reputación: +57/-13
  • www.enterpy.com
    • Ver Perfil
    • www.enterpy.com
Re:Imprimir con Printer.CurrentX y Printer.CurrentY
« Respuesta #4 en: Abril 09, 2015, 01:19:43 pm »
Si igual me da asi, lo raro es que si le saco la variable contar hace bien pero no puedo definir la posicion donde quiero que imprima
CIBER GOOGLE - CONCEPCIÓN PARAGUAY
www.enterpy.com
Primera regla de la programacion, para que vas a hacerlo complicado si lo puedes hacer sencillo

YAcosta

  • Moderador Global
  • Exabyte
  • *****
  • Mensajes: 2853
  • Reputación: +160/-38
  • Daddy de Qüentas y QüeryFull
    • Ver Perfil
    • Personal
Re:Imprimir con Printer.CurrentX y Printer.CurrentY
« Respuesta #5 en: Abril 09, 2015, 01:22:51 pm »
Haces un ciclo de 200 y 200 lineas no entra en una hoja, entiendo entonces que quieres que continue en la siguiente hoja sin rayarse.

Yo probaria con poner una validacion dentro del For, creo que alguna vez lo hice asi. Digamos si llega a 25 lineas haces el NewPage y que siga, obvio vuelves a resetear la variable interna. ¿me explique?

Edite: Puse Form cuando debi poner For
« última modificación: Abril 09, 2015, 01:29:58 pm por YAcosta »
Me encuentras en YAcosta.com

E N T E R

  • Petabyte
  • ******
  • Mensajes: 1062
  • Reputación: +57/-13
  • www.enterpy.com
    • Ver Perfil
    • www.enterpy.com
Re:Imprimir con Printer.CurrentX y Printer.CurrentY
« Respuesta #6 en: Abril 09, 2015, 01:46:01 pm »
Si amigo ya lo probe de esa forma tambien, lo que pasa si reseteo la variable me imprime de nuevo en la primera hoja y se crea la nueva pagina pero no pasa ahi
CIBER GOOGLE - CONCEPCIÓN PARAGUAY
www.enterpy.com
Primera regla de la programacion, para que vas a hacerlo complicado si lo puedes hacer sencillo

YAcosta

  • Moderador Global
  • Exabyte
  • *****
  • Mensajes: 2853
  • Reputación: +160/-38
  • Daddy de Qüentas y QüeryFull
    • Ver Perfil
    • Personal
Re:Imprimir con Printer.CurrentX y Printer.CurrentY
« Respuesta #7 en: Abril 09, 2015, 02:52:49 pm »
Doc, probe tu codigo y efectivamente sale como dices, pero creo que es porque no resteas la variable Contar, ademas de que le puse otro for y alli si me funciono. Este es el codigo que use

Bueno, me refiero a algo como este:
Código: (VB) [Seleccionar]
Private Sub btnCommand1_Click()
    Dim Contar As Long
    Dim y As Integer
    Printer.ScaleMode = vbMillimeters
   
    For i = 1 To 200
        Contar = Contar + 4
        Printer.CurrentX = 35
        Printer.CurrentY = 28 + Contar
        Printer.Print "HOLA"
        If y = 50 Then   'Puse 50 pq en mi hoja entran 50.
           Printer.EndDoc
           Contar = 0
           y = 0
        Else
           y = y + 1
        End If
    Next i
 End Sub

La prueba:
Me encuentras en YAcosta.com

E N T E R

  • Petabyte
  • ******
  • Mensajes: 1062
  • Reputación: +57/-13
  • www.enterpy.com
    • Ver Perfil
    • www.enterpy.com
Re:Imprimir con Printer.CurrentX y Printer.CurrentY
« Respuesta #8 en: Abril 09, 2015, 03:19:08 pm »
jajaja, que loco amigo Yvan y hasta tuviste que gastar tintas hojas, yo lo hacia con el doPDF

Gracias amigo.

Edito:

El code que me pasaste lo que hace es imprimir varias veces, o sea no es que solo un documento manda a la impresora
« última modificación: Abril 09, 2015, 03:24:57 pm por E N T E R »
CIBER GOOGLE - CONCEPCIÓN PARAGUAY
www.enterpy.com
Primera regla de la programacion, para que vas a hacerlo complicado si lo puedes hacer sencillo

YAcosta

  • Moderador Global
  • Exabyte
  • *****
  • Mensajes: 2853
  • Reputación: +160/-38
  • Daddy de Qüentas y QüeryFull
    • Ver Perfil
    • Personal
Re:Imprimir con Printer.CurrentX y Printer.CurrentY
« Respuesta #9 en: Abril 09, 2015, 03:22:31 pm »
jajaja, que loco amigo Yvan y hasta tuviste que gastar tintas hojas, yo lo hacia con el doPDF

Gracias amigo.

Es que me pongo la camiseta doc jajaja. Son hojas recicladas, no problem. ¿Te sirve la solución?
Me encuentras en YAcosta.com

Jeronimo

  • Gigabyte
  • ****
  • Mensajes: 402
  • Reputación: +33/-2
    • Ver Perfil
Re:Imprimir con Printer.CurrentX y Printer.CurrentY
« Respuesta #10 en: Abril 09, 2015, 04:16:23 pm »
En el código de Yván cambiá Printer.EndDoc por Printer.NewPage. Y cuando se sale del For, si Y es distinto de 50, ejecutá Printer.EndDoc.
Creo que eso debiera funcionar.

Jerónimo

E N T E R

  • Petabyte
  • ******
  • Mensajes: 1062
  • Reputación: +57/-13
  • www.enterpy.com
    • Ver Perfil
    • www.enterpy.com
Re:Imprimir con Printer.CurrentX y Printer.CurrentY
« Respuesta #11 en: Abril 09, 2015, 04:52:45 pm »
Hay un problemita con el code del amigo YAcosta, lo que pasa es que yo uso el doPDF (Impresora Virtual) para crear PDF, funciona el code pero envia como 3 documentos a la impresora y al imprimir con el doPDF tengo que guardar varias veces con diferentes nombres.

Creo que le falta el printer.endoc
CIBER GOOGLE - CONCEPCIÓN PARAGUAY
www.enterpy.com
Primera regla de la programacion, para que vas a hacerlo complicado si lo puedes hacer sencillo

YAcosta

  • Moderador Global
  • Exabyte
  • *****
  • Mensajes: 2853
  • Reputación: +160/-38
  • Daddy de Qüentas y QüeryFull
    • Ver Perfil
    • Personal
Re:Imprimir con Printer.CurrentX y Printer.CurrentY
« Respuesta #12 en: Abril 09, 2015, 05:13:04 pm »
Ah bueno, llegue a mi techo jeje- No uso eso del dopdf. A ver si con lo que te indico Jeronimo se resuelve

Suerte
Me encuentras en YAcosta.com