LINUX.ORG.RU

Трапециевидная деформация векторного изображения

 , , ,


0

1

Имеется картинка в SVG. Нужно, скажем, растянуть её основание, оставив верх без изменений.

1. Как это сделать в Inkscape? Если он это не умеет, какой редактор умеет?

Ответ:
Extensions -> Modify Path -> Perspective
оно же Расширения -> Изменение контура -> Перспектива
деформирует контуры по правилам перспективы. Именно это мне и было нужно.
Extensions -> Modify Path -> Envelope
(в русском интерфейсе отсутствует)
подгоняет контуры по форме произвольного четырёхугольника.

2. Какой редактор под Андроид это умеет?
Итог: Ответа не получил. Буду спрашивать в других местах.

Скрипт для пересчёта всех координат узлов в командной строке не предлагать.

Заранее спасибо.

★★★★★

Последнее исправление: question4 (всего исправлений: 1)

Наверное, расширения->изменение контура->перспектива.

Рисуешь нужную трапецию, куда тебе надо вписать твое изображение, потом выделяешь объект и трапецию, удерживая Ctrl. Потом вот это, что выше в меню. Должно вписаться.

Как интерактивно вписывать сразу не скажу. Что-то ни разу не делал это в inkscape, а только в GIMP.

Zubok ★★★★★
()
Последнее исправление: Zubok (всего исправлений: 1)
Ответ на: комментарий от vostrik

нарисуй трапецию, сгруппируй все остальное и сделай Envelope. как в ведроиде - хз

А, вот да — Envelope. Это в path editor.

Zubok ★★★★★
()
Последнее исправление: Zubok (всего исправлений: 1)
Ответ на: комментарий от Zubok

русский языка великая и могучая

яснее выражаться надо. Envelope в Extensions - Modify path это и есть «расширения->изменение контура->перспектива». Envelope в Path editor - это и есть «интерактивно вписывать».

vostrik ★★★☆
()
Ответ на: русский языка великая и могучая от vostrik

яснее выражаться надо. Envelope в Extensions - Modify path это и есть «расширения->изменение контура->перспектива». Envelope в Path editor - это и есть «интерактивно вписывать».

Именно это и имел в виду. Интерактивно — это прямо вот ручками точки в нужное место ставить, а «перспектива» - это тоже самое, но оно само все делает — только указываешь что и куда. «Перспективу» использовал, а вот «Деформацию по огибающей» (Envelope) нет.

Zubok ★★★★★
()
Последнее исправление: Zubok (всего исправлений: 1)
Ответ на: комментарий от Zubok

Наверное, расширения->изменение контура->перспектива.

То, что было нужно! Спасибо.

Но работает только с контурами.

(На всякий случай: Extensions -> Modify Path -> Perspective)

И почему оно поворачивает преобразуемый контур на 90 градусов по часовой стрелке?

question4 ★★★★★
() автор топика
Ответ на: русский языка великая и могучая от vostrik

яснее выражаться надо. Envelope в Extensions - Modify path это и есть «расширения->изменение контура->перспектива». Envelope в Path editor - это и есть «интерактивно вписывать».

Что-то я запутался. В английском интерфейсе есть 2 команды: «Extensions -> Modify Path -> Perspective» и «Extensions -> Modify Path -> Envelope». Первая делает то, что мне было нужно, вторая делает то, что написано в стартовом посте :) В русском интерфейсе в подменю «Расширения -> Изменение контура» на 1 команду меньше, есть Перспектива, но нет ничего похожего на Envelope. Совсем нет, или оно в другом подменю?

question4 ★★★★★
() автор топика
Ответ на: комментарий от question4

есть Перспектива, но нет ничего похожего на Envelope. Совсем нет, или оно в другом подменю?

Контур->Редактор контурных эффектов->(сбоку выбрать)->Деформация по огибающей->кнопка «Добавить»

Zubok ★★★★★
()
Последнее исправление: Zubok (всего исправлений: 3)
Ответ на: комментарий от Zubok

Спасибо, но в виде готового расширения, делающего ту же работу в 1 клик, это недоступно?

И этот редактор контурных эффектов почему-то грузит процессор на 91-100%. Даже когда я ничего не вводил. Так и должно быть?

Сейчас обновляюсь с 0.48 до 0.91, посмотрю как там. Если так же — буду писать баг на Inkscape.

question4 ★★★★★
() автор топика
Ответ на: комментарий от question4

Спасибо, но в виде готового расширения, делающего ту же работу в 1 клик, это недоступно?

Не знаю точно. Вообще, надо одну вещь проверить: Результат «Перспективы» отличается от «Envelope».

И этот редактор контурных эффектов почему-то грузит процессор на 91-100%. Даже когда я ничего не вводил. Так и должно быть?

У меня вроде не грузит. Деформируемый объект сложный?

Zubok ★★★★★
()
Ответ на: комментарий от Zubok

Не знаю точно. Вообще, надо одну вещь проверить: Результат «Перспективы» отличается от «Envelope».

Уже проверил. В русском интерфейсе есть только «Перспектива». При преобразовании смещает по 2 координатам. В отличии от Envelope, который для трапеции двигает только параллельно её основаниям.

У меня вроде не грузит. Деформируемый объект сложный?

Я даже не начал ничего деформировать. На листе были штуки 4 прямоугольника, преобразованных в кривые Безье и деформированных, и текст «ACHER», тоже в кривых.

question4 ★★★★★
() автор топика

su_v с канала #inkscape на Freenode сказал, что в po/ru.po и Envelope, и Perspective переведены одинаково, как «Перспектива». И попросил связаться с «prokoudine». Посему в тему вызывается AP.

Вот соответствующие фрагменты:

#: ../share/extensions/perspective.inx.h:1
msgid "Perspective"
msgstr "Перспектива"

...

#: ../share/extensions/summersnight.inx.h:1
msgid "Envelope"
msgstr "Перспектива"

Это ошибка, или у такого перевода есть глубокий смысл? Если нет, я тогда вечером отправлю патч. Как лучше перевести «Envelope»? Как «К огибающей»?

question4 ★★★★★
() автор топика
Последнее исправление: question4 (всего исправлений: 1)

Да, и по существу. Есть довольно унылый хакэраунд, как гнуть текст, не превращая его в кривые. Делается через клоны и редактор XML, если я правильно помню. Su_v его точно знает, мы с ней даже урок про это чуть не написали как-то.

AP ★★★★★
()
Последнее исправление: AP (всего исправлений: 1)
Ответ на: комментарий от AP

Сходу даже не вспоминаю разницу

Выше написано: Envelope для огибающей-трапеции двигает все точки только параллельно основаниям, Perspective заодно смещает в сторону меньшего основания.

anonymous
()
Ответ на: комментарий от AP

Есть довольно унылый хакэраунд, как гнуть текст, не превращая его в кривые.

Для других объектов он пойдёт? Или только для текста?

anonymous
()
Ответ на: комментарий от anonymous

Для любых подойдёт. Просто текст был тогда важен в контексте определённой задачи.

AP ★★★★★
()
Ответ на: комментарий от question4

И этот редактор контурных эффектов почему-то грузит процессор на 91-100%. Даже когда я ничего не вводил. Так и должно быть?

Стёр ~/.config/inkscape/ и Inkscape прекратил надолго задумываться. Что у меня там было, интересно?..

question4 ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.