首页 > TAG信息列表 > RenderTarget
Direct2D (26) : 获取几何图形的边界
Direct2D (26) : 获取几何图形的边界 {相关方法} ID2D1Geometry.GetBounds(); //获取边界矩形 ID2D1Geometry.GetWidenedBounds(); //获取包含画笔区域的边界矩形 测试代码:uses Direct2D, D2D1; procedure TForm1.FormPaint(Sender: TObject); var cvs: TDirect2Direct2D (20) : 图层之 TD2D1LayerParameters.opacityBrush (为图层指定蒙版画刷)
Direct2D (20) : 图层之 TD2D1LayerParameters.opacityBrush (为图层指定蒙版画刷) uses Direct2D, D2D1; procedure TForm1.FormPaint(Sender: TObject); var cvs: TDirect2DCanvas; iLayer: ID2D1Layer; rLayerParameters: TD2D1LayerParameters; wic: TWICImageDirect2D (19) : 图层之 TD2D1LayerParameters.geometricMask (使用几何图形剪裁图层)
Direct2D (19) : 图层之 TD2D1LayerParameters.geometricMask (使用几何图形剪裁图层) uses Direct2D, D2D1; procedure TForm1.FormPaint(Sender: TObject); var cvs: TDirect2DCanvas; iLayer: ID2D1Layer; rLayerParameters: TD2D1LayerParameters; wic: TWICImDirect2D (18) : 图层之 TD2D1LayerParameters.contentBounds (图层的有效范围)
Direct2D (18) : 图层之 TD2D1LayerParameters.contentBounds (图层的有效范围) {相关方法} TDirect2DCanvas.RenderTarget.CreateLayer(); //建立层 TDirect2DCanvas.RenderTarget.PushLayer(); //开始层;层的功能及效果取决于它的 TD2D1LayerParameters 结构参数 TDirectDirect2D (17) : 蒙版之 FillGeometry() 方法
Direct2D (17) : 蒙版之 FillGeometry() 方法 FillGeometry() 可通过两个画刷的重叠运算获取蒙版效果,作为蒙版画刷的渐变色中应该至少有一个透明色。使用放射渐变画刷做蒙版:uses Direct2D, D2D1, Wincodec, ActiveX; {从指定文件建立 ID2D1Bitmap 的函数} function GetD2DDirect2D (16) : 蒙版之 FillOpacityMask() 方法
Direct2D (16) : 蒙版之 FillOpacityMask() 方法 实现蒙版效果有三种途径:使用 FillOpacityMask()、使用 FillGeometry() 方法、使用图层。 FillOpacityMask() 用于处理图像蒙版。 期间用到 ID2D1Bitmap,因为对图像格式要求较高,我通过 TDirect2DCanvas.CreateBitmap() 建立 IDirect2D (15) : 剪辑
Direct2D (15) : 剪辑 绘制在 RenderTarget.PushAxisAlignedClip() 与 RenderTarget.PopAxisAlignedClip() 之间的内容将被指定的矩形剪辑。uses Direct2D, D2D1; procedure TForm1.FormPaint(Sender: TObject); var cvs: TDirect2DCanvas; R,RClip: TRect; begin cDirect2D (11) : 画刷之 ID2D1LinearGradientBrush
Direct2D (11) : 画刷之 ID2D1LinearGradientBrush TDirect2DCanvas.Brush 的类型是 TDirect2DBrush,它和 GDI 的 TBrush 的区别主要有两点: 1、只保留了 TBrush.Style 中的 bsSolid、bsClear 选项,弃用了:bsHorizontal、bsVertical、bsFDiagonal、bsBDiagonal、bsCross、bsDiaDirect2D (9) : 显示图像
Direct2D (9) : 显示图像 uses Direct2D; procedure TForm1.FormPaint(Sender: TObject); var cvs: TDirect2DCanvas; wic: TWICImage; R: TRect; begin wic := TWICImage.Create; wic.LoadFromFile('C:\Temp\Test.png'); cvs := TDirect2DCanvas.CDirect2D (7) : 空间变换
Direct2D (7) : 空间变换 {相关方法} TDirect2DCanvas.RenderTarget.SetTransform(); TDirect2DCanvas.RenderTarget.GetTransform(); {相关结构} TD2DMatrix3x2F (或D2D_MATRIX_3X2_F) //因第三列的值在这里是固定的(0,0,1),所以这里用的是 3*2 的矩阵;该结构重载了 * 运算