为CC-BY-NC许可的图片设置JPEG元数据的最佳实践是什么?


14

我想使用CC-BY-NC许可证发布图片,但是找不到如何将这些信息与JPEG元数据一起存储的教程。

有最佳做法吗?Flickr,Google +或Facebook等服务会读取此信息吗?


3
创用CC具有有关使用XMP元数据存储许可信息的指南。(这不是一个完整的答案,因为它不涉及在线服务使用信息的方式也将是不错的讨论如何进入Lightroom中或其他工具的元数据。)wiki.creativecommons.org/XMP
coneslayer

1
我对此有一个概念验证(但有效)的Python脚本...会是OT ;-)吗?
Rmano 2014年

@Rmano我喜欢脚本,所以去吧!:-)
Ethan Leroy 2014年

Answers:


3

如@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:licensecc:morePermissions(用于其他可能的允许用途),cc:attributionURLcc:attributionName


1

如果您使用的是Photoshop,则可以转到“文件”>“文件信息”-这将使您可以在JPEG元数据中包含版权数据。

我不知道Flickr,Google或Facebook之类的服务如何处理元数据,因此我无法在此处发表评论。


1

使用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

0

我使用了这个小脚本,您可以轻松适应它。它需要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")
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.