草庐IT

不透明度

全部标签

c++ - 使用 AlphaBlend 绘制略透明的矩形失败

我试图在nativeWin32C++中绘制一个稍微透明的蓝色矩形。我正在使用函数AlphaBlend()但它没有在窗口上绘制任何东西,没有任何反应。我的问题:当我运行我的函数来绘制一个稍微透明的矩形时,它没有显示在我的窗口中。我觉得我做错了,也许我应该使用HBITMAP?你能告诉我我需要做什么才能让我的函数在窗口上绘制一个稍微透明的矩形吗?我也知道GDI+,但我现在想避免使用它,因为我在使用该库时遇到很多编译/包含错误,而且我想在没有帮助的情况下尽可能低/原生为我做一切的图书馆。boolpaintRect(HDChdc,RECTdim,COLORREFpenCol,COLORREFbr

c++ - 为什么不将字符串文字作为对数组的引用而不是不透明指针传递?

在C++中,字符串文字的类型是constchar[N],其中N,如std::size_t,是字符数加一(零字节终止符)。它们驻留在静态存储中,从程序初始化到终止都可用。通常,采用常量字符串的函数不需要std::basic_string接口(interface),或者更愿意避免动态分配;例如,他们可能只需要字符串本身及其长度。std::basic_string尤其必须提供一种从语言的native字符串文字构造的方法。这些函数提供了一个采用C风格字符串的变体:voidfunction_that_takes_a_constant_string(constchar*/*const*/s);//

c++ - C 不透明指针陷阱

我正在使用一个遗留的C库接口(interface)(到C++),它将不透明指针公开为typedefvoid*OpaqueObject在图书馆:OpaqueObjectCreateObject(){returnnewOurCppLibrary::Object();}这当然不会为这个库的客户提供类型安全。将typedef从void指针更改为结构指针是否应该完全相同,但提供少量类型安全?typedefstructOpaqueObjectInternal_*OpaqueObject//OpaqueObjectInternal_isNEVERdefinedanywhereinclientorli

透明的窗口形式,内部带有OpenGL绘制

我希望我的OpenGL图形在透明的窗口中。我在计算机上安装了Windows7,并且正在使用.NET。这是我设法编写的代码,但它无法正常工作-无论我做什么,我仍然会在图纸后面获得背景。请告诉我我在做什么错?publicpartialclassMainForm:Form{privateGraphicsm_graphics;privateIntPtrm_hDC;privateIntPtrm_RC;protectedoverrideCreateParamsCreateParams{get{CreateParamscp=base.CreateParams;cp.ExStyle|=(int)User32.

c++ - Gdiplus DrawString 在远程桌面上绘制透明文本

我正在将文本绘制到DIB部分屏幕外位图中,它是32位深并使用alphachannel(ARGB)。我直接将像素绘制到内存中。然后,我创建一个GdiplusGraphics对象,将我的内存DC传递给它,并使用Graphics::DrawString绘制文本。这在正常情况下工作正常。然而,在远程桌面上,呈现的文本是完全透明的,即您可以看到文本所在的位置,而不是绘制任何颜色像素。有谁知道为什么会这样,以及如何解决?这是我的drawString例程:voidSplashScreen::drawString(MyString&ivText,Gdiplus::RectF&r,Gdiplus::AR

【Deep Dive: Al Webinar】开源人工智能中赋能、透明性和可重复性三者之间的关系...

【深入探讨人工智能】网络研讨系列总共有17个视频。我们按照视频内容,大致上分成了3个大类:1.人工智能的开放、风险与挑战(4篇)2.人工智能的治理(总共12篇),其中分成了几个子类:a.人工智能的治理框架(3篇)b.人工智能的数据治理(4篇)c.人工智能的许可证(4篇)d.人工智能的法案(1篇)3.炉边对谈-谁在构建开源人工智能? 今天发布的是第二个大类别“人工智能的治理”里的第一个子类别“人工智能的治理框架”的第三个视频:开源人工智能中赋能、透明性和可重复性三者之间的关系。我们期盼如此分类,对读者的易读性有帮助,也欢迎读者们的反馈和指正。          ---开源社.国际接轨组---St

c++ - 我应该为我的不透明对象使用整数 ID 还是指针?

我正在一些图形API(DirectX9和DirectX11)之上编写一个抽象层,我想听听您的意见。传统上,我会为每个要抽象的概念创建一个基类。因此,在典型的OO方式中,我会有一个Shader类和2个子类DX9Shader和DX11Shader。我会重复纹理等的过程...当我需要实例化它们时,我有一个抽象工厂,它将根据当前的图形API返回适当的子类。在RAII之后,返回的指针将被封装在std::shared_ptr中。到目前为止一切顺利,但就我而言,这种方法存在一些问题:我需要想出一个公共(public)接口(interface)来封装这两个API(以及future其他API)的功能。派

c++ - 将透明的 .PNG 图像传输到屏幕上

您好,我有一个图像,上面画了一个黑色矩形,它的背景是透明的。此文件保存为png(clear.png)。然后我有另一张图片,它只是一个纯红色背景,保存为jpeg(background.jpeg)。我试图做的是使clear.png中的黑色矩形显示在纯红色背景图像的顶部。这就是我所做的../*Transparentimage*/#include"SDL/SDL.h"#include"SDL/SDL_image.h"#includeusingnamespacestd;intmain(intargc,char*argv[]){SDL_Surface*screen=NULL;SDL_Surface

c++ - 在 Visual Studio 中调试 Qt 应用程序并检查不透明对象(例如 QDir 或 QFileInfo)

我正在VisualStudio2013中调试Qt应用程序。我安装了来自Qt的官方VisualStudio插件。我可以看到QString的内容,但对于任何其他QObject如QDir或QFileInfo对象我看不到它的内容。我做错了什么还是根本不可能?当我展开QDir实例我只能看到一个名为d_ptr的成员其中引用了QDirPrivate我无法检查的对象。我也不能调用QDir的其他函数或QFileInfo如path(),或filePath()在运行时从调试器。当我尝试时,VisualStudio声称该函数的地址已被优化掉。有没有办法在不向程序中添加数十条日志语句的情况下调试它?

c++ - 如何在 C++ 绑定(bind)中使用不透明指针包装 C 库

我正在考虑用C++包装一些C库,但我不确定包装不透明指针的最佳方法是什么。当C语言结构是公共(public)API的一部分时typedefstruct_SomeType{inta;intb;}SomeType_t;有几个“成员”函数的地方:voidSomeTypeFoo(SomeType_t*obj,...);voidSomeTypeBar(SomeType_t*obj,...);我喜欢从基派生的方法,将这些“成员”函数简单地关联为实际的类成员。即:classSomeTypeWrapper:publicSomeType_t{voidfoo(...);voidbar(...);};就我的