`
wtb
  • 浏览: 107174 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

ruby中rmgaick给图片加版权信息和水印(中文水印)

阅读更多

根据imagemagick和一些网站的资料,总结了常用的加水印(特别是中文)的代码。

require 'rubygems'
require 'RMagick'

#在图片中嵌入中文文字

ruby 代码
  1. def   t1   
  2.   
  3. img=Magick::Image.read('path\read_image1.jpg').first    #图片路径,用相对路径即可,相对于public来说的         
  4.      my_text="\251 这是黑马的标致"        
  5.     copyright=Magick::Draw.new  
  6.     copyright.annotate(img,0,0,3,18,my_text) do  #可设字的位置   
  7.       self.gravity = Magick::CenterGravity   
  8.       self.font='public\images\simsun.ttc'  #这地方必须使用中文字库,才能打中文到图片上。在windows中c:\windows\fonts\simsun.ttc拷到项目的public\images目录下就可以随着项目使用了。另外注意:笔者是使用utf-8字符集来编辑源文件的,如果你不是,请在程序中对汉字转换编码为utf-8
  9.       self.pointsize=96  #字体大小   
  10.       self.font_weight=Magick::BoldWeight   
  11.       self.fill='red'                    #字的颜色   
  12.       self.gravity=Magick::SouthEastGravity   
  13.       self.stroke = "none"  
  14.     end  
  15.      img=img.raise  #浮雕效果          
  16.     img.write('path\img')   
  17.   
  18. end  

#加图片和中文水印文字

ruby 代码
  1.  def test_photo   
  2.     
  3.    img=Magick::Image.read('public\photo\big_image\1\1119218437.jpg').first   
  4.    img2=Magick::Image.read('public\photo\big_image\2\DSCN4991-thumb.jpg').first #版权图片   
  5.    my_text="\251 黑马的标致"  
  6.    img.composite!(img2, -0,-0, Magick::CopyCompositeOp) #图片叠加 ,CopyCompositeOp是composite的运算之一,还有很多运算方法,实现各种效果,可以在官网找到 http://www.imagemagick.org/RMagick/doc/constants.html#CompositeOperator
  7.   copyright=Magick::Draw.new  
  8.   copyright.annotate(img,0,0,3,18,my_text) do  #可设字的位置   
  9.     self.gravity = Magick::CenterGravity   
  10.     self.font='public\images\simsun.ttc'     
  11.     self.pointsize=96  #字体大小   
  12.     self.font_weight=Magick::BoldWeight   
  13.     self.fill='red'                    #字的颜色   
  14.     self.gravity=Magick::SouthEastGravity   
  15.     self.stroke = "none"  
  16.   end  
  17.    img=img.raise  #浮雕效果   
  18.    mark.rotate!(-90)  #可旋转
  19.   img = img.watermark(mark, 0.15, 0, Magick::EastGravity)  #0.15是透明度 
  20.   img.write('public\photo\big_image\1\1119218437-image1_bak.jpg')   
  21. end  
分享到:
评论
5 楼 simon_lin 2007-08-24  
同感,搞得自己现在发帖,回复都好郁闷!
4 楼 mathsfan 2007-08-01  
呵呵,被评为灌水贴正常不过了```
偶也被评了好多了哈```
所以我基本上不在javaeye混了,只是看看别人的帖子而已。
3 楼 carlosbdw 2007-08-01  
wtb 写道
你是在哪个系统下安装?windows下只要下载封装好的软件包就行了,
http://rubyforge.org/projects/rmagick
下载安装,重启就行了。
http://www.iteye.com/43228
这是linux下安装的方法。具体过程我没有,因为安装也不是很复杂。熟悉linux的应该能搞定,如果你安装有问题可以把问题贴出来。


贴过一次,被评为灌水贴,无人回答,哈哈
2 楼 wtb 2007-08-01  
你是在哪个系统下安装?windows下只要下载封装好的软件包就行了,
http://rubyforge.org/projects/rmagick
下载安装,重启就行了。
http://www.iteye.com/43228
这是linux下安装的方法。具体过程我没有,因为安装也不是很复杂。熟悉linux的应该能搞定,如果你安装有问题可以把问题贴出来。
1 楼 carlosbdw 2007-07-31  
RMagick到现在我还没装成功呢,楼主有没有配置文档?

相关推荐

    ruby中文资源大全

    松本行弘(Matz)是日本一家开源软件公司的程序员,有15年的编程经验。在工作中,他希望有一种比 Perl 强大,比 Python 更面向对象的语言。...本教程内含多部中文ruby介绍和语法参考能作为初中级学习使用。

    ruby 中文文档 必备资料

    这份"ruby 中文文档 必备资料"压缩包包含了一份非常重要的资源——"ruby中文文档.chm",这是一份详尽的Ruby语言指南,对于学习和精通Ruby编程语言来说是不可或缺的。 首先,Ruby语言的基础知识包括变量、数据类型和...

    ruby 中的3des加密

    在ruby中用3des 算法进行加密操作

    ruby中文文档中心资料

    这份"ruby中文文档中心资料"包含了丰富的资源,帮助中文用户深入理解并掌握Ruby编程。 首先,"nb60_trans_old_zh_CN"可能指的是Ruby的一个版本,如NetBeans IDE 6.0的中文翻译版,NetBeans是一个流行的开源集成开发...

    ruby中英文api

    "ruby中文文档.chm"可能是Ruby的中文版官方文档,这对于中文环境下的学习者来说非常方便。它可能包括了Ruby的基础概念,如变量、常量、数据类型、控制流、类和对象的创建、继承、模块的使用、异常处理、文件和I/O...

    ruby中文文档.chm

    《Ruby编程语言中文文档》是针对初学者和有经验的开发者提供的一份全面而详细的资源,旨在帮助读者理解和掌握Ruby编程语言。这份文档以CHM(Microsoft编写的压缩HTML帮助文件)格式呈现,方便离线查阅。Ruby是一种...

    ruby中文手册 chm

    总的来说,这个Ruby中文手册CHM是一个全面的学习资源,适合初学者入门,也适用于有经验的开发者查阅特定信息。通过深入学习和实践,开发者可以充分利用Ruby的强大功能,创造出各种复杂的应用程序和游戏。

    Ruby中文帮助文档

    Ruby中文文档.CHM 方便ruby or rails学习.

    ruby中文文档

    《ruby中文文档》.chm文件是一个包含Ruby语言中文参考文档的压缩包,通常包含关于Ruby语法、类库、方法、错误和异常等方面的详细信息。对于初学者和有经验的开发者来说,这样的文档都是宝贵的资源,可以帮助理解语言...

    ruby图片处理工具

    在这个特定的场景中,我们关注的是一个针对 Windows 操作系统的 Ruby Gem 安装包,它包含了 Rmagick 和 ImageMagick 这两个关键组件。 **Rmagick** 是一个 Ruby 绑定库,它提供了与流行的图像处理库 ImageMagick ...

    Ruby中文文档.zip

    Ruby,一种简单快捷的面向对象(面向对象程序设计)脚本语言,在20世纪90年代由日本人松本行弘(Yukihiro Matsumoto)开发,遵守GPL协议和Ruby License。它的灵感与特性来自于 Perl、Smalltalk、Eiffel、Ada以及 Lisp ...

    Ruby中文教程及相关源代码

    这个"Ruby中文教程及相关源代码"包包含了学习Ruby语言的重要资源,旨在帮助初学者和有经验的开发者深入理解Ruby的核心概念和实践技巧。 教程部分可能涵盖了以下内容: 1. **基础语法**:Ruby的基本数据类型,如...

    ruby中文 文档

    Ruby的中文文档,如“ruby中文文档.chm”,是学习和理解这一语言的重要资源。这份文档通常会包含以下关键知识点: 1. **基础语法**:Ruby的基础语法包括变量(本地变量、实例变量、类变量和全局变量)、常量、...

    ruby语言帮助文档(简体中文)

    Ruby中的类和模块是构建对象的基础,类用于定义对象的结构和行为,模块则用于组织代码和实现多继承。 3. **方法**:Ruby的方法可以看作是对象的行为,可以定义在类、模块或者对象上。方法调用可以用点操作符(`.`)...

    ruby语法基础教程及Ruby教程中文版和安装文件

    Ruby是一种面向对象的、动态类型的编程语言,以其简洁、优雅的语法和强大的元编程能力而闻名。本教程将深入探讨Ruby的基础语法,并介绍如何下载、安装Ruby,以及使用Ruby教程中文版进行学习。 首先,让我们从Ruby的...

    Ruby入门教程中文PDF 附实例

    Ruby是一种面向对象的、动态类型的编程语言,以其简洁、优雅的语法和强大的元编程能力而闻名。本教程针对初学者,旨在帮助读者快速掌握Ruby的基础知识,并通过实例深入理解其用法。 首先,Ruby的基本语法是它的一大...

    ruby 移动图片小工具

    标题中的“ruby移动图片小工具”指的是一个使用Ruby编程语言编写的实用程序,它的主要功能是整理和管理图片。这个小工具将帮助用户按照图片的拍摄日期自动将图片分类并移动到相应的目录下,这对于组织大量照片库或者...

    ruby-使用ruby实现的算法之加密解密算法.zip

    在Ruby编程语言中,加密和解密是网络安全和数据保护的重要方面。本资源包"ruby-使用ruby实现的算法之加密解密算法.zip"显然包含了关于如何在Ruby中实现加密和解密算法的实例和代码。下面将详细介绍Ruby中常用的加密...

    ruby教程(中文)

    ruby语言的简体中文教程

    Ruby中文文档

    Ruby是一种功能强大的面向对象的脚本语言,她可以使您方便快捷地进行面向对象编程.Ruby使文本处理和系统管理变得简单,与Perl非常相似.一句话:简单明了,扩展性强,移植性好. Ruby的几大亮点: 语法简单 垃圾回收 ...

Global site tag (gtag.js) - Google Analytics