问题标签 [pangocairo]

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.

0 投票
0 回答
78 浏览

c - 开罗模糊表面

想不通,各位大神帮忙看看

我有原始的 cairo 表面srf及其上下文c

现在我正在创建另一个表面shadow并将其叠加在前一个表面上

我使用的模糊算法来自官方 cairo doc here,它单独工作

叠加也很完美,但表面一点也不模糊

0 投票
0 回答
24 浏览

pango - 如何在使用 pango 逐项列出和对齐(紧缩和抗锯齿等)后获取每个字形的轮廓点

使用 Pango 和 cairo 用 ttf 文件渲染文本,如“示例”,在逐项和对齐(如紧缩和抗锯齿)之后,我如何才能获得此类文本中每个字形的轮廓点?

实际上我想使用这些点来自己渲染字形(使用开罗的线和贝塞尔曲线)。我阅读了文档,但找不到任何相关信息。

0 投票
0 回答
75 浏览

python - Windows 上的 Python 亚像素文本渲染

我正在尝试使用 Python 进行亚像素文本渲染,其中字符串中的字符在 Windows 上可以有不同的颜色。到目前为止我发现了什么:

  • PIL:PIL 无法生成亚像素渲染文本。它只能使用fontmode = "0"fontmode = "1"设置呈现别名文本。ImageFont.getsize它能够通过使用andImageFont.getoffset函数确定每个字符的位置并单独绘制每个字符来呈现每个字符具有不同颜色的文本。
  • pywin32 winapi bindings:我可以直接调用 GDI 功能。这意味着我可以创建呈现亚像素文本的字体。例如font_win32 = win32ui.CreateFont(font_desc),font_desc 包含密钥的位置:'quality':win32con.CLEARTYPE_NATURAL_QUALITY. 但是,要生成不同颜色的字符,我需要知道每个字符的大小,不包括下悬和悬垂。为此,我需要 winapiGetCharABCWidthsFloat函数。不幸的是,pywin32 没有该函数的绑定。
  • pangocairo绑定(pycairo 或 cairocffi):我对 pangocairo 有点困惑。阅读代码和谷歌搜索表明可以使用以下方式进行亚像素渲染:fo = cairo.FontOptions(); fo.set_antialias(cairo.ANTIALIAS_SUBPIXEL). 但是,这没有效果。

这是我迄今为止探索的三个方向,但没有成功。我是否在上述方法中遗漏了什么,或者我应该探索不同的方向。我可以用 C 编写整个东西并从 python 调用 C 代码。也许这是前进的道路?我有点担心最后一个选项的性能。

0 投票
0 回答
63 浏览

ubuntu - Draw Directly To The 24 Bit TFT Display Using Cairo

I am developing a Linux application to draw information to a 24 bit LCD screen using Cairo. But the LCD display prints 3 images instead of one image which I drew. This also prints in the wrong colour I tried to change all the cairo_format options but had no luck.

My code is

I tried CAIRO_FORMAT_ARGB32, CAIRO_FORMAT_RGB24,CAIRO_FORMAT_RGB16_565, CAIRO_FORMAT_RGB30. None of them worked correctly. Spend several days on the internet and not much information about the issue.

0 投票
1 回答
162 浏览

gstreamer - 来自内存变量的 Gstreamer 文本覆盖

我正在运行以下命令,此命令将视频广播到以太网端口。但这是我的问题,即如何将覆盖添加到覆盖值存储在共享内存中并且可能随时更改的视频上。

gst-launch-1.0 -v videotestsrc ! video/xraw,format=NV16, width=1920, height=1080, framerate=30/1 ! omxh264enc ! queue ! rtph264pay config-interval=10 ! udpsink host=192.168.1.5 port=5004

我应该运行另一个线程来做吗?

0 投票
0 回答
17 浏览

c - Lisp / Windows / Pango:无法注册现有类型“PangoLayout”

平台:Windows 10 Pro 20H2 64 位 / SBCL 2.2.0

库:mingw64/mingw-w64-x86_64-pango 1.50.3-1

通过 MSYS2 安装:pacman -S mingw-w64-x86_64-pango

重现的示例代码:

上面的代码将在最近的 macOS 和 Linux 下成功运行,但在 Windows 10 上,它将生成以下输出:

这是生成的图像(似乎是空白的):

生成的空白图像

但与此同时,C 等效代码可以正常工作:

所以我想 Lisp 和 Pango C 接口之间可能有一些奇怪的东西,也许它与 GObject 相关。

卡在这里很久了,大家有什么建议或建议,谢谢~