cximage mix 注意图像合成时内部坐标

2024-09-02 18:58

本文主要是介绍cximage mix 注意图像合成时内部坐标,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

double h1,w1,h2,w2,h3,w3,h4,w4,bpp;
    //getheight(w4,h4);
    CString spath1 = _T("测试1");
    CString spath2 = _T("测试2");
    CString spath3 = _T("测试3");
    CStringArray arraystr;
    arraystr.Add(spath1);arraystr.Add(spath2);arraystr.Add(spath3);


    CxImage img1,img2,img3,img4;
    
    CxImage imgarray[3];
    
    img1.Load("D:\\z1.jpg");
    img2.Load("D:\\z2.jpg");
    img3.Load("D:\\z3.jpg");

    h1=img1.GetHeight();
    w1=img1.GetWidth();

    h2=img2.GetHeight();
    w2=img2.GetWidth();

    h3=img3.GetHeight();
    w3=img3.GetWidth();

    h4 = h1 + h2 + h3;
    w4 = max(w3,max(w1,w2));
    bpp=img1.GetBpp();
    img4.Create(w4,h4,bpp);
    /*img4.MixFrom(img1,0,h1+h2);
    img4.MixFrom(img2,0,h1);
    img4.MixFrom(img3,0,0);*/
    // Y轴上方为负数;
    img4.Mix(img1, CxImage::ImageOpType::OpScreen,0,-h3-h2);
    img4.Mix(img2,CxImage::ImageOpType::OpScreen,0,-h3);
    img4.Mix(img3,CxImage::ImageOpType::OpScreen,0,0);
    if (img4.IsValid())
    {
        for(int idx=0; idx <3; ++idx)
        {
            CString sFormat = arraystr[idx];
            CxImage::CXTEXTINFO  textword;

            img4.InitTextInfo( &textword );

            _stprintf( textword.lfont.lfFaceName,  _T("Times New Roman"));
            textword.lfont.lfCharSet   =  GB2312_CHARSET  ;
            textword.lfont.lfHeight      =20; 
            textword.lfont.lfWeight    =  40 ;
            textword.lfont.lfItalic    =  0 ; 
            textword.lfont.lfUnderline =  0 ; 
            textword.fcolor =  RGB( 0,0,0 );
            textword.bcolor = RGB(   150, 205,205 );
            textword.opaque =  0; //背景
            textword.b_opacity = (float)(0)/(float)100.;  //透明度
            textword.b_round   = (BYTE) 1 ; //四舍五入为背景矩形半径
            //_stprintf( textword.text, _T("水印文字") );
            
            //sFormat.Format(_T("测试%d"),idx+1);
            memset(textword.text,0,sizeof(TCHAR)*255);
            for(int i=0; i < sFormat.GetLength(); ++i)
            {
                textword.text[i] = sFormat.GetAt(i);
            }
            if(idx==0)
            {
                img4.DrawStringEx(0,w1/2.0,h1,&textword);
            }
            if(idx==1)
            {
                img4.DrawStringEx(0,w1/2.0,h1+h2,&textword);
            }
            if(idx==2)
            {
                img4.DrawStringEx(0,w1/2.0,h1+h2+h3,&textword);
            }
            
        }
        
    }

    img4.Save("D:\\z4.jpg",CXIMAGE_FORMAT_JPG);

这篇关于cximage mix 注意图像合成时内部坐标的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1130792

相关文章

使用Python实现图像LBP特征提取的操作方法

《使用Python实现图像LBP特征提取的操作方法》LBP特征叫做局部二值模式,常用于纹理特征提取,并在纹理分类中具有较强的区分能力,本文给大家介绍了如何使用Python实现图像LBP特征提取的操作方... 目录一、LBP特征介绍二、LBP特征描述三、一些改进版本的LBP1.圆形LBP算子2.旋转不变的LB

Python实现word文档内容智能提取以及合成

