RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / 问题 / 798308
Accepted
sinevik
sinevik
Asked:2020-03-15 01:48:46 +0000 UTC2020-03-15 01:48:46 +0000 UTC 2020-03-15 01:48:46 +0000 UTC

简单的svg编辑器[关闭]

  • 772
关闭。这个问题不可能给出客观的答案。目前不接受回复。

想改进这个问题? 重新构建问题,以便可以根据事实和引用来回答。

4年前关闭。

改进问题

这个世界上是否有像绘画一样的简单 svg 编辑器?画一个简单的图画

在此处输入图像描述

请帮帮我

svg
  • 1 1 个回答
  • 10 Views

1 个回答

  • Voted
  1. Best Answer
    Варлам Ерофеич
    2020-05-19T21:12:15Z2020-05-19T21:12:15Z

    我最常使用draw.io,它是俄语的。
    更多在线编辑:
    矢量图形在线编辑(收藏)
    并帮助将svg上的文章从MDN翻译成俄语,我悄悄地学习自己。

    啊,是的,前几天我从一个叔叔那里偷了一个很酷的贝塞尔曲线编辑器,然后把它翻译成他自己的语言。(是英文的)

    @use postcss-cssnext;
    @import url(https://fonts.googleapis.com/css?family=Open+Sans:400,600);
    
    :root { --ad-Color-sec: #0da;
            --ad-Color-hov: linear-gradient(to top, #044, #088, #044);
            --ad-Color-del: linear-gradient(to top, #222, #666, #222);
            --ad-Color-prim: #111;
            --ad-Color-foot: #122;
    }
    
    html {
        font-size: 16px;
        font-family: "Open Sans", sans-serif;
    }
    
    html,
    body {
        height: 100%;
    }
    .ad-no {text-transform: none;}
    .ad-App {
        height: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }
    
    /* основной макет */
    .ad-Container {
        height: 100%;
        width: 100%;
        display: flex;
        background: #fff;
    }
        .ad-Container-main {
            height: 100%;
            flex: 1;
            display: flex;
            flex-direction: column;
        }
            .ad-Container-svg {
                height: 100%;
                flex: 1;
                display: flex;
                align-items: center;
                justify-content: center;
                background: #f3f3f3;
                background-image: linear-gradient(to top, #ddd, #f3f3f3, #ddd);
            }
        
        .ad-Container-controls {
            overflow: hidden;
            display: flex;
            flex-direction: column;
            height: 100%;
            width: 20rem;
            background: var(--ad-Color-prim);
        }
        .ad-Container-controls ::-webkit-scrollbar {
            width: 6px;
        }
        .ad-Container-controls ::-webkit-scrollbar-thumb {
            border-radius: 30px;
            background: rgba(255, 255, 255, .3);
        }
    
    .ad-Foot {
        padding: 1.5rem 2rem;
        display: flex;
        background: #fff;
        border-top: 2px solid #eee;
    }
        .ad-Foot-list {
            flex: 1;
        }
            .ad-Foot-item {
                text-transform: uppercase;
                font-size: .7rem;
                color: var(--ad-Color-foot);
            }
            .ad-Foot-item + .ad-Foot-item {
                margin-top: .5rem;
            }
                .ad-Foot-highlight {
                    padding-bottom: .04rem;
                    border-bottom: 2px solid var(--ad-Color-sec);
                    font-weight: bold;
                }
        
        .ad-Foot-meta {
            margin-left: 2rem;
            text-align: right;
            line-height: 1.4;
            font-size: .7rem;
            color: var(--ad-Color-prim);
        }
            .ad-Foot-meta a {
                text-decoration: underline;
                color: var(--ad-Color-prim);
            }
    
    
    .ad-SVG {
        display: block;
        background: #fff;
        border-radius: 4px;
    }
        .ad-Grid {
            fill: none;
            stroke: #eee;
            stroke-width: 1px;
        }
        .ad-Grid.is-hidden {
            opacity: 0;
        }
        .ad-Path {
            fill: none;
            stroke: #555;
            stroke-width: 4px;
            stroke-linecap: round;
        }
        .ad-Point {
            cursor: pointer;
            fill: #fff;
            stroke: #555;
            stroke-width: 5px;
            transition: fill .2s;
        }
        .ad-Point:hover,
        .ad-PointGroup.is-active .ad-Point {
            fill: var(--ad-Color-sec);
        }
        .ad-PointGroup--first .ad-Point {
            stroke: var(--ad-Color-sec);
        }
        .ad-Anchor {
            opacity: .5;
        }
        .ad-PointGroup.is-active .ad-Anchor {
            opacity: 1;
        }
            .ad-Anchor-point {
                cursor: pointer;
                fill: #fff;
                stroke: #888;
                stroke-width: 5px;
            }
            .ad-Anchor-line {
                stroke: #888;
                stroke-width: 1px;
                stroke-dasharray: 5 5;
            }
    
    /* управление справа */
    .ad-Controls {
        overflow: auto;
        flex: 1;
        padding: 2rem;
    }
        .ad-Controls :first-child {
            margin-top: 0;
        }
        .ad-Controls-title {
            margin: 1rem 0;
            font-size: .8rem;
            font-weight: bold;
            color: #fff;
        }
            .ad-Controls-container {
                display: flex;
            }
            .ad-Controls-container + .ad-Controls-container {
                margin-top: 1rem;
            }
    
    .ad-Control {
        flex: 1;
    }
        .ad-Control-label {
            display: block;
            margin-bottom: .5rem;
            /*text-transform: uppercase;*/
            font-size: .7rem;
            font-weight: bold;
            color: color(var(--ad-Color-prim) l(+75%));
        }
    
    .ad-Result {
        height: 5rem;
        padding: 1rem;
        background: var(--ad-Color-foot);
        box-shadow: 0 -5px 10px rgba(0, 0, 0, .4);
    }
        .ad-Result-textarea {
            height: 100%;
            width: 100%;
            resize: none;
            border: none;
            background: none;
            text-transform: uppercase;
            font-family: "Open Sans", sans-serif;
            font-size: .7rem;
            font-weight: bold;
            line-height: 1.8;
            color: #fff;
        }
        .ad-Result-textarea:focus {
            outline: 0;
        }
    
    /* элементы управления */
    .ad-Button {
        padding: .8rem 1rem;
        background: var(--ad-Color-del);
        border: none;
        border-radius: 25px;
        cursor: pointer;
        transition: background .2s;
        /*text-transform: uppercase;*/
        font-family: "Open Sans", sans-serif;
        font-weight: bold;
        font-size: 1rem;
        letter-spacing: .08rem;
        color: #fff;
    }
    .ad-Button:focus,
    .ad-Button:hover {
        outline: 0;
        background: var(--ad-Color-hov);
    }
    .ad-Button--delete {
        background: var(--ad-Color-del);
    }
    .ad-Button--delete:focus,
    .ad-Button--delete:hover {
        background: color(var(--ad-Color-hov) l(+2%));
    }
    .ad-Button--reset {
        background: var(--ad-Color-del);
    }
    .ad-Button--reset:focus,
    .ad-Button--reset:hover {
        background: color(var(--ad-Color-hov) l(+2%));
    }
    
    .ad-Text {
        height: 18px;
        width: 2rem;
        background: color(var(--ad-Color-prim) l(+10%));
        border: none;
        border-radius: 4px;
        text-align: center;
        font-family: "Open Sans", sans-serif;
        font-size: .6rem;
        color: #fff;
    }
    .ad-Text:focus {
        outline: 0;
        background: color(var(--ad-Color-prim) l(+20%));
    }
    
    .ad-Checkbox-input {
        display: none;
    }
    .ad-Checkbox-fake {
        position: relative;
        height: 14px;
        width: 2rem;
        background: color(var(--ad-Color-prim) l(+10%));
        border-radius: 30px;
    }
    .ad-Checkbox-fake::after {
        content: "";
        box-sizing: border-box;
        display: block;
        position: absolute;
        top: -2px;
        left: 0;
        height: 18px;
        width: 18px;
        cursor: pointer;
        border: 4px solid #fff;
        background: color(var(--ad-Color-prim) l(+10%));
        border-radius: 50%;
    }
    .ad-Checkbox-input:checked + .ad-Checkbox-fake::after {
        left: auto;
        right: 0;
        border-color: var(--ad-Color-sec);
    }
    
    .ad-Choices {
        display: flex;
        width: 12rem;
    }
        .ad-Choice {
            flex: 1;
        }
            .ad-Choice-input {
                display: none;
            }
            .ad-Choice-fake {
                padding: .6rem;
                background: color(var(--ad-Color-prim) l(+10%));
                border: 4px solid transparent;
                transition: border .2s;
                cursor: pointer;
                text-align: center;
                text-transform: uppercase;
                font-family: "Open Sans", sans-serif;
                font-size: .8rem;
                font-weight: bold;
                color: #fff;
            }
            .ad-Choice:first-child .ad-Choice-fake {
                border-radius: 4px 0 0 4px;
            }
            .ad-Choice:last-child .ad-Choice-fake {
                border-radius: 0 4px 4px 0;
            }
            .ad-Choice-input:checked + .ad-Choice-fake {
                border-color: var(--ad-Color-sec);
            }
    
    .ad-Range {
        display: flex;
        align-items: center;
    }
        .ad-Range-text {
            margin-left: .5rem;
        }
        .ad-Range-input {
            width: 100%;
            height: 14px;
            appearance: none;
            border-radius: 30px;
            background: color(var(--ad-Color-prim) l(+10%));
        }
        .ad-Range-input:focus {
            outline: 0;
            background: color(var(--ad-Color-prim) l(+20%));
        }
        /* thumb */
        .ad-Range-input::-webkit-slider-thumb {
            -webkit-appearance: none;
            width: 18px;
            height: 18px;
            border: 4px solid #fff;
            background: color(var(--ad-Color-prim) l(+10%));
            border-radius: 50%;
            cursor: pointer;
            transition: border .2s;
        }
        .ad-Range-input::-moz-range-thumb {
            -webkit-appearance: none;
            width: 18px;
            height: 18px;
            border: 4px solid #fff;
            background: color(var(--ad-Color-prim) l(+10%));
            border-radius: 50%;
            cursor: pointer;
            transition: border .2s;
        }
    
        .ad-Range-input:hover::-webkit-slider-thumb,
        .ad-Range-input:focus::-webkit-slider-thumb {
            border-color: var(--ad-Color-sec);
        }
        .ad-Range-input:hover::-moz-range-thumb,
        .ad-Range-input:focus::-moz-range-thumb {
            border-color: var(--ad-Color-sec);
        }
    <div
         id="app"
         class="ad-App">
    </div>

    不幸的是,代码大小超出了本地限制,因此您将不得不使用“codepen”的链接:
    翻译:SVG Bezier 曲线编辑器
    来源:SVG Path Builder

    • 4

相关问题

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    是否可以在 C++ 中继承类 <---> 结构?

    • 2 个回答
  • Marko Smith

    这种神经网络架构适合文本分类吗?

    • 1 个回答
  • Marko Smith

    为什么分配的工作方式不同?

    • 3 个回答
  • Marko Smith

    控制台中的光标坐标

    • 1 个回答
  • Marko Smith

    如何在 C++ 中删除类的实例?

    • 4 个回答
  • Marko Smith

    点是否属于线段的问题

    • 2 个回答
  • Marko Smith

    json结构错误

    • 1 个回答
  • Marko Smith

    ServiceWorker 中的“获取”事件

    • 1 个回答
  • Marko Smith

    c ++控制台应用程序exe文件[重复]

    • 1 个回答
  • Marko Smith

    按多列从sql表中选择

    • 1 个回答
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Suvitruf - Andrei Apanasik 什么是空? 2020-08-21 01:48:09 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5