我想使用CC-BY-NC许可证发布图片,但是找不到如何将这些信息与JPEG元数据一起存储的教程。
有最佳做法吗?Flickr,Google +或Facebook等服务会读取此信息吗?
我想使用CC-BY-NC许可证发布图片,但是找不到如何将这些信息与JPEG元数据一起存储的教程。
有最佳做法吗?Flickr,Google +或Facebook等服务会读取此信息吗?
Answers:
如@coneslayer所述,Creative Commons确实确实提供了有关XMP信息的指南。
最主要的是一套xmpRights:UsageTerms到本作品采用知识共享署名-相同方式共享许可协议授权向公众http://creativecommons.org/licenses/bysa/2.0/验证在http://example.com/pdfmetadata .html
该“验证”链接是可选的,应该是一个详细解释许可的网站。如果您有这样的网页,则还应该将xmpRights:WebStatement设置为该URL。
他们还建议将xmpRights:UsageTerms复制到dc:rights,因为有些人可能会改用该标签。
您还可以并且应该使用创用CC自己的架构来设置XMP属性,该架构定义cc:license,cc:morePermissions(用于其他可能的允许用途),cc:attributionURL和cc:attributionName。
使用exiftool从控制台轻松添加exif元数据。它易于安装,已经存在于流行的Linux发行版中(例如Ubuntu)
$ exiftool -by-line="[your name]" -CopyrightNotice="© [your name] ; \
Licence: Creative Commons cc-by-nc 3.0 United States \
(http://creativecommons.org/licenses/by-nc/3.0/us/)" \
-artist="[your name]" -Copyright="© [your name] ; \
Licence: Creative Commons cc-by-nc 3.0 United States \
(http://creativecommons.org/licenses/by-nc/3.0/us/)" \
TARGET-IMAGE.JPG
我使用了这个小脚本,您可以轻松适应它。它需要Python2.6(不适用于Python3,因为FWIK的pyexiv2库没有Python3版本)。几乎所有linux发行版都已预装了该软件。您可能需要python-pyexiv2
在其中一些添加软件包 。不知道如何在Windows上安装。
#! /usr/bin/python
# -*- coding: utf-8 -*-
#
import sys
import pyexiv2
#
fimage = sys.argv[1]
metadata = pyexiv2.ImageMetadata(fimage)
metadata.read()
my_name = "Romano Giannetti"
my_email = "romano.giannetti@gmail.com"
copyr = "(c) " + my_name + " <" + my_email + ">" + ", All Rights Reserved"
#
# set exif:
#
exif_a="Exif.Image.Artist"
exif_r="Exif.Image.Copyright"
metadata[exif_a]=pyexiv2.ExifTag(exif_a, my_name)
metadata[exif_r]=pyexiv2.ExifTag(exif_r, copyr)
#
# set XMP
#
key_auth="Xmp.dc.creator"
key_rights="Xmp.dc.rights"
metadata[key_auth]=pyexiv2.XmpTag(key_auth, (my_name, my_email))
metadata[key_rights]=pyexiv2.XmpTag(key_rights, copyr)
#
metadata.write()
我认为这或多或少是自我说明:如果您需要更改/添加Xmp标签,您只需
keytag_name="Xmp.tag.name"
metadata[keytag_name]=pyexiv2.XmpTag(keytag_name, "this is the tag content")