重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
delphi 的图像缩放示例代码如下:
10年积累的成都做网站、成都网站制作经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站制作后付款的网站建设流程,更有云霄免费网站建设让你可以放心的选择与我们合作。
//将图片缩放至指定大小
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_small.bmp',640,480);
end;
对dicom不熟悉,是一种图象文件么?,如果是的话给你个思路,在sqlserver的数据表中建个image的字段,用程序(看你熟悉哪个了)把文件以2进制的形式存取在image里,image适合于二进制文件,包括:Word文档,Excel文档,图片,音乐等不分格式,我以前用pb做过的一个人事管理里用到过照片的数据存取,如果你需要的话,我给你找找
方案一:再增加两个列,1,绘图结果的URL;2,最后一次绘图时间。网页上通过编号检索图像URL,检索不到则实时绘图。后台程序可以利用空闲时间输出到绘图结果并保存URL。
方案二:数据量较少时,可以直接将绘图结果保存早数据库,网站直接读取图像数据流。
网站获取DB中的数据请参考SQL编程,绘图代码请参考:
Image img = new Bitmap(640, 480);
Graphics g = Graphics.FromImage(img);
g.Clear(Color.Black);
for (int i = 0; i 480;i++ )
{
g.DrawRectangle(Pens.Green, i, i, 1, 1);
}
g.Dispose();
g = this.CreateGraphics();
g.DrawImage(img,new Point(0,0));
g.Dispose();
Image 控件只能通过 URL 显示图片,不能通过二进制数据加载
绑定数据源的替代解决方案:
第一步:
另外做个 aspx 页面,如 showimage.aspx 文件,该页面通过传递过来的查询字符串参数,而从数据库中加载指定的图片:
int id;
int.TryParse(this.Request.QueryString["ID"], out id);
if(id != 0)
{
// 加载数据库图片的代码
//.......
//.......
Response.ContentType = "image/Gif";
Response.BinaryWrite(已经读入btye[]类型变量中的图像);
}
最后一步:
你在需要绑定数据源的页面,绑定记录的 ID 到 Image 控件的 ImageUrl="showimage.aspx?id=%# DataBinder.Eval(Container.DataItem, "id") %" 就可以了。
这个好像做不到吧,既然都是二进制文件,存储的时候就定义字段类型为BLOB就是,现在两种类型转换是做不到的,image类型是SQL Server2005以前使用的,虽然图像数据类型也包含在SQL Server 2005和2008中,但在这些版本下不应当使用这种类型。微软称保留图像数据类型是未来向下兼容之需,在将来某个时候就会将其舍弃。