HALCON文本文件的写入

*文件保存路径
file_name:='./学生信息.txt'
*判断文件是否存在:1:存在;0:不存在
file_exists (file_name, file_exist)
if(file_exist==1) //文件存在
    delete_file (file_name) //删除文件重新写入 
endif

file_exists (file_name, file_exist)
*若文件不存在,则创建一个含有表头信息的新文件
if(file_exist==0)  
    *'output':将打开一个新的输出文件,以便以ASCII格式写入。
    open_file (file_name, 'output', FileHand)
    *将字符串或数字写入文件中
    fwrite_string (FileHand, '   姓名\t')
    fwrite_string (FileHand, '   班级\t')
    fwrite_string (FileHand, '   电话\t')
    *清空输出缓冲区并写入换行符
    fnew_line (FileHand)
    *关闭文件
    close_file (FileHand)
endif

file_exists (file_name, file_exist)
*若文件存在,则将数据写入到文件中
if (file_exist==1) 
    *'append':将已存在的输出文件在文件末尾打开,以便以ASCII格式追加写入。
    open_file (file_name, 'append', FileHand)
    * 第n行第一列写入relative_mileage
    fwrite_string (FileHand, '林晓霞'+'\t')
    fwrite_string (FileHand, '七(1)班'+'\t')
    fwrite_string (FileHand, '02156899'+'\t')
    *清空输出缓冲区并写入换行符
    fnew_line (FileHand)
    *关闭文件
    close_file (FileHand)
endif

### 如何在Halcon中在原图像上添加文本 为了实现在原始图像上添加文本的功能,在 Halcon 中可以使用 `disp_message` 或者 `draw_text` 函数。这些函数允许指定要显示的消息以及其位置和其他样式属性。 #### 使用 disp_message 添加文本 此方法适用于交互式的可视化窗口操作,通过打开一个绘图窗口并调用该命令向其中写入字符串: ```hdevelop * 打开一个新的图形化窗口用于展示结果 open_window (0, 0, 512, 512, 'black', WindowHandle) * 加载测试图像到Image变量里 read_image (Image, 'fabrik') * 显示图像于当前激活的窗口内 disp_image (Image, WindowHandle) * 向窗口内的特定坐标处绘制消息 disp_message (WindowHandle, 'This is a test message.', 'window', 12, 12, 'red', 'true') ``` 上述代码片段展示了如何在一个新创建的窗口中加载一张名为 "fabrik" 的图片,并在其左上方角落以红色字体显示一条简单的信息[^3]。 #### 使用 draw_text 方法 如果希望直接修改图像数据而不是仅限于屏幕上的视觉效果,则应考虑采用 `draw_text` 方式。这种方式会实际改变输入图像的内容,因此适合后续进一步处理或保存带有所需标注的新版本文。 ```hdevelop * 创建空白画布作为背景 gen_image_const (ImageBackground, 'byte', Width, Height) * 设置想要叠加的文字及其参数 Text := 'Sample Text' FontName := 'sans-serif' FontSize := 18 TextColorRGB := [255, 0, 0] * 获取文字尺寸以便计算放置位置 get_font_metrics (FontName, FontSize, FontMetrics) TextWidth := FontMetrics[7] TextHeight := FontMetrics[9] * 计算起始点使得居中文本 StartRow := trunc((Height - TextHeight)/2) StartColumn := trunc((Width - TextWidth)/2) * 将彩色值转换成灰度等级表示形式 rgb1_to_gray (TextColorRGB, TextColorGray) * 应用draw_text指令完成最终合成 draw_text (ImageResult, ImageBackground, StartRow, StartColumn, Text, FontName, FontSize, TextColorGray) ``` 这段脚本说明了怎样生成一幅带有中心对齐样本文档的全黑底色图像。这里的关键在于调整好文字的颜色、大小和确切的位置,从而确保良好的可读性和美观程度[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值