求大家给指点一下 一下代码如何使用啊

songshilong629 2016-03-07 09:47:57
想转换一下图片格式,搜到的一些代码 ,不知道如何使用,请大家指点下
Function saveimage2(openfile As String,savefile As String)
lqEncoderClsID_BMP=0h00F47C55041AD3119A730000F81EF32E &&BMP
lqEncoderClsID_JPG=0h01F47C55041AD3119A730000F81EF32E &&JPG
lqEncoderClsID_GIF=0h02F47C55041AD3119A730000F81EF32E &&GIF
lqEncoderClsID_TIF=0h05F47C55041AD3119A730000F81EF32E &&TIF
lqEncoderClsID_PNG=0h06F47C55041AD3119A730000F81EF32E &&PNG
Declare Long GdipLoadImageFromFile In GDIPlus.Dll String cFile, Long @ nativeImage
Declare Long GdipSaveImageToFile In GDIPlus.Dll Long nativeImage, String cFile, ;
String EncoderClsID, String EncoderParameters
Declare Long GdipDisposeImage In GDIPlus.Dll Long nativeImage
lcInputFile=Strconv(openfile+Chr(0),5)
lcOutputFile=Strconv(savefile+Chr(0),5)
lnImage=0
GdipLoadImageFromFile(lcInputFile,@lnImage)
GdipSaveImageToFile(lnImage, lcOutputFile, Evaluate('lqEncoderClsID_'+Upper(Justext(savefile))), Null)
GdipDisposeImage(lnImage)
Erase &openfile
Endfunc
...全文
170 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
都市夜猫 2016-03-07
  • 打赏
  • 举报
回复
函数都已经做好,调用应该不难吧

不过调用前还是需要做些修改的
1. 前 5 行定义了要转换的图片格式,留下你需要转换的格式常数,其余的可以注释或删除掉
2. 最后一行会删除原图片文件,根据需要看是否要注释掉

最后是调用方法,就简单了,例如:
cf = getpict()
if !empty(cf)
cf = forceext(cf, 'png') && png 还是什么,与你第1步确定的图片格式相同
saveimage2(getpict(), cf)
endif
这样就在原图片相同的文件夹中生成了一个同名但格式不同的图片

如果需要把转换后的图片放到其他文件夹,cf = forceext(cf, 'png') 这行改一下,或者用
cf = putfile()
让使用者临时决定

2,723

社区成员

发帖
与我相关
我的任务
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