Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-08-2005
Avatar de User_baja1
User_baja1 User_baja1 is offline
Miembro
 
Registrado: feb 2005
Posts: 99
Poder: 20
User_baja1 Va por buen camino
Angry Twain y la resolucion...?????

Hola a todos,

Estoy usando el componente TdelphiTwain para trabajar con el escaner. (descargado de http://delphitwain.sourceforge.net)


El problema viene cuando obtengo la imagen, ya que cada usuario tiene un escaner distinto y segun el software del escaner o lo que el usuario toque, obtengo imagenes grandes o enormes. (segun la resulocion ppp)

He probado a ajustar las propiedades del escaner justo despues de que el usuario pulse el boton 'digitalizar' (o lo que sea) y se produzca la transferencia. Para el caso del software del asistente de windows para escaners funciona bien, pero para otros software, ej. hp me da error.

Me gustaria saber si alguien conoce la forma standard de controlar el escaner para que siempre trabaje de la misma forma: 150 ppp y a color.


El codigo que tengo ahora es:



if Twain.LoadLibrary then
begin
{Load source manager}
Twain.SourceManagerLoaded := TRUE;
{Allow user to select source}
SelectedSource := Twain.SelectSource;
if SelectedSource <> -1 then
begin
Source := Twain.Source[SelectedSource];
source.Loaded := TRUE;
Source.TransferMode := ttmMemory;
if (resolucion<>150) and (resolucion<>200) and (resolucion<>300) then resolucion:=150;

Source.EnableSource(true, FALSE);
//despues de que el usuario pulse digitalizar, ajusto las propiedades para que no crezca el archivo resultante
msg_error_escaner(
Source.SetICapUnits(tuPixels), 'No se puede configurar el escaner (propiedad units).');
msg_error_escaner(
Source.SetIPixelType(tbdRGB), 'No se puede configurar el escaner (propiedad color).');
msg_error_escaner(
Source.SetIYResolution(resolucion), 'No se puede configurar el escaner (propiedad ppp y.');
msg_error_escaner(
Source.SetIXResolution(resolucion), 'No se puede configurar el escaner (propiedad ppp x.');


--- donde msg_error_escaner muestra una ventana con el motivo del error ---
procedure msg_error_escaner(valor:TCapabilityRet; texto:String);
var s:String;
begin
case valor of
crSuccess:exit;
crUnsupported: s:='Capability not supported by the source.';
crBadOperation: s:='Bad combination of values from the parameters.';
crDependencyError: s:='Capability depends on another capability which is not properly set.';
crLowMemory: s:='The system is short on memory.';
crInvalidState: s:='The source or the source manager are not ready to set this capability or do the requested operation.';
crInvalidContainer:s:='The container used is invalid.';
end;
showmessage(texto+#13+ s);
end;


vale, pues el error me lo da con el software de hp en cada linea de ajuste del escaner y me dice que

'The source or the source manager are not ready to set this capability or do the requested operation.'

cosa que para el asistente de windows me funcionaba bien, logrando ajustar el escaner por programacion y haciendo caso omiso a los valores del usuario.



¿Podeis ayudarme? Me esta volviendo loco.
Gracias, David.
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


La franja horaria es GMT +2. Ahora son las 17:44:18.


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