Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Impresión
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-03-2019
WHILENOTEOF WHILENOTEOF is offline
Miembro
 
Registrado: mar 2008
Posts: 234
Poder: 19
WHILENOTEOF Va camino a la fama
Hola, yo tampoco le encuentro mucha lógica a que la resolución de la pantalla afecte a lo que se imprima, por lo que es posible que FastReport haya introducido algo de la resolución de la pantalla (dpi) en el código de impresión. Yo recientemente tuve que ajustar algunas pantallas de un programa para que se vieran bien cuando el usuario ampliaba a 125% ó 150%, cada TForm de Delphi tiene una propiedad scaled que por defecto está a true, si esto es así, si el usuario trabaja a 125%, lo que hace Delphi es escalar los controles y tamaño de letras para adaptarlo a esa resolución, pero el resultado no era bueno. Lo que hago es poner la propiedad Scaled:= false (no quiero que Delphi escale el formulario) y chequeo si la propiedad PixelsPerInch es distinta de 96 (96 = 100%), si es así yo escalo las fuentes de los controles y lo que me interesa para que se vea bien esa pantalla. No todas las fuentes escalan igual y hay algunas que según el tamaño se desajustan de lo esperado.

Resumiendo el rollo, yo probaría a desactivar la propiedad scaled del formulario donde tengas los componentes de fast-report y/o del formulario de previsualización del informe, a ver si sale como esperas.
Responder Con Cita
  #2  
Antiguo 15-03-2019
afxe afxe is offline
Miembro
 
Registrado: jul 2004
Ubicación: Malaga-España
Posts: 295
Poder: 22
afxe Va por buen camino
Gracias WHILENOTEOF... tu apunte es realmente interesante y me va a servir para algunas cosas que me pasan. No obstante, no es el caso que ahora me ocupa, el FastReport está en un DataModule, y aunque le cambie la propiedad Scaled a False del Form que llama a la función definida en ese DataModule, sigue disminuyendo el código de barras.

No tengo ni idea de porqué cuando toco la resolución de la pantalla me comprime el EAN impreso, he llegado a la conclusión que el Windows "Falsea" de alguna manera el tamaño de la letra y el FastReport concluye que tiene que estrechar la impresión para que quepa, cuando realmente los dpi de la pantalla no deben afectar a los de impresión.

He notado que con el QuickReport también me pasa, cuando aumento el tamaño de la letra en las propiedades de Windows, se disminuye proporcionalmente el informe impreso en el folio. ¿?¿?¿?¿?¿?
__________________
Amar al mundo apasionadamente.
Responder Con Cita
  #3  
Antiguo 15-03-2019
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.671
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Para que no demos "palos de ciego", ni jueguemos a las adivinanzas, ¿por qué no pones el código que estás usando?
Responder Con Cita
  #4  
Antiguo 15-03-2019
WHILENOTEOF WHILENOTEOF is offline
Miembro
 
Registrado: mar 2008
Posts: 234
Poder: 19
WHILENOTEOF Va camino a la fama
Cita:
Empezado por afxe Ver Mensaje
Gracias WHILENOTEOF... tu apunte es realmente interesante y me va a servir para algunas cosas que me pasan. No obstante, no es el caso que ahora me ocupa, el FastReport está en un DataModule, y aunque le cambie la propiedad Scaled a False del Form que llama a la función definida en ese DataModule, sigue disminuyendo el código de barras.

No tengo ni idea de porqué cuando toco la resolución de la pantalla me comprime el EAN impreso, he llegado a la conclusión que el Windows "Falsea" de alguna manera el tamaño de la letra y el FastReport concluye que tiene que estrechar la impresión para que quepa, cuando realmente los dpi de la pantalla no deben afectar a los de impresión.

He notado que con el QuickReport también me pasa, cuando aumento el tamaño de la letra en las propiedades de Windows, se disminuye proporcionalmente el informe impreso en el folio. ¿?¿?¿?¿?¿?
Axfe, una opción que podrías probar es asignarle a la propiedad Zoom del componente Barcode de Fastreport según la ampliación que le hayan puesto a la pantalla, que puedes deducir la propiedad PixelsPerInch que tenga el formulario :
- si vale 96 --> el zoom es 100%
- si vale 120 --> el zoom es 125 %
- ....
Responder Con Cita
  #5  
Antiguo 21-03-2019
afxe afxe is offline
Miembro
 
