当前位置: 首页 > news >正文

Creating a Product Line Visual Identity-将自身产品线与其他产品区分开来

摘要

产品线应通过精心选定的视觉特征(如启动图标、启动闪屏)实现与其他产品线的清晰区分、易于识别。本文将介绍如何为自家产品线实现视觉标识组件的开发配置。

本示例用例学习目标

CAAAfrProductLine 示例用例

  • CAAAfrProductLine 功能说明
  • CAAAfrProductLine 启动方式
  • CAAAfrProductLine 源码存放路径

操作步骤详解

内容小结

参考文献

本用例学习要点

本用例旨在演示如何创建用于启动应用程序的加载模块,以及如何为名为 CAAProductLine 的虚拟产品线创建视觉标识资源 [1]。

CAAAfrProductLine 示例用例

CAAAfrProductLine 是 CAAApplicationFrame.edu 框架下的一个示例用例,用于演示 ApplicationFrame(应用程序框架) 的功能特性。

CAAAfrProductLine 功能作用

CAAAfrProductLine 示例用例将创建用于启动产品线应用 CAAProductLine 的加载模块,并包含可自定义该产品线视觉标识的全部资源文件。

CAAAfrProductLine 启动方法

若要启动 CAAAfrProductLine,需先搭建编译环境,随后编译 CAAAfrProductLine 及其依赖组件,再配置运行环境,最后执行该示例用例 [2]。
请勿在命令行中输入模块名称,应输入产品名称。

CAAAfrProductLine 代码获取路径

CAAAfrProductLine 示例用例仅包含一个源代码文件:CAAAfrProductLine.cpp
位于 CAAApplicationFrame.edu 框架的 CAAAfrProductLine.m 模块中:
Windows 系统: 安装根目录 \CAAApplicationFrame.edu\CAAAfrProductLine.m\
Unix 系统:安装根目录 / CAAApplicationFrame.edu/CAAAfrProductLine.m/
其中安装根目录为 CAA 光盘的安装目录。
在 Windows 系统下,若要通过桌面快捷方式启动应用程序,还需要额外依赖其他文件,这些文件同样存放于 CAAAfrProductLine.m 目录下。

详细步骤

视觉标识组件的创建分为以下步骤:
  • 创建用于启动应用程序的主程序
  • 提供图形资源文件
  • 创建资源定义文件
假定产品线名称为 CAAProductLine

创建启动应用程序的主程序

创建该主程序时,首先需要新建模块目录,例如 CAAAfrProductLine.m
该模块目录需包含以下内容:
  • 一份如下所示的 Imakefile.mk 文件:
    #
    # LOAD MODULE FOR CAAAfrProductLine
    #
    BUILT_OBJECT_TYPE=LOAD MODULE
    #
    LINK_WITH=CATApplicationFrame JS0FM JS0GROUP 
  • src 目录中:包含一个 C++ 源文件,该文件仅以产品线名称作为入参来实例化 CNext 类,示例文件:CAAAfrProductLine.cpp
    #include "CNext.h"CNext Product ("CAAProductLine");
  • 一个名为 icon1.ico 的图标文件,内含产品线图标,用于在 Windows NT 桌面上将该应用程序显示为桌面快捷方式。
    该图标可通过 Microsoft Developer Studio 工具创建,在【插入】菜单中选择【资源】选项,调出插入资源对话框,即可完成图标制作。

    图片

     你可以选择导入现有的位图文件。点击导入并选中该文件。你也可以自行绘制图标。点击新建,随即会显示图形工具栏颜色工具栏

    图片

     创建好图标后,通过另存为将图标保存到当前模块的 src 目录中。同时 Microsoft Developer Studio 会自动生成两个文件:
    Script1.rc 资源文件。只需添加加粗所示的一行代码,即可规避 Windows 系统漏洞。  

    //Microsoft Developer Studio 生成的资源脚本
    //
    #include "resource.h"#define APSTUDIO_READONLY_SYMBOLS
    /////////////////////////////////////////////////////////////////////////////
    //
    // 由 TEXTINCLUDE 2 资源生成
    //
    #include "afxres.h"/////////////////////////////////////////////////////////////////////////////
    #undef APSTUDIO_READONLY_SYMBOLS/////////////////////////////////////////////////////////////////////////////
    // 美式英语 资源#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
    #ifdef _WIN32
    LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
    #pragma code_page(1252)
    #endif //_WIN32/////////////////////////////////////////////////////////////////////////////
    //
    // 图标资源
    //// 将 ID 值最小的图标放在首位,确保应用程序图标
    // 在所有系统上显示效果保持一致。
    IDI_ICON1               ICON    DISCARDABLE     "icon1.ico"// 添加此行可让图标正常显示在桌面,并规避 Windows 系统缺陷
    IDI_ICON2               ICON    DISCARDABLE     "icon1.ico"#ifdef APSTUDIO_INVOKED
    /////////////////////////////////////////////////////////////////////////////
    //
    // 文本包含段
    //1 TEXTINCLUDE DISCARDABLE 
    BEGIN"resource.h\0"
    END2 TEXTINCLUDE DISCARDABLE 
    BEGIN"#include ""afxres.h""\r\n""\0"
    END3 TEXTINCLUDE DISCARDABLE 
    BEGIN"\r\n""\0"
    END#endif    // APSTUDIO_INVOKED#endif    // 美式英语 资源
    /////////////////////////////////////////////////////////////////////////////#ifndef APSTUDIO_INVOKED
    /////////////////////////////////////////////////////////////////////////////
    //
    // 由 TEXTINCLUDE 3 资源生成
    ///////////////////////////////////////////////////////////////////////////////
    #endif    // 非 APSTUDIO 调用模式
    

    resource.h 头文件

    //{{无依赖项}}
    // 由 Microsoft Developer Studio 自动生成的包含头文件
    // 供 Script1.rc 资源脚本调用
    //
    #define IDI_ICON1                       101// 为新资源对象预留后续默认编号
    // 
    #ifdef APSTUDIO_INVOKED
    #ifndef APSTUDIO_READONLY_SYMBOLS
    #define _APS_NEXT_RESOURCE_VALUE        102   // 下一个资源ID起始值
    #define _APS_NEXT_COMMAND_VALUE         40001 // 下一个命令ID起始值
    #define _APS_NEXT_CONTROL_VALUE         1000  // 下一个控件ID起始值
    #define _APS_NEXT_SYMED_VALUE           101   // 下一个符号ID起始值
    #endif
    #endif

