Delphi轻松实现查看服务器图片大小 (delphi显示服务器图片大小)

随着互联网技术的不断发展、云计算技术的不断进步,越来越多的应用程序需要获取服务器上的图片信息。在此过程中,查看服务器图片大小是非常重要的一步,因为它可以让我们更好地了解服务器上存储的图片信息。本文将介绍如何使用。

一、什么是Delphi

Delphi是由Borland公司开发的一款面向对象的可视化编程工具,其特点是简单易学、快速开发、可视化工具丰富、界面友好、代码可重用等等。Delphi的使用范围非常广泛,包括桌面应用程序、服务器应用程序、互联网应用程序等多种类型的应用程序。

二、如何使用Delphi查看服务器图片大小

1. 创建一个Delphi应用程序

我们需要创建一个Delphi程序,可以使用Delphi的IDE(集成开发环境)来创建,也可以使用原始代码创建。具体步骤如下:

1.1 打开Delphi IDE。

1.2 选择“文件”->“新建”->“应用程序”。

1.3 双击Form1,打开Form1窗口。

2. 设计用户界面

在Delphi中,可以使用“组件”来设计用户界面,这些组件包括按钮、标签、文本框、列表框等等。具体步骤如下:

2.1 在工具箱中选择Button组件,将其拖入Form1中。

2.2 在Button上输入“查看”文本。

2.3 在工具箱中选择Image组件,将其拖入Form1中。

2.4 在Image组件属性中,将Picture属性设置为空。

2.5 在工具箱中选择OpenDialog组件,将其拖入Form1中。

2.6 在Button的OnClick事件中,使用OpenDialog组件选择服务器上的图片文件。

2.7 在Button的OnClick事件中,使用Image组件显示所选图片,并使用Internet协议获取服务器图片大小。

3. 编写代码

使用Delphi编写代码可以非常简单,具体步骤如下:

3.1 在Form1的声明部分添加以下代码:

uses

ShellAPI;

type

TForm1 = class(TForm)

Image1: TImage;

Button1: TButton;

OpenDialog1: TOpenDialog;

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

3.2 在Button1的OnClick事件中添加以下代码:

procedure TForm1.Button1Click(Sender: TObject);

var

iSize: Integer;

begin

if OpenDialog1.Execute then

begin

Image1.Picture.LoadFromFile(OpenDialog1.FileName);

iSize := FileSize(OpenDialog1.FileName);

ShowMessage(‘图片大小为:’+IntToStr(iSize)+’字节’);

end;

end;

4. 运行程序

现在,我们已经完成了Delphi程序的设计和代码编写,可以运行程序来查看服务器图片大小了。具体步骤如下:

4.1 点击“运行”按钮或按下F9键运行程序。

4.2 点击“查看”按钮,使用OpenDialog选择服务器上的图片。

4.3 程序会在Image1组件中显示所选图片,并在弹出窗口中显示图片大小。

本文介绍了如何使用。通过上述步骤,我们可以开发一个简单的应用程序来实现此功能。值得一提的是,Delphi除了可以查看文件大小,还可以查看文件夹大小、压缩文件大小等等,具有非常强大的功能。因此,对于擅长使用Delphi的开发者来说,开发这样的程序是非常容易的。

相关问题拓展阅读:

(DELPHI)已经存入SQLSERVER中的图片数据(image字段)太大,怎么直接在数据库中压缩?或怎么用程序实现

delphi 的图像缩放示例代码轮喊如下:

//将图片缩腊码野放至指定大小

procedure SizeBmp(const Source, Dest: string; const x, y: integer);

var

  aBmp, bBmp: tbitmap;

  scalex, scaley: real;

begin

  aBmp := TBitmap.Create;

  bBmp := TBitmap.Create;

  try

    aBmp.LoadFromFile(Source);

    scaley := aBmp.Height / y;

    scalex := aBmp.Width / x;

   模和 bBmp.Width := round(aBmp.Width / scalex);

    bBmp.Height := round(aBmp.Height / scaley);

    bBmp.PixelFormat := pfDevice;

    SetStretchBltMode(bBmp.Canvas.Handle, COLORONCOLOR);

    StretchBlt(bBmp.Canvas.Handle, 0, 0, bBmp.Width, bBmp.Height,

      aBmp.Canvas.Handle, 0, 0, aBmp.Width, aBmp.Height, srccopy);

    bBmp.SaveToFile(Dest);

  finally

    aBmp.Free;

    bBmp.Free;

  end;

end;

procedure TForm1.btn1Click(Sender: TObject);

begin

  SizeBmp(‘e:\1112.bmp’,’e:\1112_all.bmp’,640,480);

end;

delphi里空春面有消辩zlib这个单元,里面有压缩的函数TCompressionStream可斗桥耐以调用!参考下面的代码去处理吧!

var

SourceStream: TCompressionStream;

DestStream: TMemoryStream;

Count: Integer;

Begin

//获得图像流的原始尺寸

Count := CompressedStream.Size;

DestStream := TMemoryStream.Create;

SourceStream:=TCompressionStream.Create(CompressionLevel, DestStream);

Try