Registrado: jul 2004
Ubicación: Malaga-España
Posts: 295
Poder: 22
afxe Va por buen camino
Gracias por tu aportación.... pero a pesar de tener el tamaño de la fuente al máximo, el valor de la propiedad PixelsPerInch seguía siendo 96, no obstante, he cogido tu idea y activando un flag cambio el zoom y el height del componente. Pongo el fuente:

Código Delphi [-]
  if frxIdentificativa.FindComponent('BarCode1') <> nil then begin
    TfrxBarCodeView(frxIdentificativa.FindComponent('BarCode1')).Text := Format('%3.3s%1.1d%9.9d%3.3s', [vEmpresa, vModificador, vNumero, vTipo]);
    // if Application.MainForm.PixelsPerInch > 96 then begin (no ha funcionado)
    if l_ZoomActivo then begin  // Por la resolución del tipo de letra.
      TfrxBarCodeView(frxIdentificativa.FindComponent('BarCode1')).Zoom   := 1.5;
      TfrxBarCodeView(frxIdentificativa.FindComponent('BarCode1')).Height := 120;
    end;
  end;

  frxIdentificativa.PrintOptions.Printer    := G_IMPRESORA_IDENTIFIC;
  frxIdentificativa.PrintOptions.Copies     := 1;
  frxIdentificativa.PrintOptions.ShowDialog := False;
  frxIdentificativa.PrepareReport(True);
  frxIdentificativa.Print;
__________________
Amar al mundo apasionadamente.
Responder Con Cita
  #6  
Antiguo 21-03-2019
afxe afxe is offline
Miembro
 
Registrado: jul 2004
Ubicación: Malaga-España
Posts: 295
Poder: 22
afxe Va por buen camino
Sigo sin dar una explicación al por qué al aumentar el tamaño del fuente en pantalla provoca que se estreche las impresiones.
__________________
Amar al mundo apasionadamente.
Responder Con Cita
  #7  
Antiguo 21-03-2019
WHILENOTEOF WHILENOTEOF is offline
Miembro
 
Registrado: mar 2008
Posts: 234
Poder: 19
WHILENOTEOF Va camino a la fama
Cita:
Empezado por afxe Ver Mensaje
Sigo sin dar una explicación al por qué al aumentar el tamaño del fuente en pantalla provoca que se estreche las impresiones.

Continúo pensando que es posible que hayan metido los dpi de la pantalla en el código de la impresión, aunque imagino que en unos componentes tan usados como estos ya se hubiese reportado y solucionado. El check del dpi no lo tienes que hacer sobre PixelPerInch del form, sino de la pantalla, este es el código que utilizo para escalar una fuente originalmente con una altura de 8, cuando veo que el usuario tiene la pantalla con zoom:

Código Delphi [-]
 if (Screen.PixelsPerInch <> 96) then
  begin
   Opciones.Font8:= Round(8 * Screen.PixelsPerInch / 96);
  end;
Responder Con Cita
  #8  
Antiguo 26-03-2019
afxe afxe is offline
Miembro
 
Registrado: jul 2004
Ubicación: Malaga-España
Posts: 295
Poder: 22
afxe Va por buen camino
Hola de nuevo. El valor de Screen.PixelsPerInch no varía cuando aumento el tamaño de fuente en pantalla (botón derecho sobre el escritorio->"Resolución de Pantalla"->"Aumentar o reducir el tamaño del texto y de otros elementos"->"Cambiar el tamaño de todos los elementos"->Poner a tope "Más Grande"), sigue siendo 96, pero he observado que sí varia la propiedad Screen.DesktopWidth, que disminuye según el tamaño que se seleccione, pero no me vale, porque también varía si toco la resolución de pantalla sin cambiar el tamaño los elementos y el cambio de resolución de pantalla no afecta a la impresión, sólo cuando cambio el tamaño.
__________________
Amar al mundo apasionadamente.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Códigos de barras con rave sgarrido Varios 3 13-09-2011 18:47:34
Reconocimiento de Códigos de Barras. afxe Gráficos 1 10-11-2009 09:22:54
Códigos de barras Carmelo Cash OOP 11 15-11-2007 09:58:00
Codigos de Barras jostrix PHP 5 21-10-2004 14:58:26
codigos de barras the darkness Varios 6 22-04-2004 18:02:29


La franja horaria es GMT +2. Ahora son las 23:03:05.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi