New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Curve Text Feature [$200] #729
Comments
Have you looked at something like this: Or is the challenge to get curved text in the canvas with object controls? On Mon, Jul 1, 2013 at 9:20 AM, dean555 notifications@github.com wrote:
|
Hi mojo5000 We need it to work with fabric :( |
I need this functionality as well. I'm using fabric to create a T-shirt designer app. I think this is a common app using fabric. All good T-shirt apps allow text warping. It is huge in T-shirt design. Please someone write this!! Fabric is 99% perfect and this is the missing link! |
I am working on T-shirt designer app as well. I wonder if we should join hands rather than competing with each other ;). BTW check out the https://github.com/imomin/fabric.curvedText. |
I tried the new code but still can't get it to work for me. Are you able to use this code to curve text successfully? I'm working on a t-shirt app that will have layers similar to photoshop w/ hide/lock functions for each layer/canvas item. Can you post a jsfiddle of this working for you? |
Here you go! http://jsfiddle.net/NHs8t/ |
@imomin you are a godsend thx |
Hi @imomin Nice work but you cannot make the text straight also you have 3 sliders. Can we make it using one single slider so that user adds a text which is straight and then he can curve it up/down using a slider. And the curve text should also work with load from SVG and JSON and export as well. But excellent job till now. |
@dean555 I started my project few weeks ago and I haven't got to SVG/JSON export yet. I will make changes to it as I move forward. |
I noticed its a group of fabric.text objects is there any performance advantages of using this rather than rendering each letter individually? |
Hi all, |
I started to work on my own curved text, I am NEW to fabric and OO javascript and HTML5/Canvas, so I am having some issues trying to make it work. Any hint would be greatly appreciated. My Goal is to make a fabric object that acts like the others (getText, setText, set properties, export SVN, JSON, etc...) |
In your $(function(){....} on line 643 add var canvas = new fabric.Canvas('c'); and add comma after left:50,.Hopefully this will help you move forward. http://jsfiddle.net/t4VPQ/14/ |
yes, Thank you, saw that after I updated the comment :-) was a copy/paste error. The problem is that I can't seems to render the text on the main canvas. |
Ok, a lot of functionality is ready... I just can't figure it out how to refresh the render on the fly.. dang |
I have a almost fully working example. I need to figure out how to make the resize work as well as test the exports (SVG and jSON) |
You want curved Text that acts like normal TEXT ?? Here it is :-D |
Nice work @EffEPi :) I was really looking towards this feature |
That gives me a new idea.. freehand Text. Using the drawing mode create a path and then set the text around that path.. but this is out of the scope of this thread |
A bit like http://csswarp.eleqtriq.com/ ? :) |
Yeah, looks pretty badass. We're planning to have text-on-path sometime in On Sun, Sep 29, 2013 at 5:22 PM, tiredenzo notifications@github.com wrote:
|
@EffEPi : Whoaaaaaw! I wish I had your skills... |
@Jochuaf let me know if you have any improvements for it. I am already planning on a new rewrite that maybe doesn't use grouping and export to SVN as paths and also imports from path... to do that I have to learn SVN rendering a bit better |
EffEPi : thanks for the answer. I've managed to implement your code into my the project I am working on (light product customizer). I have to say it works very well. Attaching text to path would be also great and I think I wouldn't be the only one interested in that :-) |
Hi everyone Have there been any developments with getting curve text to work? getting desperate now... :( |
@EffEPi how would you do this extending from IText instead of Text? I need the text to be editable. |
Has anyone solved this issue yet? My site is waiting on a solution that uses a slider to curve text. Willing to pay a developer to develop this. |
@goldguy23 no solution yet and there's too much other stuff for me to go through until I can get to this. There's already $100 bounty on this, but this is almost certainly very small for a feature like this (worth at least 1K+; a lot of stuff to consider) |
If I made the bounty 1000 when do you think you could work on this. We are trying to launch our new site by mid September. If you can't get to this then I understand and we would just wait another year as it's a nice to have not a need to have. Marc Goldberg
|
No time to work on this now, sorry. kangax On Wed, Aug 6, 2014 at 2:27 PM, goldguy23 notifications@github.com wrote:
|
@lucasa: Check https://jsfiddle.net/av01d/4p0syzw3/ |
Thanks for making this, It works well :) |
@av01d same thing happens to me as @sweetsmurph If you export the canvas with a multiplier which is common for printing the text is rendered at the original pixel size not the scale up size. I believe for normal text this is handled internally by fabric by setting a scale on the canvas but since your solution draws to a canvas which is then multiplied x times by canvas it comes out blurry. This could probably be solved by drawing onto the ctx supplied in _render directly. I can't see why it's rendering onto a temporary canvas but guessing it's a kinda lazy way of not having to know where exactly we are drawing too. I can't can't quite work it out. Would appreciate if you could take a look @av01d Here's a fiddle with the multiplied document writing out to the body so scroll down a lot as you're looking at a lot bigger image. Notice normal text isn't blurry but your curved text is. https://jsfiddle.net/mjpch7uz/ On a side note: A preferred curve text class would really involve extending text so all the standard properties can be used but seeing this issue has been open for 5 years I'll take yours 👍 |
@shokimble: Here's an updated fiddle: http://jsfiddle.net/av01d/5vcmx9pt/ The default for zoomFactor is 1 (unsharp), you can increase this as needed. |
Thanks for writing that up. Understand the concerns about memory as the radius can get very large. The problem I have and I'm sure others will too is you may not actually know what the multiplier is ahead of time. I think the issue you described might be a non issue as you can extend beyond the canvas and go into negative coords without an error occuring. I'll have a play with it and report back. Thanks again |
I tried to make a solution. |
@mahmudz Looks promising, very well done! Will you share your code, as I did, when you think it's ready? |
i won't accept solutions that do not cover text on path and from svg to svg export. I understand is a nice feature, but not worth alone. |
CleverBrush (https://cleverbrush.com/editor/) managed to implement it: text-on-path with SVG-export. |
svg export is very easy, is the canvas rendering that i think is not. There is another lib that support text on path and i think is called paper.js? |
In reference of below fiddle : Is there any solution for prevent user to make scaling till minimum 100px or any patch for text not overlap when user scale down that circular text (prevent user to scale down when both end of text are touch up with each other) Please help if possible and update fiddle. |
Is there a solution to work on Node ? |
Here is an old curved class created on Fabricjs 1.X that worked fine. `(function (global){
// letters: null,
// console.log('End rendering')
// this.letters.render(ctx);
// object.borderScaleFactor=groupScaleFactor;
// object.borderScaleFactor=originalScaleFactor;
// if(!noTransform&&this.active){
})(typeof exports!=='undefined'?exports:this);` |
Hi @asturur Any update on this? |
Hi @asturur Would you please confirm by when you are planning to launch updated curved text JS? |
Hello, I am also looking for this update |
I am also eager for an update |
Bountysource decided to update their Terms of Service:
https://www.bountysource.com/issues/446987-curve-text-feature |
thanks @gustavorps i ll try to save the bounty |
I also hope to update the arc text soon |
SVG export not working :( |
@rifatwahid sit tight, official support for textpath is currently in the works. |
@melchiar I have configured the code (https://jsfiddle.net/av01d/4p0syzw3/) in a test project but couldn't make SVG export work :( is it possible to help me with the SVG export? I have tried with fabricjs 3.6.3 and 4.0.0 as well |
@rifatwahid Sorry, I'm not able to help you add SVG support. The solution you're using was built by @av01d so you could perhaps reach out to him for help. I'd advise waiting though and using the official text on a path solution when it's ready, which will support SVG import/export as well as the ability to curve text along any arbitrary path, not just circles. |
@melchiar thank you so much for the reply :) any expected or idea about the release date? :) |
@rifatwahid it will be released when it's ready 😉 |
@melchiar I can't sleep for this :D hope it will be released soon. Can I get this feature here: https://github.com/fabricjs/fabric.js/releases/tag/v4.0.0 ? Thank you so much for making this excellent canvas library 👍 😉 |
official progress here: |
Hi
Loving the product but we desperatly need curve text. I've seen that it's on the roadmap but would like to ask if there is any progress or anything that can be done to help?
Great work guys!
There is a $200 open bounty on this issue. Add to the bounty at Bountysource.
The text was updated successfully, but these errors were encountered: