Giter Site home page Giter Site logo

exifremove's Introduction

Metrics

exifremove's People

Contributors

coteh avatar imgbot[bot] avatar snyk-bot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

exifremove's Issues

Support PNG

Version 1.5.0 of Extensions to PNG 1.2 Specification (seen here) has added an EXIF chunk to PNG data format.

Evaluate whether this should be supported in exifremove, and how best to introduce the support.

Handle IPTC metadata as well?

Although this is called exifremove not iptcremove, we can provide an option to scrub IPTC as well.

https://stackoverflow.com/questions/31120222/iptc-metadata-automatically-added-to-uploaded-images-on-facebook
https://www.reddit.com/r/privacy/comments/ccndcq/facebook_is_embedding_tracking_data_inside_the/

Facebook appends IPTC data to images you download from Facebook to track your activity on the web. It would be nice if there was a way to scrub these out as well. (Although, you can currently use something like exiv2 today to do it)

The guys over at exiv2 have an excellent document on where the APP13 segments that define IPTC are defined.

https://dev.exiv2.org/projects/exiv2/wiki/The_Metadata_in_JPEG_files

Remove verbose mode console.log calls from module

Instead have verbose mode emit events, and a printer from the caller side (whether that would be cli or another dependent) will subscribe to those events and print out what's being sent from the module.

Also remove all irrelevant messages that were useful during development but don't make sense now.

https://codecov.io/gh/Coteh/exifremove/src/master/src/exifremove.js

With this part isolated out from the main module and appropriate tests added to ensure data is being passed correctly, the module should be able to hit 100% coverage.

Optimize traversal of image

Currently image traversal is linear. Could optimize it a bit by taking the size value beside each application marker and skipping ahead by that amount.

Also, perhaps the iteration logic can be separated from the remove function logic. That way, these two validation methods in the test library can also make use of the iteration logic to more quickly verify absence of APP1 marker.

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.