C++
hz张三
这个作者很懒,什么都没留下…
展开
-
ITextHost绘制文字极小的问题
对照别人的代码,发现实现接口ITextHost的时候,这么写,HRESULT TxGetExtent(LPSIZEL lpExtent) { return S_FALSE;}就会出现绘制的文字极小,无法看的问题。应改为:HRESULT TxGetExtent(LPSIZEL lpExtent) { return E_NOTIMPL; }...原创 2021-03-18 10:05:23 · 201 阅读 · 1 评论 -
用Direct2D绘制SVG (3)
SVG Filter 和 Direct2D Filter对应关系,越做越心惊,莫非小小软又在抄袭标准?https://developer.mozilla.org/zh-CN/docs/Web/SVG/Element<feBlend> CLSID_D2D1Blend<feColorMatrix> CLSID_D2D1Colo...原创 2018-09-12 09:20:34 · 742 阅读 · 2 评论 -
用Direct2D绘制SVG (1)
矢量图形绘制, 首先想到使用SVG作为图像格式,起步需要的就是SVG文件格式。GitHub找了一圈,nanosvg是一个很好的C库。nanosvg是一个很符合KISS的库,分为parser 和 Rasterizer,Parser部分,都在 #include "nanosvg.h" 头文件中,记得要#define NANOSVG_IMPLEMENTATIONRasterizer部分,都在 ...原创 2018-09-10 15:07:43 · 2529 阅读 · 0 评论 -
用Direct2D绘制SVG (2)
Direct2d其实是可以直接Load和Draw SVG图形的。首先需要从renderTarger, QueryInterface 到 ID2D1DeviceContext5再从ID2D1DeviceContext5, CreateSvgDocument获得 ID2D1SvgDocument(中间涉及到File到IStream,需通过HGLOBAL做桥)最后ID2D1DeviceCon...原创 2018-09-10 15:18:48 · 1126 阅读 · 0 评论