CompressedStream.SaveToStream(SourceStream);

//将原始流进行压缩, DestStream中保存着压缩后的流

SourceStream.Free;

CompressedStream.Clear;

//写入原始流的尺寸

CompressedStream.WriteBuffer(Count, SizeOf(Count));

//写入经过压缩的流

CompressedStream.CopyFrom(DestStream, 0);

finally

DestStream.Free;

end;

end;

DELPHI好像有散贺个zip的第三方控件,你可以考虑辩兄把数据读出来,压缩后再存回去冲灶派,然后,在需要使用的时候再把它解压。

fg

没什么好办法,压缩好了再放进去。

在Delphi中实现图片的旋转、缩放

好长时间没有写东西了 并不是因为前面的东西遭受了很多西红柿和鸡蛋 而是自己实在没有什么真实的东西写宴氏梁出来核清供大家参考 但是最近在帮一个朋友做一个项目的时候 遇到了在delphi中对图像的简单处理 于是不停的从网上找资料 翻看csdn以前的帖子 从我搜索的结果发现很多人会在各种项目中遇到类似的图片处理问题 但是多数得到的答案似乎并不完整(因为很多都没有结帖 也可能是个人习惯的问题 呵呵 希望大家读了我这个文章之后 能够家开结帖速度) 于是我把我遇到的问题和解决方案写在下面 供大家参考 同时欢迎大家继续拍砖

  在正式内容之前要把我要解决的问题写在前面 同时也让读者有一个好的定位 从而不会因为我在处理过程中的拙劣手段而感到恼火 这里主要解决的问题是在Delphi中将用扫描仪扫描得到的图片进行 度旋转 从而得到适合使用的图片 并且由于不能正确把握图片的大小 因此要对图片进行简单的缩放 而我的解决方法也完全是根据此要求进行 因为对于效率 图片处理之后的清晰度考虑的不是很多 同晌运时带来的好处就是程序看起来很简单

  首先 我没有扫描仪 因此我不知道使用扫描程序(已经提供)得到的图片是什么格式 而在Delphi的帮助中说 A bitmap is a powerful graphics object used to create manipulate (scale scroll rotate and paint) and store images in memory and as files on a disk 所以我的之一步就是要把我的片转化为TBitmap来处理 在转化格式的同时 我将图片的实际大小改变 以适合后面选取部分图像的需要 函数如下

procedure TMainForm ChangeImageFormate;var Bitmap : TBitmap;Zoom : Integer;beginBitmap := TBitmap Create; // trywith ImageCert do beginBitmap Assign(Picture Graphic); // Picture := nil; // Zoom := Max(Bitmap Width div Width Bitmap Height div Height)+ ; // Width := Bitmap Width div Zoom; // Height := Bitmap Height div Zoom; // Canvas StretchDraw(Rect( Width Height) Bitmap); // end;finallyBitmap Free;end; end;

  我想这段代码并不是很复杂 ImageCert是一个TImage控件放在Form上 唯一可能陌生的就是第八句 但是大家可以从Delphi的帮助中得到很到说明 我在这就不再翻译了(我的建议就是多看帮助) 同时应该指出的是第三句作用是很关键的 如果去掉这一句同时你的图片格式不是bmp的话 就会出现 只有bitmap才能才能修改 的错误

  第二步就是实现图片的旋转 因为程序要求只是每次旋转 度即可 因此这里也比较容易处理 处理的手段就是按照像素进行替换 实现过程如下

procedure TMainForm RotateImage;var x y : Integer;TmpBitMap : TBitmap;beginTmpBitMap := TBitmap Create;tryTmpBitMap Assign(ImageCert Picture Graphic);with ImageCert do beginPicture Bitmap Height := TmpBitMap Width;Picture Bitmap Width := TmpBitMap Height;for x:= to Height dofor y:= to Width doCanvas Pixels := TmpBitMap Canvas Pixels;Height := TmpBitMap Width;Width := TmpBitMap Height;end;finallyTmpBitMap Free;end;end;

  这段程序也没有什么好讲的 但是几个高度和宽度的设置令我是分的烦闷 总是觉得多做的点什么 但是却偏偏去不掉任何一行 如果哪位有兴趣可以尝试一下 更好把结果也告诉我一声 而且在这个里面由于TImage和TBitmap都有各自的canvas 所以使用哪一个可能也是值得研究的 但是由于时间有限就没有在尝试了

  至于在部分取图的过程中 我是用了一个TShape 然后用将brush的style设置成bsclear 在ImageCert的onMouseMove中安排这个TShap的位置 这样做不是很灵敏 因为当鼠标在TShape上面时则不会起到作用 所幸影响不大 同时我在TShape的OnMouseDown事件中取出TShape下面的部分图片 这个时候如果你的图片没有做过缩放处理 就会发现取出的图片和我们看到的位置不相符(当然是在TImage没有正确显示图片大小的情况下)

  可以肯定这个方法不是很好的方法 但是至少它解决了问题

关于delphi显示服务器图片大小的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。


数据运维技术 » Delphi轻松实现查看服务器图片大小 (delphi显示服务器图片大小)