问题标签 [cairo]
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.
makefile - GTK 2.9 编译(在 Lucid Lynx 上)需要什么 cairo?
我一直在尝试运行 configure 以在新的 Linux 机器(运行 Ubuntu 10.04 Lucid Lynx)上为 GTK 2,9 准备 make 文件。
它抱怨了一些依赖关系,包括:
- glib-2.0
- 攻击 (1.29.2)
- 盘古 (1.20)
- 开罗 (1.6)
我设法找到了 glib 2.22.0,下载了 atk 但还没有编译,还没有启动 pango,但是当我试图获取 cairo 包时,我不知道从哪里得到它!
GNU 站点上什么都没有,GTK 站点上没有!
有谁知道从哪里得到它?
gtk - Cairo “在 pkg-config 搜索路径中找不到 libpng”
我正在尝试安装 GTK-DFB,而 cairo 是必需的。当我尝试从源代码构建它时,它会抛出:
想法?
谢谢
c++ - 在 WebKit 中禁用滚动条(平面框架模式)
我将 WebKit 嵌入到 Windows C++ 应用程序中。我正在使用开罗港口。它工作正常。
当客户区可以显示更多数据时,我想禁用出现的滚动条。和 iPhone 一样,iPhone 没有滚动条,滚动的实现方式不同。
如何在 C++ 中以编程方式禁用滚动条(无 Javascript hack)?
更新:
我试着打电话HRESULT IWebFrame::setAllowsScrolling(BOOL flag)
。为了获得 IWebFrame 接口,我调用了HRESULT IWebView::mainFrame(IWebFrame **frame)
. 这似乎不起作用。滚动条仍然出现。我究竟做错了什么?这不是我主要感兴趣的主要框架吗?
更新:
我尝试启用这样的平面框架模式:
代码运行良好,但似乎没有任何反应。我在这里做错了什么?
更新:
我收到了在创建主窗口时可能包含 WS_VSCROLL 的建议。不是这种情况:
谢谢,
graphics - 在开罗创建可变宽度笔触
Cairo 中的 stroke() 将单个指定宽度的笔画应用于线条路径。
我想绘制一条宽度不同的路径(用户绘制速度较快时较细,较慢时较粗)。在开罗这可能吗?
python - 如何使用 CherryPy 在 HTTP 响应中返回图像
我有生成 Cairo 的代码ImageSurface
,我像这样公开它:
这不起作用(浏览器报告图像有错误)。
我已经测试过它的surface.write_to_png('test.png')
工作原理,但我不确定将数据转储到什么中以返回它。我猜是一些类似文件的对象?根据pycairo 文档,get_data()
返回一个缓冲区。我现在也尝试过:
另外,在内存中创建和保存这个图像(就像我正在尝试做的那样)或者将它作为临时文件写入磁盘并从那里提供它会更好吗?我只需要图像一次,然后可以将其丢弃。
fonts - 跨平台获取可用字体列表的方法
我正在使用 Pango 和 Cairo。有没有一种简单的方法来获取可用字体列表?只要解决方案相当简单,我愿意使用另一个库。
vector-graphics - 开罗掩蔽 - 我有什么遗漏吗?
所以我试图在开罗设置一个面具,但无法让它产生任何影响。下面我有一个基于这里的简单程序:http: //snipplr.com/view/22584/cairo-hello-world-examble/。
我正在设置一个完全透明的蒙版,所以什么都不应该被绘制,但它似乎没有任何效果 - 文本仍然被绘制。我的代码如下。我错过了什么?
谢谢!
python - 重新绘制时放大到 Clutter CairoTexture
我正在使用 python-clutter 1.0
我的问题是挑战的形式
编写代码以允许通过按键放大到 CairoTexture 演员,在步骤中,可以(通过 cairo)重新绘制每个演员,以便图像保持高分辨率但仍按预期缩放,无需重新调整演员的大小。
想想 Inkscape 之类的东西,以及如何放大矢量;矢量如何在任何放大倍率下保持干净。将一条路径(例如一组 cairoline_to
命令)放在 CairoTexture actor 上,然后让相同的技巧发生。
更多详情
我的目标是使用一组演员的小型 SVG 编辑器。每个演员都致力于一条道路。我通过使用“缩放”SomeGroup.set_depth(z)
然后使 z 更大/更小。到目前为止一切都很好。然而,演员离相机越近,纹理被拉伸得越多以适应他们新的外观尺寸。
我似乎无法找到让 Clutter 做到这两点的方法:
- 让演员的实际尺寸保持不变(即开始时的尺寸。)
- 将其底层表面换成较大的表面(放大时),然后我可以将路径重新绘制到上面(并使用 cairo 矩阵来执行上下文的缩放。)
如果我使用set_size
or set_surface_size
,演员会变大,这是不希望的。我只希望它的表面(基础数据)变得更大。
(我不确定这个术语,也许是 mipmapping?)
换句话说:多边形越来越大,增加其纹理数组的大小,以便它可以映射到更大的多边形上。
我什至尝试过通过保持第二个表面(使用 pycairo)来结束混乱,将其重新创建为演员的表观大小(get_transformed_size
),然后我使用混乱set_from_rgb_data
并将其指向我的第二个表面,强制重新表面的大小,但不是演员的尺寸。
这样做的问题是a)混乱忽略了新的尺寸,只吸收了旧的宽度/高度,b)RGBA 与 ARGB32 的东西会导致颜色崩溃。
我对任何替代想法持开放态度,我希望我站在树林里想念所有的树!
\d
python - 如何在 matplotlib / Python 中更改后端
我正在努力解决以下问题。我需要生成包含一组图表的报告。所有这些图表,除了一个,都是使用 Matplotlib 默认后端(TkAgg)制作的。需要使用 Cairo 后端制作一个图表,原因是我正在绘制一个 igraph 图,并且只能使用 Cairo 绘制。
问题是我不能即时更改后端,例如以下不起作用:(
matplotlib.pyplot.switch_backend('cairo.png')
我知道 switch_backend 功能是实验性的)
而且我也尝试过matplotlib.use("cairo.png")
,但这会导致导入问题,因为该matplotlib.use("cairo.png")
语句应该在导入之前出现matplotlib.pyplot
。但在脚本的整个生命周期中,我需要两个不同的后端。
所以我的问题是有人有一个代码片段来显示如何在 Matplotlib 中切换后端?
非常感谢!
更新:我写了一个片段,加载 matplotlib,显示默认后端,卸载 matplotlib,重新加载它并更改后端:
但这真的是这样做的方法吗?
更新 2:我昨天有一些严重的大脑冻结......简单和最明显的解决方案是对所有图表使用 Cairo 后端,并且根本不切换后端 :)
更新 3:实际上,这仍然是一个问题,所以任何知道如何动态切换 matplotlib 后端的人......请发布您的答案。
c - 开罗分割图像
在我的 gtk+ 应用程序中,我需要以高分辨率分割图像。我怎么能用开罗呢?我在哪里可以找到示例?
谢谢