本项目利用Delphi编程语言实现对百度AI平台提供的图像文字识别服务的接口调用,旨在展示如何将OCR技术应用于实际的软件开发场景中。
在使用Delphi2010进行编码实现开发过程中遇到了一些问题,并在此分享以供遇到同样情况的朋友参考。
1. SSL问题:我们采用的是indyhttp控件,在启用SSL功能时,需要添加IdSSLIOHandlerSocketOpenSSL1组件并将其与idhttp的iohandler属性相连接。接着在SSLoptions设置中将method属性改为sslvSSLv23,并确保已放置了所需的两个DLL文件。
2. 图片编码问题:起初尝试过多种编码方式但总是收到错误提示“image format error”。后来发现indy控件默认会对参数进行重新编码,关闭httpoptions下的hoforceencodeparams选项后图片上传正常。具体来说就是将图片以base64格式编码后再urlencode即可。
3. 中文乱码问题:在接收到返回值时如果直接使用result:= indyhttp.post(url,img)这样的方法获取结果会导致indy再次对返回值进行编码,进而导致解码失败。因此建议采用流接收post请求的返回值,并将其从utf8转换为unicode以解决此问题。
以上是在开发过程中遇到的一些常见问题及解决方案,希望对你有所帮助。