GDI+介绍

【LINGO】汽油混合问题 某炼油厂有四种标准汽油,设其标号分别为1,2,3,4,其特性及库存量列于下表1中,将上述标准汽油适量混合,可得两种飞机汽油,某标号为1,2,这两种飞机汽油的性能指标及产量需求列于表2中。”(对偶价格)列出最优单纯形表中判别数所在行的松弛变量的系数,表示当对应约束有微小变动时,目标函数的变化率,输出结果中对应每一个约束有一个对偶价格。”列出最优单纯形表中判别数所在行的变量的系数,表示当变量有微小变动时,目标函数的变化率,其中基变量的。表示正无穷,如上例:目标函数中X1的变量系数为1,当它在[ 阅读详情
 

1.引言
  GDI+是Windows XP中的一个子系统,它主要负责在显示屏幕和打印设备输出有关信息,它是一组通过C++类实现的应用程序编程接口。顾名思义,GDI+是以前版本GDI的继承者,出于兼容性考虑,Windows XP仍然支持以前版本的GDI,但是在开发新应用程序的时候,开发人员为了满足图形输出需要应该使用GDI+,因为GDI+对以前的Windows版本中GDI进行了优化,并添加了许多新的功能。
  作为图形设备接口的GDI+使得应用程序开发人员在输出屏幕和打印机信息的时候无需考虑具体显示设备的细节,他们只需调用GDI+库输出的类的一些方法即可完成图形操作,真正的绘图工作由这些方法交给特定的设备驱动程序来完成,GDI+使得图形硬件和应用程序相互隔离.从而使开发人员编写设备无关的应用程序变得非常容易。

2.GDI+新增功能
  (1)渐变的画刷(Gradient Brushes)
  GDI+允许用户创建一个沿路径或直线渐变的画刷,来填充外形(shapes),路径(paths),区域(regions),渐变画刷同样也可以画直线、曲线、路径,当你用一个线形画刷填充一个外形(shapes)时,颜色就能够沿外形逐渐变化。


  (2)基数样条函数(Cardinal Splines)
  GDI+支持基数样条函数,而GDI不支持。基数样条是一组单个曲线按照一定的顺序连接而成的一条较大曲线。样条由一系列点指定,并通过每一个指定的点。由于基数样条平滑地穿过组中的每一个点(不出现尖角),因而它比用直线连接创建的路径更精确。下面是分别使用两种方法创建的图形,一个使用基数样条,一个使用直线。

  (3)持久路径对象(Persistent Path Objects)
在GDI中,路径属于设备描述表(DC),画完后路径就会被破坏。在GDI+中,绘图工作由Graphics对象来完成,你可以创建几个与Graphics分开的路径对象,绘图操作时路径对象不被破环,这样你就可以多次使用同一个路径对象画路径了。
  (4)变形和矩阵对象(Transformations & Matrix Object)
GDI+提供了矩阵对象,一个非常强大的工具,使得编写图形的旋转、平移、缩放代码变得非常容易。一个矩阵对象总是和一个图形变换对相联系起来,比方说,路径对象(PATH)有一个Transform方法,它的一个参数能够接受矩阵对象的地址,每次路径绘制时,它能够根据变换矩阵绘制。下面的图形是一个图形变换前后的例子,变换按照先缩放后旋转完成。

  (5)可伸缩区域(Scalable Regions)
  GDI+ 在区域(regions)方面对GDI进行了改进,在GDI中,Regions存储在设备坐标中,对Regions 唯一可进行图形变换的操作就是对区域进行平移。而GDI+用世界坐标存储区域(Regions),允许对区域进行任何图形变换(譬如如图所示的缩放),图形变换以变换矩阵存储,下面例子是一个区域变换前后的例子(缩放、旋转、平移)

  (6)Alpha Blending(混合)
  你可能会注意到上面显示的图形,红色未平移区域与变换后区域有一部分交叉区域,这一部分形成的梦幻效果就是由GDI+支持的Alpha Blending(混合)实现的,利用alpha融合,你可以指定填充颜色的透明度,透明颜色与背景色相互融合,填充色越透明,背景色显示越清晰,下图所示的四个椭圆被填充了同样的颜色,但由于拥有不同的透明度而呈现不同的显示效果。

  (7)多种图像格式支持.
  图像在图形界面程序中占有举足轻重的地位,GDI+除了支持BMP等GDI支持的图形格式外,还支持JPEG(Joint Photographic Experts Group)、GIF(Graphics Interchange Format)、PNG(Exchangeable Image File)、TIFF(Tag Image File Format)等图像格式,你可以直接在程序中使用这些图片文件,而无需考虑它们所用压缩算法。
  (8)其它。
  GDI+还将支持其它技术,譬如重新着色、颜色校正、元数据、图形容器,也许这些功能我们会在将来的WindowsXP或者Microsoft VisualStudio。Net中看到.


3.编程模式的改变 Device Contexts(设备描述表), Handles(句柄), 和 Graphics Objects(图形对象)
  如果你曾经使用过GDI编写过应用程序,你肯定对设备描述表(DC)的概念非常熟悉,设备描述表是Windows使用的一个数据结构,用于存储具体设备能力和与如何在设备上重绘一些项目的有关属性信息。而且视频设备的设备描述表还与特定的窗口有关。首先你必须获得一个设备描述表句柄,然后在图形绘制时,你把这个句柄作为一个参数传递给GDI图形绘制函数。当然你也可以把它传递给获得或设置设备描述表有关属性的函数。
  利用GDI+函数,你不必使用句柄或者设备描述表。相反,你可以简单地创建一个图形对象(Graphics),然后以你熟悉的面向对象的编程方式调用它的方法即可,譬如myGraphicsObject.DrawLine(parameters)。Graphics对象是GDI+的核心,正如设备描述表是GDI的核心一样,设备描述表(DC)和图形对象(Graphics)在不同的环境下扮演着同样的角色,发挥着类似的作用,但是两者也存在着这质的不同。前者使用基于句柄的编程方法而后者使用面向对象的编程方法。
  图形对象和设备对象一样,与屏幕的显示窗口有关,它包含着与项目重绘有关的属性信息(譬如平滑度),然而图形对象并没有像GDI那样与Pen(画笔)、Path(路径)、Image(图像)、Font(字体)等搅在一起。在GDI中,所有与绘图有关的绘图对象必须选入指定设备描述表中(使用 SelectObject函数),才能被指定的设备描述表所使用。而在GDI+中,你只需把这些绘图对象作为一个参数传递给图形对象Graphics方法调用即可,每一个图形对象所使用的绘图工具至于它调用方法使用的参数有关,它可以通过参数使用多种Pen和Brush绘图,而不是与特定的笔和画刷联系在一起。

Qwen-Image LoRA训练实战:从数据准备到异常修复的全流程解析 本文详细解析了Qwen-Image LoRA训练的全流程,从数据准备到参数优化再到异常修复。通过实战案例展示了如何利用LoRA技术微调Qwen-Image模型,提升中文场景下的图像生成质量,特别针对手脚生成异常等问题提供了有效解决方案。文章还分享了中文提示词优化技巧和高级训练方法,帮助开发者高效训练出高质量的LoRA模型。 阅读详情

相关推荐

看完让你的RSA提升一个台阶 [GKCTF 2021]RRRRsa

我是,今天我给大家分享一个关于RSA的题目,带大家领略的魅力。今天开始前,我们先学习一下。

m0_62102520的博客 848

GDI+是什么

GDI+为C#开发人员提供了强大的图形处理能力,使得他们可以创建出更加精美和高效的应用程序。

weixin_59272777的博客 1415

Robocup 仿真2D 学习笔记(二) 球队代码编译和上场

环境的一些问题 最近在使用rcssserver 和 rcssmonitor时可能会遇到./configure失败的问题,可以检查一下文件夹是否有makefile文件,如果是编译后的包直接sudo make install,如果还不行,还可以源码下载编译 rcssserver: https://sourceforge.net/projects/sserver/files/rcssserver/...

markchalse的博客 6014

GDI+

第一章 1.1概念 GDI+是图形设备接口的英文缩写(Graphics Device Interface),它是.NetFrameWork中的一部分,实现了对底层GDI功能的封装。GDI是系统提供的一组图形绘制接口。 DirectX是另一个与图形编程有关的微软技术。 1.2GDI+命名空间 ...

zhaijingkui的博客 1973

nRF52840 低功耗蓝牙开发指南:从硬件架构到物联网应用实战

本文深入解析nRF52840低功耗蓝牙芯片的硬件架构与开发实践,涵盖从开发环境搭建到BLE协议栈开发的详细指南。通过实战案例分享低功耗优化技巧,帮助开发者高效实现物联网应用,特别适合智能家居和工业场景。

d3e4f的博客 415

STM32L476低功耗实战:LPTIM精准定时唤醒STOP2模式与系统级功耗优化

本文深入探讨了STM32L476低功耗实战技巧,重点解析了LPTIM精准定时唤醒STOP2模式的配置与优化。通过详细的步骤指南和实战经验分享,帮助开发者实现系统级功耗优化,特别适合电池供电设备开发。文章涵盖LPTIM1定时器配置、STOP2模式进入流程及常见问题排查,助力将整机功耗降至8.2uA级别。

weixin_33686714的博客 435

GDI+学习笔记- 概述

GDI+

wangnaisheng的专栏 1695

超声波测距的15度魔法:HC-SR04测量角度特性在机器人避障中的实战技巧

本文深入探讨了HC-SR04超声波测距模块在机器人避障中的15度测量角度特性及其应用技巧。通过分析15度角的工程意义、多模块阵列设计、狭小空间优化方案及温度补偿技术,帮助开发者提升机器人环境感知能力。文章特别强调了HC-SR04模块在低成本避障方案中的核心优势与实战优化策略。

weixin_29172963的博客 430

GDI/GDI+介绍

1、GDI概述  GDI在全称是Graphics Device Interface,即图形设备接口。是图形显示与实际物理设备之间的桥梁。 GDI使得用户无需关心具体设备的细节,而只需在一个虚拟的环境(即逻辑设备)中进行操作。它的桥梁作用体现在: (1)用户通过调用GDI函数将逻辑空间的操作转化为具体针对设备驱动程序的调用。 为实现图形设备无关性,Windows 的绘图操作在一个设备描述

qq_30122639的博客 3691

SOMEIP协议--第三节[SOMEIP/SD](SD格式)

Entry和Option是SD报文中最重要的内容,是服务发现功能的承载。7.Minor Version是指当前服务的小版本号,可以配置,用于给用户区分当前服务的版本用的。注意:stop offer,stop subscribe,Subscribe Nack 这三条的TTL一定设为0,唯一和offer,subscribe,Subscribe的区别。Option用来辅助Entry实现其功能,是Entry携带的附加信息,作用上一般是用来告诉对端自己业务的ip和port信息,方便对端通过ip和port发送报文。

qq_41816308的博客 1338

重回童年的经典系列☀️|【炸弹人小游戏】制作过程+解析 | 收藏起来跟曾经的小伙伴一起梦回童年!

Unity,小游戏开发。 本篇文章对童年经典小游戏——炸弹超人进行制作和解析。不知道有没有勾起你童年的回忆呢!快来和我一起制作这个童年经典的小游戏吧! 敬请品尝!

努力前行,总会成为自己心中的那道光 13万+

C# GDI+绘图高级编程(包含滚动条后重绘)

理解绘图规则 一般来说,Windows的一个优点(实际上是现代操作系统的优点)是它可以让开发人员不考虑特定设备的细节。例如:不需要理解硬盘设备驱动程序,只需在相关的.NET类中调用合适的方法,就可以编程读写磁盘上的文件。这个规则也适用于绘图。计算机在屏幕上绘图时,把指令发送给视频卡。问题是市面上有几百种不同的视频卡,大多数有不同的指令集合功能。如果把这个i考虑在内,在应用程序中为每个视频卡驱动程序编写在屏幕上绘图的特定代码,这样的应用程序就根本不可能编写出来。这就是为什么在Windows最早的版本中有Win

波波诸葛伟 6359

【基础-单选】Row组件中有两个Text组件,如果使用justifyContent对齐方式,下面哪个属性可以实现左右两端对齐:

Row组件中有两个Text组件,如果使用justifyContent对齐方式,下面哪个属性可以实现左右两端对齐

江拥羡橙的博客 1302

python混合输出对齐问题

返回值表示计算之后的填充位数。但是一旦出现中英文混合输出的情况之下,那么我们会发现,不管使用\t制表符还是使用rjust之类的函数,都会造成无法对齐的情况,这种情况的出现是由于中文字符和英文字符占位宽度不一致导致的。可以看到,如果只有ljust,应该填充12-6个@,但是为了保证最终占位长度为12,所以只填充了2个@,这是由于把中文字符占位宽度设置为2,这样的话就不会被影响了。#这个是ljust语法,填充位数指的是字符串需要填充至几位,填充所用的字符串指的是填充时用到的字符串,可以不写,默认为空格填充。

2201_75546449的博客 596

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

混合背包问题

题目: 有N种物品和一个容量是V的背包。 物品一共有三类: 第一类物品只能用1次(01背包); 第二类物品可以用无限次(完全背包); 第三类物品最多只能用sisi次(多重背包); 每种体积是vi,价值是wi。 求解将哪些物品装入背包,可使物品体积总和不超过背包容量,且价值总和最大。 输出最大价值。 输入格式 第一行两个整数,N,V用空格隔开,分别表示物品种数和背包容...

Summer的博客 2160

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Linux中的重定向以及标准输入输出、混合输出和标准错误输出

文章目录重定向:标准输入:标准输出:混合输出:标准错误: 重定向: 标准输入: 在页面直接显示 << (cat <<eof)[> ss,>aa,> eof,ss,aa] 输入追加 cat <> /a.txt (> asa,> asfs,> afo,> efo)[asa,asfs,afo] 输入覆盖 cat < /a.txt 标准输出: > 重定向覆盖(echo “abcabcabc” > /a.tx

liu_chen_yang的博客 6191

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

Pr:音轨混合器 - 发送与输出

Pr菜单:窗口/音轨混合器Window/AudioTrackMixer在 Premiere Pro 的音轨混合器AudioTrackMixer中,发送和输出是音频信号流的两个重要概念,它们在功能和用途上既有相似之处,又有显著区别。一、发送“发送”Send是一种将音轨的音频信号“复制”并路由到另一个子混合 Submix轨道(也称“辅助轨道” Auxiliary Track)或混合 Mix...

qq_41176800的博客 957

python 关于中英文混合输出的那点事

python里面的len 对于汉字和非汉字都视为1个字符,然而输出的时候中文占的是2个非中文的宽度,使得一些输出无法对齐。 网上有些资料说使用空格填充的时候可以使用中文的空格,也就是 chr(12288) 但是对于中英文混合来说,这个就没用了 a="你好呀123" b="123456" print("{:<10}哈哈哈".format(a,chr(12288))) print("{...

forOnward的博客 4025

突破语言壁垒:通义千问Qwen中英文混合处理实战指南

你是否在处理中英文混合文档时遇到过翻译生硬、术语混乱的问题?是否在跨语言对话中因模型理解偏差导致沟通不畅?本文将系统介绍通义千问Qwen(GitHub_Trending/qw/Qwen)在中英文混合场景下的核心优势与最佳实践,帮助你轻松实现高质量双语交互、内容生成与文档处理。 ## 为什么选择Qwen处理跨语言任务? 通义千问Qwen作为阿里巴巴达摩院研发的大规模语言模型,其核心优势在于专为中...

gitblog_00367的博客 1117

【java】关于out和err混合输出顺序问题

在eclipse执行以下代码时:public class TestDemo { public static void main(String[] args){ try { Integer.valueOf("abc");   } catch (Exception e) {          System.out.println(e);...

滚妞的猫抓板 1695

Windows多进程printf导致输出混合的问题

最近学习Windows进程控制相关的知识,发现一个以前没有注意到的问题:在多个进程共用一个控制台的时候,如果在某个时刻一起printf输出,那么输出的文字将会混合在一起。要解决这个问题,必须互斥的打印才行,在这里我使用互斥体来实现。#include&lt;windows.h&gt; #include&lt;iostream&gt; static LPCTSTR Mutex_Name="aaa"; ...

mrbone11的博客 1731

【算法】动态规划专题⑩ —— 混合背包问题 python

混合背包结合了三种不同类型的背包问题:0/1背包、完全背包和多重背包

查理零世的博客 1431

千问3.5-2B图文对话教程:支持中英文混合提示词的图片理解实操

本文介绍了如何在星图GPU平台上自动化部署千问3.5-2B镜像,实现图文对话功能。该镜像支持中英文混合提示词,能够理解图片内容并生成描述,适用于电商商品图审核、文档图片转文字等场景,提升工作效率。

weixin_33622085的博客 400

通义千问多模态体验:图片+文本混合处理,云端免配置

本文介绍了基于星图GPU平台自动化部署“通义千问2.5-7B-Instruct大型语言模型 二次开发构建by113小贝”镜像的完整流程,实现图文混合内容的智能处理。该平台无需本地配置,支持一键启动多模态AI服务,适用于OCR增强理解、内容审核、创意文案生成等典型场景,帮助用户高效完成图像语义分析与跨模态推理任务。

SilvermistRaven28的博客 1071

混合三种背包问题

混合三种背包问题 问题: 如果将 01背包问题、完全背包问题、多重背包问题混合起来。也就是说,有的物品只可以取一次(01背包),有的物品可以取无限次(完全背包),有的物品可以取的次数有一个上限(多重背包)。应该怎么求解呢? 一、背包与完全背包的混合 考虑到在 01背包问题 和 完全背包问题 中给出的伪代码只有一处不同,故如果只有两类物品:一类物品只能取一次,另一类物品可以取无限次,那...

但行好事,莫问前程 606

GPT-SoVits 改动API实现后,中英文混合输出问题

使用GPT_SoVITS的TTS,合成中英混合音频,通过接口调用。

AskForEverything的博客 2212
上一篇: 通过游戏的地图介绍GDI+
下一篇: 在VB.NET编程中使用数组
xmlscript
博客等级 码龄25年 1粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值