问题标签 [graphics32]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
delphi - Graphics32 和 VCL 样式
我正在使用 Graphics32 TColorPickerGTK 组件,不幸的是,它不支持 VCL 样式。我的第一个想法是像这样清除 PaintColorPicker() 方法中的 FBuffer,
非常适合非纹理样式,但是对于像 Glossy 或 Jet 这样的样式,没有太多的印记。
顿悟,我在路上,用 Create() 方法复制控件下的位图,然后在 PaintColorPicker() 方法上重新绘制。
如何访问表单的底层画布,以便 CopyRect 工作?
delphi - GR32_VectorUtils.Circle 方法的工作方式与我的预期不同
我正在使用以下代码块在 TBitmap32 (x:0,y:0) 点上画一个圆圈。
Pts := Circle(0,0,35);
PolylineFS(Bitmap32, Pts, clBlack32, True, 3);
但是,绘制的圆是在指定坐标后面绘制的。圆的一半位于 TBitmap32 的负坐标中。
Pts := Circle(35,35,35);
当我尝试这行代码时,x 坐标几乎绘制到了正确的点,但 Y 点仍然不在正确的坐标中。
我希望这个函数表现得像 TCanvas.Ellipse。我尝试了很多东西,但都没有成功。
delphi - 如何从 Bits 数组创建 Bitmap32?
我有一个函数,它返回一个指向图像存储为 Bitmap32.Bits 的内存的指针:
在代码的某个地方,我需要从内存中的这个位创建一个新的 Bitmap32。如何正确执行?
我尝试执行以下操作:
但我收到一个错误:
E2129 无法分配给只读属性
为@RudyVelthuis添加:
delphi - 即时更改 Graphics32 的 TImgView32 的重采样器内核
我想即时更改 Graphics32 的 TImgView32 的重采样内核。但是没有明显的区别。这是代码:
graphics32 - Graphics32:TBitmap32 和错误“无法分配 DIB 句柄”
我正在尝试制作一个新的 TBitmap32 对象:
我收到错误:“无法分配 DIB 句柄”
我该如何解决这个问题?20K x 20K 位图并没有那么大。它小于 1.5 GB。
delphi - 是否可以在不复制像素的情况下将 TBitmap32 转换为 TBitmap?
我可以在不复制像素的情况下将 TBitmap32 对象转换为 TBitmap (pf32bit) 对象吗?
我找到了 2 种将 TBitmap32 复制到 TBitmap 的方法,而不会明显地复制像素,但可能有像素在引擎盖下被复制。或者也许一种方法比另一种更好?知道WinAPI的人可以建议吗?
方法二
delphi - 从资源文件加载的透明 PNG 图像,使用 Grapics32 调整大小并在 Canvas 上绘制
我需要一点帮助...
我的应用程序资源中有一个透明的 PNG 图像。到目前为止,我将它加载到 a 中TPngImage
并使用Canvas.Draw(X, Y, PngImage);
. 它是透明绘制的。现在我将我的应用程序更新为 DpiAware,我需要缩放所有图像。我需要一个高质量的重采样器,我选择使用 Graphics32。我设法进行了重新采样,但我不知道如何保持透明度......我尝试了所有我能想到的......以下代码的结果是在透明区域中用黑色绘制的图像...... .
这是我编译成资源的透明PNG图像: https ://postimg.cc/3yy3wrJB
我在这里找到了一个类似的问题,但我不使用带有 a 的图像TImage
,我直接在画布上绘制它。在唯一的答案中,大卫说:
无论如何,如果是这样,我会将 TImage 的透明度支持与 TBitmap32 的重新采样能力结合起来,以这种方式构建解决方案。将原始图像保存在 TBitmap32 实例中。每当您需要将其加载到 TImage 组件中时,例如在重新调整大小时,请使用 TBitmap32 执行内存中重新调整大小并加载该重新调整大小的图像。
这正是我想要做的,但我不知道为什么透明度不起作用。有任何想法吗 ?