resource.h 文件移动到 LocalInterfaces 目录,然后执行 mkmk -u 命令编译生成模块文件。

提供图形资源

所需的图形资源需复制到所用框架的以下路径:
CNext\resources\graphic 目录或其子目录中。

需准备的图形资源包括:

  • 用于窗口标题栏的产品线图标:CAAProduct.bmp。该图标在 Windows 和 UNIX 系统下需满足以下规格要求:
    • 宽度:16 像素;高度:17 像素;分辨率:每英寸 96 像素;16 色索引位图
  • 产品线标识 logo。需将其复制到以下目录:
    CNext\resources\graphic\icons
    P1 和 P2 外观样式可使用不同的 logo 文件,其规格要求如下:

    • Windows 系统:宽度 130 像素;高度 29 像素;分辨率 72 像素 / 英寸;24 位真彩色图像  
      Windows 系统 P1 外观样式:CAALogoP1NT.bmp

      图片

       适配 P2 外观样式 的 Windows 系统:CAALogoP2NT.bmp

      图片

    • UNIX 系统:宽度 130 像素,高度 29 像素,分辨率 72 像素 / 英寸,256 色索引图像
      适配 P1 外观样式 的 UNIX 系统:CAALogoP1IX.bmp

      图片

       适配 P2 外观样式 的 UNIX 系统:CAALogoP2IX.bmp

      图片

  • 产品线启动封面:包含一张位图和一个动画文件:CAASplash.bmpCAASplash.avi。需将这两个文件复制到目录:CNext\resources\graphic\splashscreens。 

    图片

  • 产品线背景图片。需将该文件复制到 CNext\resources\graphic\icons 目录下。其规格参数要求如下: 
    • Windows 系统(CAABackgroundNT.bmp):宽度:640 像素;高度:512 像素;分辨率:254 像素 / 英寸;24 位真彩色图像。实际显示尺寸为 320×256 像素。  

      图片

    • UNIX 系统(CAABackgroundIX.bmp):宽度:1280 像素;高度:1024 像素;分辨率:254 像素 / 英寸;24 位真彩色图像。实际显示尺寸为 320×256 像素。

      图片

  • 产品线对话框背景图片,仅适用于 Windows NT 系统。需将该文件复制到 CNext\resources\graphic\icons 目录下。其规格参数要求如下: 
    • P1 样式(CAADecorationP1.bmp):宽度:500 像素;高度:36 像素;分辨率:72 像素 / 英寸;256 色索引色图像。   

      图片

    • P2 样式(CAADecorationP2.bmp):宽度:55 像素;高度:1000 像素;分辨率:72 像素 / 英寸;24 位真彩色图像。程序仅截取该图片下半部分进行显示。

      图片

创建资源文件

