Inkscape: копирование объекта с сохранением прозрачности

14

Я ищу способ скопировать объекты из одного окна в другое, не теряя при этом прозрачности.

У меня есть два окна Inkscape. Настройка довольно проста. В первом окне я рисую заполненный круг и заполненный прямоугольник в нем, с кругом, установленным в верхней части прямоугольника, чтобы показать, что область вокруг круга прозрачна (то есть вы можете видеть прямоугольник «под» кругом, см. скриншот 1, слева). Во втором окне я просто нарисовал заполненный прямоугольник (скриншот 1, справа).

Перед

Когда я копирую круг из окна 1 в окно 2, прозрачность вокруг круга теряется (скриншот 2).

После

Я проверил, что фоны документов 0% альфа / белый.

Это довольно надуманный пример, но его легко воспроизвести. Реальная графика, с которой я работаю, состоит из множества объектов в одной группе, но у меня одинаковые результаты. Я чувствую, что что-то упустил. Круг больше не ведет себя как круг в месте назначения. Вместо этого он действует как растровое изображение. Я определенно не использую функцию растрового копирования.

ДПК
источник

Ответы:

4

У меня такая же проблема. Кажется, объекты, которые были скопированы, имеют белый фон. Я нашел способ поместить объекты в другое окно без этого фона:

  • сохраните ваш первый файл (формат SVG)
  • перейти в другое окно
  • импортировать его (Файл -> Импорт)

Это импортирует все объекты, которые были в первом файле, но вы можете удалить те, которые вам не нужны.

Франсуа
источник
12

Основная проблема заключается в том, что в современных пакетах Inkscape для Mac OS X вставленные объекты действительно вставляются в виде растровых изображений (на сплошном белом фоне), а не в виде векторных копий исходных векторных объектов.

Это связано с известным конфликтом в восходящем направлении с синхронизацией монтажной панели в X11 / Xquartz: скопированные векторные объекты вставляются в виде растровых изображений, а векторная информация (стиль, путь) недоступна в других командах Inkscape, которые ожидают векторных данных в буфере обмена ( например, стиль вставки, размер вставки, «Форма: из буфера обмена» в инструментах «карандаш / ручка», «Вставить путь» в редакторе эффектов контура и т. д.)

Настройте параметры X11 для монтажной панели, как описано в FAQ по Inkscape: при копировании и вставке в Inkscape создаются пиксельные изображения вместо копирования векторных объектов (как показано на этом снимке экрана ). Изменения вступят в силу немедленно (нет необходимости перезапускать X11 / XQuartz или Inkscape), но объекты, скопированные и вставленные ранее, должны быть переделаны.

su_v
источник
Хорошая работа по выявлению первопричины такого поведения.
Михай Дамиан
10

В настройках X11 снимите флажок «Обновить Pasteboard при изменении CLIPBOARD»: введите описание изображения здесь

Кроме того, вы можете использовать ярлык Ctrl-Dдля дублирования выбранного объекта, так как это не касается буфера обмена.

Мэтт Бернс
источник
Это решило это! Вы должны добавить комментарий о нормальном поведении, которое приводит к копированию растрового изображения вместо векторов.
Йоаким Содерберг
1
Спасибо, и ctrl-dтрюк особенно заметен.
Скотт Биггс
1
Это правильный ответ и должен быть предпочтительным. Вам даже не нужно перезапускать Inkscape после того, как вы сняли галочку. Отличное решение даже после 4,5 лет
user18783
@ user18783 ха-ха, спасибо за напоминание! Я столкнулся с этой проблемой на днях (на новом Mac) и просто обошел ее хуже, потому что я забыл, что когда-либо решал ее раньше.
горит
0

Я думаю, что вы хотите клонировать объект вместо использования копирования - при копировании Inkscape вставляется как растровое изображение. Используя Clone, я могу получить прозрачность, которую я ожидаю при перекрытии объекта.

Энн Джентл
источник
Можете ли вы клонировать из одного окна в другое? Я не нашел способ.
дпк
0

Попробуйте дублировать вместо копирования.

У меня была эта проблема при попытке выделить несколько текстовых полей и скопировать их: фон между текстом стал непрозрачным белым. Вместо того, чтобы копировать, я попытался дублировать, и это дало мне именно то, что я хотел: копию всех текстовых полей в одинаковых позициях относительно друг друга без фона, соединяющего их.

rcpi
источник
0

Я бы предпочел это прокомментировать, но у меня недостаточно репутации: помимо изменения настроек буфера обмена X11 и ctrl+d вы также можете открыть файл SVG в текстовом редакторе (вероятно, лучше сначала закрыть его в Inkscape) и скопировать и вставить его.

Чтобы уточнить, SVG - это подмножество XML, поэтому текстовый редактор предпочтительно должен быть XML-редактором.
Кроме того, чтобы найти путь / группу, которую вы хотите скопировать, в представлении XML документа, в Inkscape посмотрите, что представляет собой идентификатор этого пути / группы, а затем найдите этот идентификатор в редакторе XML.

owengall
источник
Ну, вы опубликовали это как ответ. Вместо того, чтобы признать, что это не ответ, почему бы не дать ему ответ, объяснив, о чем вы говорите? Как «открыть файл SVG в текстовом редакторе… и скопировать туда»?
G-Man говорит: «Восстановите Монику»