Skip to content
Extensible Metadata Platform (XMP) parser
Ruby Shell
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
lib
spec
.gitignore
.rspec Enable color in RSpec output
.rvmrc
.travis.yml
Gemfile
README.rdoc
Rakefile
xmp.gemspec Add rake as a development dependency

README.rdoc

xmp - Extensible Metadata Platform (XMP) parser

XMP provides object oriented interface to XMP data (en.wikipedia.org/wiki/Extensible_Metadata_Platform). XMP data can be found in PDF, JPEG, GIF, PNG, and many other formats.

Supported formats

Currently only JPEG is supported through exifr gem.

JPEG example

# gem install xmp exifr
require 'xmp'
require 'exifr'
require 'open-uri'

img = EXIFR::JPEG.new('spec/fixtures/multiple-app1.jpg')
xmp = XMP.parse(img)
xmp.dc.subject #=> ["something interesting"]

# explore XMP data
xmp.namespaces.each do |namespace_name|
  namespace = xmp.send(namespace_name)
  namespace.attributes.each do |attr|
    puts "#{namespace_name}.#{attr}: " + namespace.send(attr).inspect
  end
end

Installation

gem install xmp
# for JPEG support
gem install exifr -v ">=1.0.4"

Requirements

  • Ruby 1.8.7, 1.9.2

  • Nokogiri 1.4

  • EXIFR >= 1.0.4

Development

Fork it at github.com/amberbit/xmp

# install development dependencies
bundle install
# run specs
rake spec

License

Ruby's license.

Copyright © 2011 Wojciech Piekutowski, AmberBit (amberbit.com)

Something went wrong with that request. Please try again.