Inkscape.org
Beginners' Questions Bezier Envelope Distortion (Take 2)
  1. #1
    ColinKing ColinKing @ColinKing

    I want to place the word "SYLVANIA" into the Black-lined shape. The shape was drawn with Bezier Curves out of the order required for the Envelope Distortion function to work, and their were nodes inserted to make the curves relative to what the surface appears to be. The top curve is merely a duplicate of the original 'cap' and just scaled down. A duplicate was made and translated to a lower position, and the 2 curves were then connected to create the shape. I am ashamed that this is so hard for me to do. The green-lined shape is the shape drawn the correct way for the Envelope Distortion to function - in order (clockwise, starting from the bottom left, and no nodes inserted. You see that there is quite the difference required to 'clean' things up. There has to be a way to avoid all the extra fiddly nonsense and as Joe Friday would say, "Just the Facts Mam." Attached is a Screenshot of what I am needing to do.

    I am using Version: 1.2 on the Windows 10 platform.

    Thank you in advance for answers that would be helpful.

    Colin King

  2. #2
    Polygon Polygon @Polygon🌶

    I find the hardest part is to draw this from just 4 nodes where usually 6 are required due the steep curvatures and to make sure it´s 100% symmetrical so the font will be straight upright and not lean to left or right. If you like the resulting distribution by the extension is another question and needs probably more planning beforehand.

  3. #3
    ColinKing ColinKing @ColinKing
    *

    Polygon,

    I think I may have errored in the way I described it. I was not trying to place the text into the shape by way of the Path > Path Effects > Envelope Distortion function. I was intending to transform the text by way of Extensions > Modify Path > Envelope. I see where you went by using the handles on the nodes to coax the Green-lined shape to closely match that of the Black-lined shape, and I have done just that. I have positioned the text by way of the Align-and-Distribute function and then do Path > Object-to-Path, performing the same on the shape. Then when I go do the Extensions > Modify Path > Envelope the text gets wedged within the bottom portion of the shape in a 90* counter-clockwise position. I have tried this by rotating the text prior by rotating it 90* clockwise too and doesn't distort, but I remains horizontal. I will attach both procedure's outcomes. My appologies.

    Colin King

     

  4. #4
    Polygon Polygon @Polygon🌶

    As per the other thread: rotate converted Text (with Path->Union) 90° clockwise before calling the extension.

  5. #5
    ColinKing ColinKing @ColinKing

    Python,

    I have no idea why it is not producing a positive result, I have:

    • rotated it 90* clockwise
    • applied Path > Object-to-Path
    • Path > Union
    • verified it was a group of 8 objects
    • ended it with Extensions > Modify Path > Envelope

    I get the same result as when I rotated it 90* clockwise without Path > Union.

  6. #6
    mendy mendy @mendy

    Late to party once again. Had looked at Sylvania vacumn tube images and it seems the lines and text are horizontal to tube. Thought of LPE Perspective as another option.

    Next is more for @Polygon re: symetrical. This is simplified version of method was using to take wine goblet to place text on it using a number of other methods and extensions. This is just downsized to one operation using Bezier Envelope.

     

  7. #7
    Polygon Polygon @Polygon🌶
    *

    @ColinKing

    One last time: Type+design Text object - go Path->Union to convert text to path - rotate 90° clockwise

    Draw rectangle with the Bézier tool clockwise starting+finishing at the bottom left corner - use Node tool to make the upper+bottom edges arcs.

    Select both - go Extensions "FabLab Chemnitz->LegacyTools->Bezier Envelope

  8. #8
    mendy mendy @mendy

    @Polygon my post was more to show  another way how to get a symetrical curve per your example in post 2. Read more closely think you are referring to post 5 and not mine. Sorry.

  9. #9
    ColinKing ColinKing @ColinKing

    Mendy,

    The tube I'm drawing is not vertically perpendicular the the plane of the viewer.

  10. #10
    Polygon Polygon @Polygon🌶

    @mendy - yeah. Corrected it by tagging. And as you can see your example text isn´t symmetrical (shifted to the right).

    @ColinKing - yes - bring it upright - make the text thing and rotate back.

  11. #11
    ColinKing ColinKing @ColinKing

    Python,

    I don't have FabLab Chemnitz > Legacy Tools > Bezier Envelope. I did a Google Search for "FabLab Chemnitz Inkscape Extensions" and I was not presented with the extension.

    Colin King

  12. #12
    ColinKing ColinKing @ColinKing

    Mendy,

    Are you saying that I take the "as drawn" portion and bring it upright?

    CK

  13. #13
    Polygon Polygon @Polygon🌶
    *

    Wonder where your extension is from.

    MarioVogt updated a whole if not all extensions available to modern Inkscape versions. Try this from here:https://gitea.fablabchemnitz.de/FabLab_Chemnitz/mightyscape-1.X/src/branch/master/extensions/fablabchemnitz/bezier_envelope/bezier_envelope.py

     

    Or get the whole chunk of updated extensions in a large zip file (648MB): https://gitea.fablabchemnitz.de/FabLab_Chemnitz/mightyscape-1.X

  14. #14
    ColinKing ColinKing @ColinKing

    Python,

    OK. Clear as mud. Where do I find the .zip file for the Bezier Envelope!? 🤬

    CK

  15. #15
    Polygon Polygon @Polygon🌶
    *

    While CaroleKing is waiting for Python to reply get you new glasses:

  16. #16
    Tyler Durden Tyler Durden @TylerDurden

    The Bezier Envelope files (.inx, .py) can be downloaded individually. I suggest downloading and installing the entire mightyscape collection, though. Great stuff inside.

  17. #17
    ColinKing ColinKing @ColinKing
    *

    Polygon,

    I have downloaded the Bezier Envelope extension and it is installed. What now?

    I get:

    • Message
      • I then look up how do i create an SVG Path: "... For the Path data "Path string format", select "Relative". Then you need to modify your image position to trigger updating the paths to relative."
      • I then look up how do i modify the image position. Basically you move the object? Correct?

    I am still getting the same message.

    CK

    BTW. I will ignore the glasses thing. 🙄

  18. #18
    Polygon Polygon @Polygon🌶

    Check Status bar if you´re really  dealing with path and not groups or shapes and whatnot.

  19. #19
    ColinKing ColinKing @ColinKing

    Polygon,

     

    CK

     

  20. #20
    Polygon Polygon @Polygon🌶

    Groups are not allowed in this extension. We covered this all already over 5hs ago.

  21. #21
    ColinKing ColinKing @ColinKing

    Polygon,

    I went:

    • Object-to-Path
    • Ungroup
    • Path > Union
    • Choose shape
    • Extensions > FabLab Chemnitz > Transformations > Bezier Envelop

    Result:

    1. Message 2.jpg
    2. result_ZpsXQlw.jpg

    CK

  22. #22
    Polygon Polygon @Polygon🌶

    Way too many steps plus 90° clockwise rotation for the converted text is missing, but you know that already and ignoring steps from reply#7  for fun and my entertainment I guess. 🤔

  23. #23
    ColinKing ColinKing @ColinKing
    *

    Polygon,

    No. Just forgot to rotate. What steps would you eliminate?

    CK

    BTW. Is the too many steps causing the error messages?

  24. #24
    ColinKing ColinKing @ColinKing

    Polygon,

    I did:

    • the rotation 90* clockwise
    • converted the text to a path
    • shift-click the shape
    • Extensions > FabLab Chemnitz > Transformations > Bezier Envelope

    It still gives me a message that both objects need to be SVG Paths. Please tell me what this means in complete and concise wording. I an no longer in familiar territory.

    The last message I received was that I took too many steps. You never listed the too many steps. I know that they were probably somewhere back in the reply's and you are busy helping others.

    I know I have been an awful pupil and you have been patient. I ask you to please give me the step-by-step instructions to utilize to get this completed and I will be out of your hair. Remember I am not a veteran user.

    CK

  25. #25
    Tyler Durden Tyler Durden @TylerDurden
    🙈

    What Polygoon is rudely alluding to, is the undocumented shortcut to convert a Text object to a single compound path, using Path>Union, instead of Object to path, Ungroup, Union. 

     

     

  26. #26
    Tyler Durden Tyler Durden @TylerDurden

    Maybe this will help

     

  27. #27
    ColinKing ColinKing @ColinKing

    Tyler,

    Thank you! It worked flawlessly.

    Can you explain this error message I receive before the function executes. It still executes nonetheless. Just curious.

    CK

  28. #28
    Tyler Durden Tyler Durden @TylerDurden
    ColinKing

    Can you explain this error message I receive before the function executes. It still executes nonetheless. Just curious.

    Probably need the Inkscape svg file to test... in the state just before the extension is run.

  29. #29
    ColinKing ColinKing @ColinKing

    My issue was successfully resolved. 👍 😀

Inkscape Inkscape.org Inkscape Forum Beginners' Questions Bezier Envelope Distortion (Take 2)