如何在 Gimp 中将图层移动到画布内的特定 XY 位置?
目前,我能找到的唯一方法是用参考线和/或鼠标位置目测。我想指定精确的 X 和 Y 坐标。
答案1
恐怕 Gimp 不包括它,因为它很繁琐。在设计时,它根本不是对齐元素的合适方法,尽管我认识到有时它作为捷径很有用。无论如何,最好的(正确)方法是使用指南:
A)步骤 1 - 创建参考线
- 前往图像->指南->新指南
- 指定是否需要水平或垂直参考线
- 指定像素数
- 对另一个水平或垂直参考线重复该过程(您也可以执行更多参考线来指定宽度和高度)
或者,您也可以从标尺拖动来创建参考线:
- 向下拖动(从顶部标尺开始)参考线至所需的 Y 坐标。
- 向下拖动(从左标尺开始)参考线至所需的 X 坐标。
B)第 2 步 - 移动画布
您可以使用移动工具。
- 选择图层
- 转到工具 -> 变换工具 -> 移动
- 将图层拖到参考线上。Gimp 将帮助您获得精确的像素。
设计原则之一是,整个项目中的元素应对齐。减少对齐(参考线)的数量有助于获得更简洁的设计。我认为这就是 gimp 不包含指定精确坐标的工具的原因。如果您想遵循此设计原则,则逐一指定精确坐标将变成一项繁琐的工作。
答案2
答案3
有一个脚本可以执行此操作,可以从 GIMP 插件注册表下载。它被称为:
安装:
将脚本移动到
%USERPROFILE\.gimp-2.8\scripts
Windows、~/Library/Application Support/GIMP/2.8/scripts
OS X 或~/.gimp-2.8/scripts
Linux 上的目录。(官方说明)点击
Filters
->Script-Fu
->Refresh scripts
。Layer
新的菜单项将出现在菜单底部Move to
。
答案4
我正在使用 GIMP 2.6.11。
使用以下 Python 代码行,可以将活动层从 Python 控制台移动到绝对位置,如 (32, 64):
>>> x_new = 32
>>> y_new = 64
>>> img = gimp.image_list()[0]
>>> layer = img.layers[0]
>>> x_off, y_off = layer.offsets
>>> pdb.gimp_layer_translate(layer, x_new - x_off, y_new - y_off)
或者你可以使用更简单的方法完成此操作gimp_layer_set_offsets
:
pdb.gimp_layer_set_offsets(layer, x_new, y_new)
或者,如果您只想移动图层的内容:
右键单击,图层 -> 变换 -> 偏移
或Shift+ Ctrl+ O。