本帖最后由 babyshow007 于 2013-06-19 12:39:03 编辑

解决方案 »

  1.   

    使用cnpack的TCnCameraEye控件试一试,应该是像素取得太小了
      

  2.   

    你拍的是bmp格式,你再直接转码成jpg就行了。效果差不多。别说有区别,没区别别压缩。压缩个大小差不多就行了。
      

  3.   

    很明显你拍出来的图像是BMP的图像,是原始的RGB图像。windows拍出来的是jpg文件是压缩过的。你需要把bmp压缩成jpg就OK了
      

  4.   

    ,你是BMW 你的宝马啊,肯定要大气一些啊!
      

  5.   

    可以保存为JPG文件的,并且在保存为JPG文件的时候,还可以设定压缩率,在清晰度与压缩率之间找到平衡点就行了。500K的JPG文件清晰度应当也很不错了。
      

  6.   

    给你一段将BMP与JPG文件互转的代码:// 根据扩展名建立图像对象
    function MakeImageByExt(const filename:String):TGraphic;
    var
      ftype : string;
    begin
      Result := nil;    ftype := UpperCase(ExtractFileExt(filename));
        if (ftype='.JPG') or (ftype='.JPEG') then
        begin
          result := TJPEGImage.Create;
        end
        else if ftype='.BMP' then
        begin
          result := Graphics.TBitmap.Create;
        end;
    end;// 生成指定文件的图形对象并加载
    function MakeImage(const filename:string):TGraphic;
    var
      r : TGraphic;
    begin
      result := nil;  r := MakeImageByExt(filename);
      if (r<>nil) and FileExists(filename) then
      begin
        try
          r.LoadFromFile(filename);
          Result := r;
        except
          r.Free;
        end;
      end;end;// 按文件名转换图形
    function ConvertImage(const srcname, destname:string):Boolean;
    var
      dest, src : TGraphic;
    begin
      Result := False;  src := MakeImage(srcname);
      if src<>nil then
      begin
        dest := MakeImageByExt(destname);
        if dest<>nil then
        begin
          try
            dest.Assign(src);
            dest.SaveToFile(destname);
            Result := True;
          except end;
          dest.Free;
        end;
        src.Free;
      end;
    end;