调整PNG图像的大小

问题描述 投票:5回答:5

嗨!您能否告诉我如何调整.png图像的大小?或更好地举一个例子。我一直在寻找答案很久了,似乎没有人知道如何调整.png图像的大小并保持其透明度。 :(

delphi image graphics resize png
5个回答
22
投票

[PNGImage组件的原始作者(Delphi本地组件的基础)在一个论坛上,他和其他人发布了有关如何使用PNGImage组件执行操作的代码段。

在删除论坛之前,我抓取了所有代码片段的副本,并将它们放在CodeGear Code Central网站上。

大多数(如果不是全部的话,所有这些都与本地PNG图像一起使用,并且确实维护Alpha通道。

这里是软件包中包含的示例的完整列表:

  • 平滑旋转PNG对象
  • 使用平滑算法调整TPNGObject的大小
  • 将一个PNG切片为几个较小的PNG
  • [将图像另存为位图或png。
  • 样本块后代
  • 读取所有tEXt-Chunk并将值写入TStrings对象
  • 显示带有从PNG文件提取的信息的消息框
  • 从PNG图像中查找和剪切块
  • 此方法将png转换为jpeg对象
  • 此方法将png转换为bmp对象
  • 将一个PNG覆盖另一个]
  • 这使图像半透明
  • 垂直翻转png图像并保存回来
  • 在桌面上绘制png图像
  • 这里是链接:CodeCentral PNG Methods


3
投票

您可以在Delphi 2010中使用Windows Imaging Component(WIC)。您可以在TWICImage类中加载PNG图像,然后从其句柄中提取IWICBitmapScaler接口。


1
投票

有PngImage版本(便携式网络图形Delphi)可以通过简单的StretchDraw来完成。


0
投票

不幸的是,vcldeveloper


-1
投票

我必须承认,我没有以编程方式玩png的经验。无论如何,您会发现一些库here。除了原生的Delphi PNG支持之外,我认为您会找到所有现有的库(当然是delphi的本地库)。

© www.soinside.com 2019 - 2024. All rights reserved.