Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 10-09-2003
Avatar de sercornejov
sercornejov sercornejov is offline
Miembro
 
Registrado: may 2003
Ubicación: Neiva - Colombia
Posts: 88
Poder: 24
sercornejov Va por buen camino
O.K.

El formulario tiene un boton que envia a un procedimiento con parámetros:

Código:
procedure TfrmPpal.tabular2(Ini,Fin,Sal: integer);
var
 encuesta,i,j,k,l,m,t,PuntoMatrizVer,IncrementoVer,verificador,Deltay:integer;
  nombre:string;
  Hoja,bmp:TBitmap;
  verificacion:array[0..55] of Tcolor;
  cuadro1,cuadro2:TRect;
  tercio1,tercio2:TMemoryStream;
  myibBlob: TStream;
  gif:TGIFImage;

begin
	encuesta:=HojaIni;
  for j:=hojaini to hojafin do
  	begin
    	hoja:=Tbitmap.Create;
    	Cuadro1.Left:=16;
      Cuadro1.Top:=21;
      Cuadro1.Right:=826;
      Cuadro1.Bottom:=368;
      Cuadro2.Left:=16;
      Cuadro2.Top:=21;
      Cuadro2.Right:=826;
      Cuadro2.Bottom:=368;
      Deltay:=0;
      if j<10 then
        nombre:='Explorar000'+IntToStr(j)+'.bmp'
        else if (j>9) and (j<100) then
          nombre:='Explorar00'+IntToStr(j)+'.bmp'
          else if (j>99) and (j<999) then
            nombre:='Explorar0'+IntToStr(j)+'.bmp';
      hoja.LoadFromFile(ruta+nombre);
    	for i:=1 to 3 do
      	begin
        	g1.Progress:=encuesta;
          if frac(encuesta/sal)=0 then
        		if prgbarTabulacion.Position<prgbarTabulacion.Max then
            	prgbarTabulacion.StepIt;
          gif:=TGIFImage.Create;
          bmp:=Tbitmap.Create;
          bmp.Height:=347;
          bmp.Width:=810;
          gif.Height:=347;
  				gif.Width:=810;
          ibtblEncuesta.Active:=true;
          ibtblEncuesta.Insert;
          myibBlob:=ibtblEncuesta.CreateBlobStream(ibtblEncuestaBMPS,bmWrite);
          tercio1:=TMemoryStream.Create;
          tercio2:=TMemoryStream.Create;
          ibtblEncuestaIDENCUESTA.Value:=encuesta;
          for k:=0 to 57 do
          	begin
            	IncrementoVer:=0;
              verificador:=0;
              PuntoMatrizVer:=0;
              for l:=px1[k] to px2[k] do
              	begin
                  for m:=py1[k] to py2[k] do
                    begin
                      verificacion[PuntoMatrizVer]:=hoja.Canvas.Pixels[l,m+deltay];
                      if verificacion[PuntoMatrizVer]=clwhite then
                        IncrementoVer:=1
                        else
                        	IncrementoVer:=0;
                      verificador:=verificador+IncrementoVer;
                    end;
                end;
              if verificador=0 then
              	ibtblEncuesta.Fields[k+1].value:=1
                else
                	ibtblEncuesta.Fields[k+1].value:=0;
            end;
          bmp.Canvas.CopyRect(bmp.Canvas.ClipRect,hoja.Canvas,cuadro1);
          bmp.SaveToStream(tercio1);
          gif.Assign(bmp);
          gif.SaveToStream(tercio2);
          myibBlob.CopyFrom(tercio2,0);
          tercio1.Free;
          myibblob.Free;
          tercio2.Free;
          gif.Free;
          Cuadro1.Left:=16;
      		Cuadro1.Top:=cuadro1.Bottom;
      		Cuadro1.Right:=826;
      		Cuadro1.Bottom:=cuadro1.Bottom+347;
          encuesta:=encuesta+1;
          deltay:=deltay+348;
          ibtblEncuesta.Post;
          ibtscPpal.Commit;
        end;  // fin rutina de tabulacion de 3 encuestas por hoja
      hoja.Free;
    end;  // fin rutina de tabulacion de hojas
  pnlOcultar.SendToBack;
  ibtblEncuesta.Active:=true;
  ibtblEncuesta.Refresh;
  ibtblEncuesta.Last;
  ibtblEncuesta.First;
end;
Bueno los parámetros son
HojaIni: inicio de las hojas escaneadas y guardadas como archivo con el nombre "Explorar0001.bmp"
HojaFin: Fin de las hojas escaneadas y guardadas como archivo con el nombre "Explorar0689.bmp"

Cada archivo es una hoja de encuesta con tres encuestas cada una. este archivo es de 850x1100 pixeles. El procedimiento, mediante el Trect Cuadro1 y cuadro2 se desplaza en la lectura de las encuestas.

En el uses esta gifimage que es la de TGIFImage de Andrew Malander.


Sergio
__________________
En Colombia hay muchos, pero muchos colombianos muy buenos. Los violentos son pocos y los vamos a controlar...
Responder Con Cita
Respuesta



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 01:23:06.


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