Direct2D (2) : 基本圖形命令測試

代碼:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ComCtrls, TypInfo, Direct2D;type TForm1 = class(TForm) ListBox1: TListBox; Panel1: TPanel; GroupBox1:

Direct2D (15) : 剪輯

繪製在 RenderTarget.PushAxisAlignedClip() 與 RenderTarget.PopAxisAlignedClip() 之間的內容將被指定的矩形剪輯。uses Direct2D, D2D1;procedure TForm1.FormPaint(Sender: TObject);var cvs: TDirect2DCanvas; R,RClip: TRect;begin cvs := TDirect2DCanvas.Create(Canvas,

Direct2D (5) : 繪製自訂圖形

下面是通過自訂函數繪製菱形的測試代碼。uses Direct2D, D2D1;{自訂的繪製菱形的函數}function GetDiamondPath(ptLeft, ptTop: TD2DPoint2f): ID2D1PathGeometry; //返迴路徑介面var sink: ID2D1GeometrySink; //給路徑添加圖形的介面 ptRight,ptBottom: TD2DPoint2f;begin {算出另外兩個點} ptRight :=

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.Create(Canvas, ClientRect); cvs.BeginDraw;

Direct2D (23) : 複合幾何對象之 ID2D1GeometryGroup

uses Direct2D, D2D1;procedure TForm1.FormPaint(Sender: TObject);var cvs: TDirect2DCanvas; iGeometryGroup: ID2D1GeometryGroup; arrGeometry: array[0..3] of ID2D1EllipseGeometry; ptCenter: TD2D1Point2F; i: Integer; rh,rv: Single; iFactory:

Direct2D (24) : 合并幾何對象

合并通過 ID2D1Geometry.CombineWithGeometry() 完成,但返回的是 ID2D1SimplifiedGeometrySink(ID2D1GeometrySink 的父物件);需要把 ID2D1SimplifiedGeometrySink 添加到 ID2D1PathGeometry 才能使用。uses Direct2D, D2D1;procedure TForm1.FormPaint(Sender: TObject);var cvs:

Direct2D (18) : 圖層之 TD2D1LayerParameters.contentBounds (圖層的有效範圍)

{相關方法}TDirect2DCanvas.RenderTarget.CreateLayer(); //建立層TDirect2DCanvas.RenderTarget.PushLayer(); //開始層;層的功能及效果取決於它的 TD2D1LayerParameters 結構參數TDirect2DCanvas.RenderTarget.PopLayer(); //結束層{相關結構}TD2D1LayerParameters = record contentBounds:

Direct2D (25) : 將畫筆線條所佔用的地區轉換為路徑 – ID2D1Geometry.Widen()

uses Direct2D, D2D1;procedure TForm1.FormPaint(Sender: TObject);var cvs: TDirect2DCanvas; iGeometry: ID2D1Geometry; iPathGeometry: ID2D1PathGeometry; iGeometrySink: ID2D1GeometrySink;begin {建立一個幾何對象 iGeometry} D2DFactory.CreateEllipseGeometry(

Direct2D (19) : 圖層之 TD2D1LayerParameters.geometricMask (使用幾何圖形剪裁圖層)

uses Direct2D, D2D1;procedure TForm1.FormPaint(Sender: TObject);var cvs: TDirect2DCanvas; iLayer: ID2D1Layer; rLayerParameters: TD2D1LayerParameters; wic: TWICImage; R: TRect; iEllipse: ID2D1EllipseGeometry;begin wic := TWICImage.Create; wic.

Direct2D (26) : 擷取幾何圖形的邊界

{相關方法}ID2D1Geometry.GetBounds(); //擷取邊界矩形ID2D1Geometry.GetWidenedBounds(); //擷取包含畫筆地區的邊界矩形測試代碼:uses Direct2D, D2D1;procedure TForm1.FormPaint(Sender: TObject);var cvs: TDirect2DCanvas; iGeometry: ID2D1EllipseGeometry; R1,R2: TD2DRectF;

Direct2D (3) : 使用浮點參數繪製基本圖形

{相關方法}TDirect2DCanvas.DrawEllipse();TDirect2DCanvas.DrawLine();TDirect2DCanvas.DrawRectangle();TDirect2DCanvas.DrawRoundedRectangle();TDirect2DCanvas.FillEllipse();TDirect2DCanvas.FillRectangle();TDirect2DCanvas.FillRoundedRectangle();{相關結構}TD2DPoint

Direct2D (27) : 擷取幾何圖形的輪廓 – ID2D1Geometry.Outline()

uses Direct2D, D2D1;procedure TForm1.FormPaint(Sender: TObject);var cvs: TDirect2DCanvas; iEllipseGeometry: ID2D1EllipseGeometry; iTransformedGeometrys: array[0..7] of ID2D1TransformedGeometry; iGeometryGroup: ID2D1GeometryGroup; iGeometrySink:

NativeXml (8):其它添加

uses NativeXml;procedure TForm1.Button1Click(Sender: TObject);var xml: TNativeXml; node: TXmlNode;begin xml := TNativeXml.CreateName('List'); xml.XmlFormat := xfReadable; node := xml.NodeNewTextType('注釋名稱', '注釋內容', xeComment); xml.Root.NodeAdd(

Direct2D (16) : 蒙版之 FillOpacityMask() 方法

實現蒙版效果有三種途徑:使用 FillOpacityMask()、使用 FillGeometry() 方法、使用圖層。FillOpacityMask() 用於處理映像蒙版。期間用到 ID2D1Bitmap,因為對映像格式要求較高,我通過 TDirect2DCanvas.CreateBitmap() 建立 ID2D1Bitmap 時沒有成功。後來使用了自訂函數直接使用 WIC

Direct2D (21) : 微軟官方關於路徑的樣本

unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs;type TForm1 = class(TForm) procedure FormPaint(Sender: TObject); end;var Form1: TForm1;implementation{$R *.dfm}uses Direct2D,

NativeXml (9):讀取

var xml: TNativeXml; const xmlStr = '<?xml version="1.0" encoding="UTF-8"?>' + '<List>' + '<item ID="No.1" age="11">張三</item>' + '<item ID="No.2" age="22">李四</item>' +

Direct2D (6) : 繪製品質(設定消除鋸齒模式)

{相關方法}TDirect2DCanvas.RenderTarget.SetAntialiasMode();TDirect2DCanvas.RenderTarget.GetAntialiasMode;{相關常量}D2D1_ANTIALIAS_MODE_PER_PRIMITIVE = 0;D2D1_ANTIALIAS_MODE_ALIASED = 1;測試代碼:uses Direct2D, D2D1;procedure TForm1.FormCreate(Sender:

NativeXml (10):編輯

uses NativeXml; var xml: TNativeXml; const xmlStr = '<?xml version="1.0" encoding="UTF-8"?>' + '<List>' + '<item ID="No.1" age="11">張三</item>' + '<item ID="No.2" age="22">李四</item&

Direct2D (10) : 文本輸出初步

uses Direct2D, TypInfo;procedure TForm1.FormCreate(Sender: TObject);var f: TTextFormats;begin for f := Low(TTextFormats) to High(TTextFormats) do CheckListBox1.Items.Add(GetEnumName(TypeInfo(TTextFormats), Ord(f))); CheckListBox1.Align :=

NativeXml (11):浮點數的有效位元

uses NativeXml; procedure TForm1.Button1Click(Sender: TObject); var xml: TNativeXml; fVal: Double; begin fVal := 123.456789; xml := TNativeXml.CreateName('List'); xml.XmlFormat := xfReadable; //xml.FloatSignificantDigits := ; with

總頁數: 61357 1 .... 4828 4829 4830 4831 4832 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.