Giter Site home page Giter Site logo

Comments (8)

yGuy avatar yGuy commented on May 27, 2024

True - the reason is that the new code only runs when there is no "pathSegList" JS property, which still exists for Firefox and Safari, but is gone with Chrome. We should probably just move the
SvgPath && (d = SvgPath(d).unshort().unarc().abs().toString()); part higher up in front of the return statement in getPathSegList() since the calling code expects all of the svg path oddities to have already been removed when the call returns.

from svg2pdf.js.

TorsteinHonsi avatar TorsteinHonsi commented on May 27, 2024

Thanks! I would like to try this and send a PR. In the mean time, can you tell me, or document in readme.md how the workflow is at the moment? The test files refer to svg2pdf.min.js, which is concatenated from source files and minified using Uglify and apparently there is a plugin to preserve the license headers. What commands do I run to build it?

from svg2pdf.js.

yGuy avatar yGuy commented on May 27, 2024

Actually building should be simple: there are scripts defined in package.json so you can do

npm run build 

and it should build the minified sources along with source maps so that you can conveniently run and debug the tests.

from svg2pdf.js.

TorsteinHonsi avatar TorsteinHonsi commented on May 27, 2024

Ah, thanks!

from svg2pdf.js.

TorsteinHonsi avatar TorsteinHonsi commented on May 27, 2024

Moving the path definition line up in front of the return statement didn't cut it. However, completely removing the return statement works for both Firefox and Safari. Is that a viable solution, or are you aware of any horrible side effects?

from svg2pdf.js.

yGuy avatar yGuy commented on May 27, 2024

You need of course set the "d" attribute anew after cleaning up the string. Just moving the line alone will not work. This however modifies the SVG and as such is not a nice solution, anyway.

I guess simply always using the Chrome code (removing the if) should work well. Otherwise we would have the same "horrible side-effects" in Chrome. I am not aware of any such side-effects, other than possibly a loss in performance.

from svg2pdf.js.

TorsteinHonsi avatar TorsteinHonsi commented on May 27, 2024

Probably the cleanest solution would be to mimic the arc segment in the segment list, and to the transform to a curve here instead. But your proposed fix works, hence the PR. Would appreciate a pull and a version bump.

from svg2pdf.js.

yGuy avatar yGuy commented on May 27, 2024

Sorry, but as I said before, I don't like the way we are now modifying the document. I would rather just get rid of the FF/Safari branch and always go with the Chrome branch.

from svg2pdf.js.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.