《Python实现word文档内容智能提取以及合成》这篇文章主要为大家详细介绍了如何使用Python实现从10个左右的docx文档中抽取内容,再调整语言风格后生成新的文档,感兴趣的小伙伴可以了解一下... 目录核心思路技术路径实现步骤阶段一:准备工作阶段二:内容提取 (python 脚本)阶段三:语言风格调

OpenCV图像形态学的实现

《OpenCV图像形态学的实现》本文主要介绍了OpenCV图像形态学的实现,包括腐蚀、膨胀、开运算、闭运算、梯度运算、顶帽运算和黑帽运算,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起... 目录一、图像形态学简介二、腐蚀(Erosion)1. 原理2. OpenCV 实现三、膨胀China编程(

基于Python和MoviePy实现照片管理和视频合成工具

《基于Python和MoviePy实现照片管理和视频合成工具》在这篇博客中,我们将详细剖析一个基于Python的图形界面应用程序,该程序使用wxPython构建用户界面,并结合MoviePy、Pill... 目录引言项目概述代码结构分析1. 导入和依赖2. 主类:PhotoManager初始化方法:__in

Java捕获ThreadPoolExecutor内部线程异常的四种方法

《Java捕获ThreadPoolExecutor内部线程异常的四种方法》这篇文章主要为大家详细介绍了Java捕获ThreadPoolExecutor内部线程异常的四种方法,文中的示例代码讲解详细,感... 目录方案 1方案 2方案 3方案 4结论方案 1使用 execute + try-catch 记录

使用Python开发一个图像标注与OCR识别工具

《使用Python开发一个图像标注与OCR识别工具》:本文主要介绍一个使用Python开发的工具,允许用户在图像上进行矩形标注,使用OCR对标注区域进行文本识别,并将结果保存为Excel文件,感兴... 目录项目简介1. 图像加载与显示2. 矩形标注3. OCR识别4. 标注的保存与加载5. 裁剪与重置图像

Java实战之自助进行多张图片合成拼接

《Java实战之自助进行多张图片合成拼接》在当今数字化时代,图像处理技术在各个领域都发挥着至关重要的作用,本文为大家详细介绍了如何使用Java实现多张图片合成拼接,需要的可以了解下... 目录前言一、图片合成需求描述二、图片合成设计与实现1、编程语言2、基础数据准备3、图片合成流程4、图片合成实现三、总结前

基于WinForm+Halcon实现图像缩放与交互功能

《基于WinForm+Halcon实现图像缩放与交互功能》本文主要讲述在WinForm中结合Halcon实现图像缩放、平移及实时显示灰度值等交互功能,包括初始化窗口的不同方式,以及通过特定事件添加相应... 目录前言初始化窗口添加图像缩放功能添加图像平移功能添加实时显示灰度值功能示例代码总结最后前言本文将

基于人工智能的图像分类系统

目录 引言项目背景环境准备 硬件要求软件安装与配置系统设计 系统架构关键技术代码示例 数据预处理模型训练模型预测应用场景结论 1. 引言 图像分类是计算机视觉中的一个重要任务,目标是自动识别图像中的对象类别。通过卷积神经网络(CNN)等深度学习技术,我们可以构建高效的图像分类系统,广泛应用于自动驾驶、医疗影像诊断、监控分析等领域。本文将介绍如何构建一个基于人工智能的图像分类系统,包括环境

购买磨轮平衡机时应该注意什么问题和技巧

在购买磨轮平衡机时,您应该注意以下几个关键点: 平衡精度 平衡精度是衡量平衡机性能的核心指标,直接影响到不平衡量的检测与校准的准确性,从而决定磨轮的振动和噪声水平。高精度的平衡机能显著减少振动和噪声,提高磨削加工的精度。 转速范围 宽广的转速范围意味着平衡机能够处理更多种类的磨轮,适应不同的工作条件和规格要求。 振动监测能力 振动监测能力是评估平衡机性能的重要因素。通过传感器实时监