资源文件必须使用你为产品线指定的名称,本例中为 CAAProductLine。该文件说明如下:
  • CAAProductLine.CATRsc 用于引用已提供的各类图形资源。
    // .CATRsc of a product line
    // --------------------------------------
    ApplicationFrame.Icon.Name  = "CAAProduct";
    SplashScreen.Name           = "CAASplash";// P1 Look
    ApplicationLogo.P1.NT       = "CAALogoP1NT";
    ApplicationLogo.P1.Unix     = "CAALogoP1IX";
    DialogBoxBottom.P1          = "CAADecorationP1";  // Available NT Only// P2 Look 
    ApplicationLogo.P2.NT       = "CAALogoP2NT";
    ApplicationLogo.P2.Unix     = "CAALogoP2IX";
    DialogBoxBottom.P2          = "CAADecorationP2";   // Available NT Only
    BackgroundImage.NT          = "CAABackgroundNT";
    BackgroundImage.Unix        = "CAABackgroundIX";

现在你可以通过桌面快捷方式启动应用程序,查看其各类视觉标识组件效果。

小结

若要为产品线设置专属视觉标识,仅在 Windows 系统下,你可以生成用于启动应用程序的可执行文件(EXE),并自定义关联专属图标,该图标同时可作为桌面快捷方式图标。

你可在 UNIX 和 Windows 系统中,创建适配应用程序的文字与图形资源并进行展示。

References

[1] What Is the Product Line Visual Identity
[2] Building and Launching a CAA V5 Use Case
[3] Contextual Help
http://www.jsqmd.com/news/776049/

相关文章:

  • 装机选主板别只看CPU!PCIe 5.0 SSD和显卡的带宽到底够不够用?
  • 2026年深圳直营驾培全攻略:纯直营 vs 加盟乱象,如何避坑快速拿证 - 优质企业观察收录
  • 2026 常州卖金闭眼冲!福正美报价即实付 - 福正美黄金回收
  • 魔兽世界自定义服务器连接神器:Arctium启动器完全指南
  • 2026 芜湖彩钢瓦金属屋面厂房防水防腐公司排名|5 家正规防水防腐企业推荐 + 避坑指南 - 速递信息
  • 哔哩下载姬实战攻略:5步掌握B站视频高效下载技巧
  • Intel老Mac升级Sonoma失败?教你用组合键降级或重装原厂系统,不丢数据救活电脑
  • 2026深圳纯直营驾培与智驾陪驾服务选购指南:如何避坑拿证快 - 优质企业观察收录
  • VRM格式转换终极指南:从PMX到VRM的5步专业转换流程
  • MCP协议实战:构建AI代理与Remnawave数据服务的标准化连接器
  • 2026 山东最新空气源热泵推荐!临沂优质厂商榜单发布,靠谱 - 十大品牌榜
  • windows cmd中 gemini cli无法登录
  • 山海工作手机管理系统,避免销售离职带走客户 - 山海工作手机管理系统
  • Windows cmd常用操作
  • DeepTutor:基于大语言模型的智能体原生个性化学习系统部署与实战
  • 如何用文言文编写深度学习模型:wenyan-lang机器学习框架的终极指南
  • 天赐范式第35天:TC-001悬赏令——第三个公开悬赏分子CCOC1CCCCC1C1CCCCC1C,~
  • 2026年深圳纯直营驾培与智驾陪驾完全指南:宝华驾校官方直达与行业避坑手册 - 优质企业观察收录
  • 告别ST-Link!用Proteus 8.13仿真STM32F103C8的保姆级教程(附完整代码)
  • 别再贩卖焦虑了!用“可可英语”和“精读第六册”Unit 7B,手把手教你把英语学习焦虑变成高效输入
  • 2026年4月市面上做得好的不锈钢六角棒源头厂家推荐,不锈钢六角棒/不锈钢黑棒/不锈钢光圆,不锈钢六角棒源头厂家推荐 - 品牌推荐师
  • 3个技巧快速上手AI Toolkit:在VS Code中轻松玩转AI模型开发 [特殊字符]
  • 2026 山东最新水源热泵推荐!临沂优质厂家榜单发布,靠谱 - 十大品牌榜
  • Unity点云可视化终极指南:Pcx插件实现高效三维数据渲染
  • 使用Taotoken的CLI工具一键配置Python开发环境
  • 如何用XXMI Launcher统一管理6款米哈游游戏模组:终极解决方案指南
  • 基于大语言模型的体育博彩分析智能体:从信息整合到推理决策
  • 从Single-stack到Multi-stack:在ETAS RTA-OS中为你的AutoSar项目选择最佳栈策略
  • STM32 Keil MDK烧录报错‘Cannot Load Flash Programming Algorithm’?手把手教你从零配置Flash算法(附F4系列实战)
  • 别再为840Dsl OPCUA通讯发愁了!我用C# WinForm一步步打通了数据采集