GDI+输出文字问题 [问题点数:20分,结帖人jjbhql]

Bbs1
本版专家分:0
结帖率 95.24%
Bbs1
本版专家分:0
Bbs9
本版专家分:55744
版主
Blank
微软MVP 2014年4月 荣获微软MVP称号
2013年4月 荣获微软MVP称号
2009年4月 荣获微软MVP称号
2010年4月 荣获微软MVP称号
Blank
黄花 2014年2月 .NET技术大版内专家分月排行榜第二
Blank
蓝花 2014年4月 .NET技术大版内专家分月排行榜第三
2014年3月 .NET技术大版内专家分月排行榜第三
2013年10月 .NET技术大版内专家分月排行榜第三
Bbs1
本版专家分:0
Bbs5
本版专家分:3734
Bbs4
本版专家分:1159
Bbs1
本版专家分:0
Bbs7
本版专家分:18541
Bbs7
本版专家分:22942
(C#)GDI+绘制垂直文字
有时候在应用程序C# GDI+绘图中需要使用到垂直<em>文字</em>,在网上搜索一下。 有两种方法:1.使用坐标轴旋转实现。                       2.使用StringFormat实现。 1.使用坐标轴旋转实现。 这种方法比较常见,也是比较实用的方法。但对于我个人来说,使用这种方法有一定的不便。首先这种方法使用时需要注意坐标,因为坐标轴旋转,坐标也需要旋转,这需要计算。
VFP调用GDI+在图片上写文字
VFP调用GDI+在图片上写<em>文字</em> 函数用法如下: SET PROCEDURE TO 程序1.prg AddTextToImage(原图片,写入<em>文字</em>,字体,<em>文字</em>大小,颜色,位置X座标,位置Y座标,<em>输出</em>文件名) 说明:<em>输出</em>文件的格式为jpg格式,输入格式不能为Gif格式
GDI设置字体旋转的方法
方法1:通过设置WorldTransform进行变换:angle为<em>文字</em>旋转的角度position为<em>文字</em>的位置 XFORM xForm; xForm.eDx = float(position.x); xForm.eDy = float(position.y); xForm.eM11 = float(cos(angle)); xForm.eM12 = float(sin(a...
VC++ GDI+编程的字体和文本绘制
字体是<em>文字</em>显示和打印的外观形式,它包括了<em>文字</em>的字样、风格和尺寸等多方面的属性。适当地选用不同的字体,可以大大地丰富<em>文字</em>的外在表现力。例如,把<em>文字</em>中某些重要的字句用较粗的字体显示,能够体现出突出、强调的意图。当然,文本<em>输出</em>时还可使用其格式化属性和显示质量来优化文本显示的效果。字体属性和字体创建字体的属性有很多,这里主要介绍字样、风格和尺寸三个主要属性。字样是字符书写和显示时表现出的特定模式,例如,对...
利用MFC和GDI+给图像指定位置加上汉字
以下仅是核心代码,还需要遵守GDI+一般使用过程,即先完成GDI+安装及其在VC中配置,使用前要进行初始化等。以前收藏的网页找不到了,请上百度查询。 已经证实在VC6.0中可用,使用中有<em>问题</em>可联系我,QQ:39541895 核心代码: Image  image( L"IMG_3143.JPG" );             //加载原图,格式可以有很多种,具体查GDI+    Graph
Windows GDI:CDC绘制文本
函数原型int CDC::DrawText( const CString& str, LPRECT lpRect, UINT nFormat);功能使用DC关联的字体,文本颜色,背景颜色绘制文本。示例// 设置文本颜色为红色,背景颜色为白色 COLORREF oldTextColor = dc.GetTextColor(); COLORREF oldBkColor = dc.Get
C++ GDI+ 带阴影的文字功能的实现
用GDI+的优秀图形<em>输出</em>功能可以非常方便的实现<em>文字</em>特效,其中一个带阴影的<em>文字</em>便是其中一例。       许多简单的<em>文字</em>特效只是简单的将<em>文字</em>用不同的颜色与不同的位置<em>输出</em>一次或多次,本文所讨论的阴影效果借助GDI+的反走样能力生成透明的阴影与半阴影。 这儿所述的方法先在绘图平面上绘制一个比预期小的<em>文字</em>,然后放大它。      由于代码注释很详细,直接上代码: ULONG_PTR g_<em>gdi</em>P
使用GDI+ MeasureString方法计算显示 输入文本的长度
// stdafx.h : include file for standard system include files,//  or project specific include files that are used frequently, but//      are changed infrequently//#if !defined(AFX_STDAFX_H__660C12D0_6133_459C_B633_7A2DFC9FFD72_
WPF GDI+字符串绘制成图片(一)
本章讲述:在WPF中,使用GDI+技术,把字符串数据,根据文本字体样式,大小绘制成字符串图片; 1、XAML前台代码 &amp;lt;Window x:Class=&quot;WPF_GDI_Test.MainWindow&quot; xmlns=&quot;http://schemas.microsoft.com/winfx/2006/xaml/presentation&quot; xmlns:x=&quot;ht...
GDI绘图之设置文本背景色为透明度
SetBkMode(dc, TRANSPARENT); #include // 窗口处理函数 HINSTANCE g_hInstance = 0; LRESULT CALLBACK WndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) { HDC dc; PAINTSTRUCT ps;
Gdi+绘制半透明文字并保存为透明背景图片
透明、半透明原理:看画刷的颜色,Color的第一个参数指定透明值,范围0-255,0全透明,255不透明 1.新建MFC工程,名为newtou 2.添加头文件 #include using namespace Gdiplus; #pragma comment(lib, "Gdiplus") //Gdi+初始化 GdiplusStartupInput <em>gdi</em>p
GDI+双缓冲解决闪烁问题
在使用GDI绘图时,经常以panel控件进行重绘,在每次重绘的过程中会出现闪烁<em>问题</em> 解决方案: 新建一组件集成Panel,然后在内部实现双缓冲 public partial class StandPanel : Panel { public StandPanel() { SetStyle(ControlStyles.AllPaintingInWmPaint, tru...
初探GDI——基本框架(文字输出
由之前彩色随机矩形线条获得启发,今日学习<em>文字</em><em>输出</em>时,使用随机色定义字体颜色,获得彩色变换<em>文字</em><em>输出</em>。由于WM_PAINT消息目前仅在窗口大小发生改变时触发,故获得炫彩效果需拖动窗口边框。在定位字体位置时,观察到TextOut()函数<em>输出</em>位置定位在字符串左上角。同时发现通过MoveWindow()函数设置窗口位置、大小时,设置的大小为窗口区大小,并非之前以为的客户区大小。之后会检索窗口区大小的设置<em>问题</em>。
计算gdi 函数DrawString绘制的字符串象素长度和高度
CMemoryDC dcMem(&dc); Gdiplus::Graphics graphics(dcMem.m_hDC);     LOGFONT lfFont = CFunctions::GetDefaultFont();  lfFont.lfHeight = -12;  lfFont.lfWeight |= FW_BOLD;  Font font1(dcMem.GetSaf
GDI+(绘制图片背景文字)
题目要求:  编写一个Window应用程序,利用Graphics对象的DrawString方法在窗体上绘制<em>文字</em>“山东省烟台大学”,要求用一幅图片填充。 输入代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Dr
C#使用GDI+绘制高质量图和字体
对于GDI+,在正常的操作,Bitmap-- Graphcis -- DrawImage或者DrawString ,生成图片的话,会产生很多杂点,或者是图片质量不稳定..尤其是在读取图片后,生成缩略图之后,文件会被压缩而失真..主要原因是因为没有重新设置Graphics的几个属性..1.Graphics.SmoothingMode属性: 例如SmoothingMode.HighQuality可以产
MFC 双缓冲 GDI+ Graphics 在图片上画图写字 避免闪烁
缘起:需要在MFC Static控件上显示持续变化的数据,控件背景为某类型图片的一部分。 之前
VB使用GDI绘制漂亮文字的实例在屏幕上画出漂亮的文字,有轻微的阴影和羽化效果,可以显示在任何的程序之上,透明背景状态
VB使用GDI绘制漂亮<em>文字</em>的实例在屏幕上画出漂亮的<em>文字</em>,有轻微的阴影和羽化效果,可以显示在任何的程序之上,透明背景状态
windows GDI+ 离屏绘制文字图片
windows GDI+ 离屏绘制<em>文字</em>图片 由于之前都是在linux开发界面,转到windows还真不适应,然后开发工具是VS2015,目的就是不需要把图片文 字绘制到界面上,而是绘制到一张透明图上,方便我们对图片进行操作。之前也在网上搜索过相关资料,确实挺少 的,现在把实现的功能分享给大家,省的大家走弯路。 1. 创建 bitmap 以及 graphic句柄 m
矢量图标签绘制-字体倾斜角度设计-GDI+ 绘制倾斜字体
字体倾斜如何实现?用C#代码绘制矩形的示例如下:     //假设待处理的矩形 长宽为     var w = 120;     var h = 60;     //创建graphics     graphics = pictureBox1.CreateGraphics(); ;//pictureBox1为界面中一个PictureBox控件     graphics.Clear(Color.Gr...
vb.net GDI+入门——使用DrawString显示文本
在GDI+ 中,我们是使用Graphics 的 DrawString 方法来在对象的表面绘制文本,其它还需要用到FontFamliy、Font、StringFormat等类来控制文本的特征。在前面我们已经了解过Font类,这里我们通过本文重点来了解DrawString方法以及StringFormat类。 一、用GDI+ 绘制文本需要经过下面步骤: 1、在窗体代码前面引入Drawing2D 命名
C#GDI+ 处理文本的两个小技巧
1     代码:   Graphics g = this.CreateGraphics(); g.FillRectangle(Brushes.White, this.ClientRectangle); Font f = new Font("Times New Roman", 12); Font bf = n
关于GDI+在透明Bitmap上绘制时边缘有黑色重影的解决(WPF中)
最近在做软件工程课程的作业,其中有一个地方需要用到GDI+绘制图像并将句柄传给托盘当作托盘图标,可是因为楼主本人的强迫症比较严重,所以在测试时发现了一些小<em>问题</em>: 红线中是托盘区最左侧的那个图标    在底部为暗色时“41”与其右侧“38”看不出任何区别,但当底部用白色时就能看到“41”那个位置的图标黑边非常严重,这是为什么呢?应该是在与GDI+对图层复合的处理,就像以前在JAVA Swing中一样...
绘图、GDI、颜色及字体
1,任何时候当程序需要直接在屏幕或打印机上绘图的时候,都需要调用GDI函数,GDI函数包含了一些用于绘制图形、位图以及文本的函数。2,Windows的设备环境是GDI的关键元素,它代表了物理设备。每一个C++设备环境对象都有与之对应的Windows设备环境,并且通过一个32位类型的HDC句柄来标识。3,MFC库设备环境类基类CDC包含了绘图所需要的所有成员函数,并且几乎所有派生类只有构造函数和析构
C#GDI绘制自定义字体
绘制自定义的字体: private void PaintMessageBox()         {             Graphics g = this.panel1.CreateGraphics();//为panel1创建Graphics对象             Font ft = new Font("黑体", 17F, System.Drawing.FontStyle.Regula
GDI+基础知识 反锯齿技术
锯齿效果是绘图表面中像素的粒子化造成的。例如绘制一条对角线时,基于像素的本质只能是图形类似于对角线,如图阶梯状效果: 在绘制曲线和文本时也会出现这种<em>问题</em>,都是因为屏幕上的像素使图像呈现这个锯齿状效果。 反锯齿技术就是为了让绘制曲线、对角线和文本这样的图形操作获得更好的效果。反锯齿的原理是通过改变具有阶梯状效果的像素附近的像素修改颜色——在足够高的分辨率下就会得到较平滑的效果。如图:
菜鸟的GDI文字沿着路径旋转
看了很多网页,发现就是没有<em>文字</em>可以沿着路径排列的东西,特意做了一个源码,不才,刚学VC,只能做到这种程度了,围绕着一个圆心来绘制<em>文字</em>。
GDI+计算文本矩形区域
因为GDIPlus不支持类似CDC::DrawText中DT_CALCRECT的功能。而MeasureString又只能计算单行文本所占的宽度,特意设计此函数。 /* 参数: lpRect,输入时用于指定位置和文本的最大宽度;<em>输出</em>时指定文本的矩形区域。 nFormat,格式,采用GDI的DrawText的DTXX来控制,如果指定DT_CALCRECT则计算矩形区域,否则绘制文本。 算法思路: 1、
使用 GDI+ 绘制有间距的文本
在 .NET Framework 中 Graphics.DrawString 方法提供了基本的文本绘制功能。然而,这个方法本身缺乏对字符格式的控制能力,例如不支持多数文本处理器支持的字符间距(大概微软认为不会有人编写基于 .NET 的文本处理器)。这个<em>问题</em>最简单的解决方法是将整个字符串“化整为零”,一个字符一个字符的按照指定间距画出来。然而这样做会产生大量的临时字符串,而且有巨大的 PInvoke
MFC单文档应用程序基础训练——文本输出、绘图等
MFC单文档应用程序基础训练——文本<em>输出</em>、绘图等
gdi+的画图抗锯齿原理
<em>gdi</em>+的画图抗锯齿原理最近解决以前的一个<em>问题</em>时需要画一个没有锯齿的椭圆区域来,以前的版本画的椭圆被客户投诉锯齿太明显,我一看锯齿确实明显,如果放在大平板这种dpi比较低的屏幕上那就更明显了。 听说<em>gdi</em>+能够抗锯齿,然后就用了一下,画出来的椭圆果然没有了锯齿。本以为事情就这样顺利的结束了,结果出现了意外。我用<em>gdi</em>+画出来的圆边缘非常光滑,但是最后生成的的椭圆区域却依然锯齿满满。 最后将<em>gdi</em>
C#利用GDI+绘制旋转文字
C#利用GDI+绘制旋转<em>文字</em>,可实现在矩形范围内旋转文本,转发过来,供大家分享学习
GDI+:自定义控件时如何使用Region来输出特定区域
这是我的一个小工具中用到的一个功能。这个工具需要能对图片进行一些编辑和保存 我我们的一个功能就是,在图片的任意位置双击之后,都会添加一个附加的控件出来,并且显示在图片上 看起来很不错,但是那个白色的正方形背景是在不好看,能不能只是用那个圆圈呢?下面这样显然更加好一些 那这是如何做到的呢?按说所有的Windows Forms控件在Render出来的时候,都会有一个矩形的区域的。看看下面代码吧 protected override void OnPaint(PaintEventArgs
VB使用GDI+技术绘制文字的一个特殊效果,源码来自网络
VB使用GDI+技术绘制<em>文字</em>的一个特殊效果,源码来自网络,很多国外的高手确实比国内的更务实一些,希望大家多多学习精髓,制作出更好的效果。 杀毒: 3 6 0:检测无毒 危险代码: 未进行完全检测,请注意调试。
C#中使用GDI+绘制辉光效果文字
<em>问题</em>在这里:http://blog.csdn.net/johnsuna/archive/2005/11/22/534725.aspx#813055@To fer_ba:-------------------------// http://www.brawdraw.com版权所有,勿作商用-------------------------using System;using System.Drawi
VB6 GDI+ 入门教程[4] 文字绘制
http://vistaswx.com/blog/article/category/tutorial/page/2 VB6 GDI+ 入门教程[4] <em>文字</em>绘制 2009 年 6 月 18 日 7条评论 标签: GdiPlus,vb,<em>文字</em> 分类: Tutorial,VB6 GDI+ 图形我们已经会画了,现在还有一个<em>问题</em>,就是怎么显示<em>文字</em>呢?这一篇我将介绍GDI+中绘制<em>文字</em>的推荐方...
VC++GDI+绘制字体
FontFamily fontFamily(L"微软雅黑");//楷体_GB2312"   Font font(&fontFamily, 12, FontStyleRegular, UnitPixel);   SolidBrush solidBrush(Color(255, 0, 0, 255));   WCHAR string3[] = L"hello baby!";   <em>gdi</em>a.Se
GDI+画曲线外型的变形文字(可用于图形验证码)
先看效果:关键代码:        private void DrawWords(Graphics graphics, int width, int height, string phrase)        {            graphics.FillRectangle(Brushes.White, 0, 0, width, height);            using (var
C#利用GDI+绘制旋转文字等效果
    C#中利用GDI+绘制旋转文本的<em>文字</em>,网上有很多资料,基本都使用矩阵旋转的方式实现。但基本都只提及按点旋转,若要实现在矩形范围内旋转文本,资料较少。经过琢磨,可以将矩形内旋转转化为按点旋转,不过需要经过不少的计算过程。利用下面的类可以实现该功能。   [csharp] view plaincopy using System;   using System.C...
C#中使用GDI+绘制形状时自动缩放文本
<em>问题</em>描述   给自己单位开发的应用程序,里面有个功能是使用C#中的GDI+功能开发的在固定区域显示指定内容。   最初实现起来很简单,因为显示内容的区域大小是固定的,要显示的内容的字体和字号也是固定的,直接使用Graphics类中的DrawString方法就可以搞定。效果如下图所示:   用户使用这个模块已经有一段时间了。最近突然提出来在这个区域中显示的内容要加长,这样的话再使用固定的字...
GDI+中文字描边
在网络地图中,有时为突出注记<em>文字</em>,需要将注记<em>文字</em>进行描边,以更好与周边环境颜色区分,使地图可视性更强。 在GDI+中,使用DrawStirng()方法绘制Text,绘制的起始位置与我期望位置有差异,所以,更改为使用FillPath( )绘制<em>文字</em>,然后再用Path描边,完全一气呵成的做法。 但是,发现FillPath( )绘制的效果与DrawString( )绘制效果很大不同,使用Dra
GDI+学习------之渐变色
Graphics graphics(dc.GetSafeHdc()); graphics.Clear(Color::White); //定义三种参与渐变的色彩 Color colors[] = { Color::Red, //红色 Color::Green , //过渡色为绿色 Color::Blue //蓝色 };  //定义三种颜色的位置 float p
GDI+方式截取系统屏幕
#include #include #include using namespace std; #pragma comment(lib, "<em>gdi</em>plus") int GetEncoderClsid(const TCHAR *format, CLSID *pClsid) { //using namespace Gdiplus; UINT num = 0;
GDI画图时的锯齿效果弱化
 GDI画图时的锯齿效果弱化 当在画图时,图形有时会出现锯齿,可以使用SmoothingMode.AntiAlias来消除 代码如下: g.SmoothingMode = SmoothingMode.AntiAlias; 使图像的边缘圆滑清晰锐化的可以试试FillPath 代码如下 g.FillPath((Brushes.Black), path);或者是 针对于文本锯齿的
GDI文字绘制和windows下opengl文字绘制小结
GDI绘制<em>文字</em>,要设置<em>文字</em>的属性,主要就是通过设置DC中的font对象来实现的。 font对象的创建可以由createfont()、createfontIndirect()来实现。 HFONT CreateFont( int nHeight, // height of font int nWidth, // average
GDI+测算文字绘制范围
啥也不罗嗦,上代码: Gdiplus::SolidBrush brush(Gdiplus::Color(124,25,28)); Gdiplus::RectF bound; SIZE sz; HDC hDC = gs.GetHDC(); SetTextCharacterExtra( hDC, 0 ); SetTextJustification( hDC, 0, 1 );
GDI文字输出,在MM_LOMETRIC模式下DrawText不能输出任何文字
这是一个MFC对话框程序,绘制函数如下:rn[code=c]rnvoid CTGraphDialog::OnPaint() //向导默认生产的对话框绘制函数rnrn if (IsIconic())rn rn CPaintDC dc(this); // 用于绘制的设备上下文rnrn SendMessage(WM_ICONERASEBKGND, reinterpret_cast(dc.GetSafeHdc()), 0);rnrn // 使图标在工作区矩形中居中rn int cxIcon = GetSystemMetrics(SM_CXICON);rn int cyIcon = GetSystemMetrics(SM_CYICON);rn CRect rect;rn GetClientRect(&rect);rn int x = (rect.Width() - cxIcon + 1) / 2;rn int y = (rect.Height() - cyIcon + 1) / 2;rnrn // 绘制图标rn dc.DrawIcon(x, y, m_hIcon);rn rn elsern rn //CDialog::OnPaint();rn CPaintDC dc(this);rn Test_DrawText(dc); //调用DrawText测试函数rn //PaintDialog(dc);rn rnrnrnvoid CTGraphDialog::Test_DrawText(CDC& dc) //测试rnrn int dt=0;rn int idc=dc.SaveDC();rnrn dc.SetMapMode(MM_LOMETRIC); //将这行屏蔽了DrawText()就能<em>输出</em><em>文字</em>了rnrn CString s("abcdefg");rn dc.TextOut(0,0,s,s.GetLength()); //TextOut能正常工作rnrn CRect r(0,0,1000,1000);rn for(int y=-10000;y<10000;x+=100)rn rn dc.SetPixelV(x,y,RGB(255,0,0)); //在屏幕上绘制一些点rnrn r.MoveToXY(x,y); //循环改变<em>文字</em><em>输出</em>位置,让<em>文字</em>铺满窗口客户区rnrn dt=dc.DrawText(s,s.GetLength(),&r,DT_TOP|DT_LEFT); //为什么循环完成后什么<em>文字</em>都没看到,只看到满屏SetPixelV()<em>输出</em>的点rn rn rnrn dc.RestoreDC(idc);rnrn为什么什么<em>文字</em>都看不到呢,即使给DC选入一个很大的字体也什么都没有rn[/code]
GDI+中的文字旋转
GDI+中的<em>文字</em>旋转其实就是平移Graphics对象,然后将Graphics对象旋转。主要用TranslateTransform()和RotateTransform()方法。
画图输出文本右对齐方式
画图<em>输出</em>文本右对齐方式: Canvas->TextOut(Canvas->TextWidth(yStr), y, yStr);
用GDI+实现Edit控件
使用GDi+实现单行Edit的一些功能: 鼠标移动到Edit区域边框变化,鼠标指针变化 区域获得焦点后(在区域点击左键)可以进行输入以及对Caret定位,Caret的位置就是插入字符的位置 字符超出范围字符缩进等等
用VB进行GDI+绘图
正巧处理图形,突然发现一个很强的库GDI+,遂恶补一番! VERSION 5.00Begin VB.Form frmMain    BackColor       =   &H8000000A&   BorderStyle     =   1  'Fixed Single   Caption         =   "品雅图片转换工具  Ver 2.0        (Power By 赵洪涛 2008.12    Emai
C#--GDI+绘制多行文本和格式化文本
C#--GDI+绘制多行文本和格式化文本 绘制多行文本需要计算行高,然后绘出字符串: 1 private void Form1_Paint(object sender, PaintEventArgs e) 2 { 3 Graphics g = e.Graphics; 4 g.FillRectangle(Brushes.White,this.
关于分层窗口文字输出透明的处理方法
<em>问题</em>描述 -----  在使用GDI+ DrawString() 在界面上绘制<em>文字</em>时, 由于窗口属性为WS_EX_LAYERED,在使用GDI 的DrawText 方法绘制<em>文字</em>时,由于函数执行完成时,会将背景设置为透明效果,因此<em>文字</em>也无法正常显示。 因此使用GDI+的DrawString 方法可以避免这种情况。  但在<em>输出</em>“Arial”字体时,当FONT  SIZE  解决方法: 1) 更换字
C# 使用 GDI+ 实现添加中心旋转(任意角度)的文字
需求 分析&amp;amp;思路 具体实现 一个思考 这篇文章是 GDI+ 总结系列的第三篇,如果对 GDI+ 的基础使用不熟悉的朋友可以先看第一篇文章《C# 使用 GDI+ 画图》。 需求 需求是要实现给图片添加任意角度旋转的<em>文字</em>,<em>文字</em>的旋转中心要是在<em>文字</em>区域中央,就像 CSS 的 rotate 函数一样的效果。如下: 分析&amp;amp;思路 Graphics 类有个 ...
GDI+抗锯齿画图
SetSmoothingMode方法可使用参数如下: SmoothingModeInvalid  SmoothingModeDefault SmoothingModeHighSpeed SmoothingModeHighQuality SmoothingModeNone SmoothingModeAntiAlias  参数说明如下: SmoothingModeInvalid  =-1;{指定一
文字模糊(过渡变化结合透明结合阴影)
h1{ font:100px/200px &quot;微软雅黑&quot;; text-align:center; color:#000; text-shadow:0 0 0 rgba(0,0,0,1); border:1px solid #000; transition:1s;}h1:hover{color:rgba(0,0,0,0);text-shadow:0 0 100px rgba(0,0,0,0.5);}...
使用C#中的GDI+功能实现旋转文字验证方式
  登录某些网站时除了输入用户名和密码,有时还会要求在密码框下方输入在图片中显示的随机验证码,或是解答在图片中随机出现数学题。前段时间又见到一种验证方式,在图片中随机出现几个中<em>文字</em>符,每个字符或立、或倒、或卧、或躺,用户点击某字符,该字符会顺时针(或逆时针)旋转90度,需要用户将每个字符都变成立着的才算验证通过(写本文时再到需要登录的网站中看,已经见不到这种验证方式了)。   我平时使用C#中的...
C#中基于GDI+(Graphics)图像处理系列之文字或者图片水印(透明、任意角度旋转)
简介 给图片添加水印是比较常用的功能,通常是用于给图片添加版权的信息或者作者信息。 本文将重点向大家介绍怎么使用GDI+(Graphics)给图像添加图片水印和<em>文字</em>水印。 图片水印 技术要点 控制图片水印位置 控制图片水印透明度 控制图片水印旋转角度 图片水印主体代码 <em>文字</em>水印要点 技术要点 控制<em>文字</em>水印位置 控制<em>文字</em>水印透明度 <em>文字</em>水印主体代码 注意:如果
MFC & Gdi+ 实现在图片上写中文 (OpenCV原生不支持写中文本到图片,当然FreeType库也可实现)
你从来不会觉得,在图片上打上中文语句会有多么困难,
GDI+ 在Delphi程序的应用 -- 文字描边与阴影扩展
    自从文章《GDI+ 在Delphi程序的应用 -- 可调节的<em>文字</em>阴影特效》发表后,不少人问我怎样实现<em>文字</em>描边。由于我只是个业余编程爱好者,加上文化底蕴差,只要涉及算法和编程理论方面的东西,我就无能为力了,所以直到目前,我也不知道具体的描边算法是怎样的(网上搜索过N次,也没找到答案,可能这方面的东西是要卖钱的)。    因问得人多了,有时我也思索和研究一下,总算找了个方法可以实现,虽然同
关于Direct3D11里汉字显示的一些思考
这篇文章里,浅墨希望与大家一起探讨一下Direct3D11中关于字体显示的一些<em>问题</em>。         一、关于Direct2D与DirectWrite     先讲讲Direct2D和DirectWrite吧,下面关于字体讨论的时候有涉及到的地方。首先,Direct2D,它是DirectX11附带着发布的全新的二维图形API。顾名思义,看到Direct2D立马想到了它的大哥Dire
菜鸟DirectX之Direct显示文本
几乎所有的编程语言的第一步都是<em>输出</em>一个“”
MFC中GDI的DC解释
在GDI中,DC(Device context)是一个非常重要的概念。 有的书中,将DC翻译为设备描述表(《Windows 程序设计 第五版》作者Charles Petzold), 也有的书将DC翻译为设备上下文。 到底什么是DC? 用现实中的例子来理解可能更容易些。 如果你喜欢画画,你得先准备了画布,画笔,颜料…… 画画的环境搭建好了,你就可以画画了。 这个画画的环境,就是DC。...
mfc 绘制文字轮廓
CClientDC dc(this);   dc.SetBkMode(TRANSPARENT);   dc.SetPolyFillMode(WINDING);       CFont hFont,*hOldFont;   //创建字体及其大小   if(hFont.CreateFont(256,0,0,0, 400,0, 0,0,DEFAULT_CHARSET, OU
MFC中的GDI绘图
MFC中的GDI绘图 分类: MFC 2011-09-27 17:19 950人阅读 评论(1) 收藏 举报 mfcwindows图形stylesapiwinapi 目录(?)[+] 什么是GDI什么是DCMFC中与GDI有关的类获取设备环境设置坐标映射创建绘图工具并选入DC调用DC绘图函数绘图三坐标映射实例 一.关于GDI的基本概念 什么
GDI+中TGPImage从流中加载图像
头部定义: encoderClsid: TGUID; encoderParameters: TEncoderParameters; Stream:TStreamAdapter; MemStream :TMemoryStream; quality:Cardinal; 程序
MFC之GDI GDI+ 编程实例剖析
GDI和GDI+编程实例剖析 1.基本概念    GDI在Windows中定义为Graphics Device Interface,即图形设备接口,是Windows API(Application Programming Interface)的一个重要组成部分。它是Windows图形显示程序与实际物理设备之间的桥梁,GDI使得用户无需关心具体设备的细节,而只需在一个虚拟的环境(即逻辑设备)中进行操作。 它的桥梁作用体现在:    (1)用户通过调用GDI函数将逻辑空间的操作转化为具体针对
解决sublime text3 v3.1.1,Build3176中的汉字形状扭曲问题
参考博文https://blog.csdn.net/tel13259437538/article/details/79346636 中的方法 打开Preferences–&amp;amp;amp;gt;Settings 在右边的Preferences.sublime-settings-User中,添加 &amp;amp;quot;font_options&amp;amp;quot;: [&amp;amp;quot;<em>gdi</em>&amp;amp;quot;], ...
GDI+添加图片水印
(2010-08-02 09:46:05) 转载▼ 标签:  杂谈 分类: GDI+ bool GetCodecClsid(LPCTSTR lpstrFormat, CLSID &clsid) {     UINT nNum = 0, nSize = 0;     Gdiplus::GetImageEncode
GDI GDI+ 双缓冲解决闪烁
最近工作遇到绘制控件的<em>问题</em>,该控件会不断刷新,其所在的view可能贴图,也可能用纯色的画刷刷。这样就产生了<em>问题</em>了,控件狂闪,特别是有背景图的时候。该控件绘制的时候用的是GDI,过程中考虑到圆滑处理等又用到了GDI+。现在用双缓冲解决闪烁<em>问题</em>。   一 、GDI 双缓冲这样做:   CDC MemDC; //首先定义一个显示设备对象   CBitmap MemBitmap;//定义一个位图对象
GDI绘图输出问题
?为什么<em>输出</em>图片以后页面内只剩下图片了,其他的什么东西都没有了,该怎么办?
GDI+ 画路径(消除锯齿的效果很不错)
在VS2005里使用GDI+ 1、 先包含相应的头文件并引入库 #define GDIPVER 0x0110  #include #include #include #include #pragma comment(lib,"GdiPlus.lib") using namespace Gdiplus;2 、在合适的位置 初始化GDI+,具体位置自己随机应变哦 /
vc GdI+实现图层问题
我用的是CImage绘图,我想在一个视图中绘制多个个图片,所以建立了多个Cimage 对象我应该怎么控制,右键移动时候,可以随便移动任意的一层图片。
C#中怎么压扁字体
e.Graphics.SmoothingMode = SmoothingMode.HighQuality; GraphicsPath path = new GraphicsPath(); StringFormat strformat = new StringFormat(); strformat.Alignment = Str
使用GDI+时关于窗体重绘的问题
用GDI+对窗体(Form)进行绘图(就是画圆等操作,用Graphics来做的),代码如下:private void button1_Click(object sender, System.EventArgs e){    System.Drawing.Graphics g = this.CreateGraphics();    g.FillEllipse( Brushes.Red
GDI_打印_水印_图形_文字_图片上动态添加文字
GDI 打印 水印 图形 <em>文字</em> 图片上动态添加<em>文字</em>
第四章 输出文字(绘制和更新,GDI 简介)
在前一章,您看到了一个简单的Windows 98程序,它在窗口中央,或者更准确地说,在显示区域中央显示一行<em>文字</em>。正如我们学到的,显示区域是整个应用程序窗口中未被标题列、窗口边框,以及可选的菜单列、工具列、状态列和滚动条占据的部分。简而言之,显示区域是窗口中可以由程序任意书写和传递视觉信息的部分。对于程序的显示区域,您几乎可以为所欲为,只不过您不能假定窗口大小是某一特定尺寸,或者在程序执行时其大小会保持不变。如果您不熟悉图形窗口环境的程序设计,这些限制可能会使您感到惊讶:不能再假设屏幕
GDI+与流程图编辑器(留坑,以后再填)
这些年来流程图编辑器越来越流行了,在UE 3, Crysis里面,还有前两天听的substance redux的纹理压缩报告上也看到流程图编辑器,感觉非常直观和强大,方便用户使用。如下面截图所示,据说Crysis里面的流程图绘制使用的是GDI+,有空需要好好研究下,先留个坑 :)  
GDI+跑马灯滚动字幕
1. 跑马灯 银行、商店的一些广告牌采用的跑马灯式的滚动字幕,如下图: 2. GDI+实现 使用GDI+双缓冲实现跑马灯效果。 初始化计时器: int g_nCount; // 控制第一个字符串的前进 int g_nCount2; // 控制第二个字符串的前进 BOOL g_bRestart; // 切换字符串 int g_nControlWidth; // 显示宽度 voi
Visual C++ 图像与文字的合成
一、关键函数int SetDIBits(        HDC hdc,                  // 兼容DC的句柄        HBITMAP hbmp,             // 兼容位图的句柄        UINT uStartScan,          // 扫描起始行的编号        UINT cScanLines,          // 扫描的行的数目        CON
C++ 在图片上打印文字并保存图片
int Feature_Prediction::score_record(IplImage* image, string scoreNum, float score ) { CvFont font; //传值给cvPutText()的CvFont double hscale = 1.0; double vscale = 1.0; int linewidth = 2; cvInitFont
D2D引擎与GDI\GDI+绘制效果对比
本例主要是对比D2D和GDI在绘制<em>文字</em>、线条的区别,以及D2D与GDI+在绘制图片时的区别。 D2D是基于COM组件开发的,使用前的CoInitialize(NULL)是必须的;另外,GDI+的初始化GdiplusStartup()也别忘了。 废话少说,完整代码如下:// D2DDemo.cpp : 定义应用程序的入口点。 // #include "stdafx.h" #include "D
纯GDI完美实现半透明不规则窗口
以前在研究半透明不规则窗口的时候,用的是<em>gdi</em>的TextOut/DrawText绘制字体,但绘制出的字体是透明的, 现在我完全放弃了GDI的TextOut()、BitBlt()的方式,而用SetDIBitsToDevice()代替,就是直接贴像素到DC里。 今天尝试用SetDIBitsToDevice()+UpdateLayeredWindow()实现半透明不规则窗口,结果非常顺利! 贴
Windows GDI 教程(一) 一个简单的绘图程序
常见的图形编程库,除了 GDI 外还有 GDI+、OpenGL、DirectX等等,GDI 是其中最基础的一个库。所以 GDI 注定了不会有高级应用,有兴趣的就当刷低级怪吧。 在教程的最开始,需要简单的说明一些前置条件。 开发环境与前言 首先是标明开发环境: 操作系统:win7 (xp应该可以,win8未测试) 使用工具:visual studio 2010(或更高) 窗口创建 以前...
彻底解决GDI对象泄漏的问题
转载链接 彻底解决GDI对象泄漏的<em>问题</em> 之前有一个项目因为那时对C++还不太熟悉,没有太多经验,造成了内存泄漏、线程同步、GDI对象泄漏等新手常见的<em>问题</em>,所以这个程序会不定时地莫名其妙地死掉,后来通过用Visual Leak Detector小心翼翼地解决了内存泄漏的<em>问题</em>,接着系统就稳定了很多,而且也重新看了多线程那部分,加了多个锁,也总算解决了线程同步的<em>问题</em>。然而系统还是隔一段
VC++2008中基于对话框GDI+的图像显示
我们知道在VC++中一般只可以显示BMP格式的图像,要显示其他格式的图片往往显得有些力不从心,用GDI+能够使<em>问题</em>得到很好的解决。关于GDI+是个什么东西,我不去多说了,大家谷歌一下就会知道。  首先在VC++2008中进行GDI+的配置: 1.在项目属性中添加GDI+静态链
C语言 Windows程序设计,使用GDI自绘按钮、编辑框、贴图小练习
C语言 Windows程序设计,使用GDI自绘按钮,编辑框,贴图小练习。 这些雕虫小技,在VB里面不知道有多少的简单。 在这里用C语言来写,是这么麻烦,这么麻烦。 真不知道有什么好处? 正事不干,专们喜欢干这种鸟事,可怜我以前想干这种鸟 事,都觉得自己无从下手,多少年过去,重新开始学C语言 的,才发现,一切都是这么的简单,如果不是VB让我学会 了程序设计,我也不会觉得C语言也是这么普通的好用。 还是C语言好,C++我什么时候才能动手学呢。。。。 可以开始学了吧。。。 控件都学过了,GDI也会画表格了,会贴图片了。 还有什么要学呢。。 还要学注册表,数据库、文件、通讯。。。。 还是先学STL标准库,有了这个东西,写程序会方便点。
C++ GDI+ DrawString 保存字符串文字为透明图片
实现通过GDI+将输入的字符串保存为背景透明的图片的示例代码
关于MFC使用GDI绘图的两个容易出错的问题
原帖地址:http://www.cnblogs.com/lijianglidedaxia/archive/2013/06/01/3113213.html  近期,公司的一个项目是采用华迈SDK来做一套C/S架构的监控中心。自己犯了两个低级错误,写出来看看有多少朋友平时跟我一样没注意,哈哈。   第一个错误是这样出现的:在最初的几个版本中比较顺利。于是有点飘飘然,连续提交了好几个版本都没有进行全面测...
使用Gdi+显示特效文字
实现代码BOOL CGDIAPPDlg::UpdateDisplay(int Transparent) { RECT rct; ::GetWindowRect(m_hWnd, &rct); int iWinRectW(rct.right - rct.left); int iWinRectH(rct.bottom - rct.top); HDC hdcTemp=GetDC()->m_hDC; m_hdcMemory=CreateCompatibleDC(hdcTemp);//
GDI+图像去污——四周去污
一、GDI+实现四周去污,只保留图像选定区域的内容,选定区域外的部分用背景色填充 Image* FixedSize4(Image *imgSrc, int Width, int Height) { Bitmap *bmPhoto = new Bitmap(imgSrc->GetWidth(), imgSrc->GetHeight()); bmPhoto->SetResolution(imgS
MFC GDI绘图基础
一.关于GDI的基本概念什么是GDI?Windows绘图的实质就是利用Windows提供的图形设备接口GDI(Graphics Device Interface)将图形绘制在显示器上。在Windows操作系统中,动态链接库C:/WINDOWS/system32/<em>gdi</em>32.dll(GDI Client DLL)中定义了GDI函数,实现与设备无关的包括屏幕上<em>输出</em>像素、在打印机上<em>输出</em>硬拷贝
1986-2008研究生英语试题与答案下载
全,清晰。20年的全在这里,你可以完全掌握考研英语的动向。 相关下载链接:[url=//download.csdn.net/download/a19811981a/2263419?utm_source=bbsseo]//download.csdn.net/download/a19811981a/2263419?utm_source=bbsseo[/url]
招聘网站源码ASP.NET+SQL2000下载
毕业设计参考 所有代码都详尽 只要安全VS2005+SQL数据库就可运行 相关下载链接:[url=//download.csdn.net/download/gx111aaa/2272648?utm_source=bbsseo]//download.csdn.net/download/gx111aaa/2272648?utm_source=bbsseo[/url]
精心整理的IT面试资料大汇总,囊括多种语言技术下载
精心整理的面试资料大汇总,压缩以后总共近25M,囊括了C\C++、Java、Linux、C#、架构师、数据库、数据结构、算法,还包括了程序员面试宝典的书籍,这些资料来自于google、IBM、华为等等国内外上百家著名IT公司,覆盖面相当广泛。另外附上简历及模板供大家参考,希望对大家找工作有所帮助 相关下载链接:[url=//download.csdn.net/download/chenlei76/2474333?utm_source=bbsseo]//download.csdn.net/download/chenlei76/2474333?utm_source=bbsseo[/url]
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 区块链问题 python输出
我们是很有底线的