Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[插件]显示数码图片的EXIF信息 for 2.5 sp1

[复制链接]
老么 发表于 2005-4-18 00:14:55 | 显示全部楼层 |阅读模式
原贴参考free-old论坛 :[插件]显示数码图片的EXIF信息,我将它移植到 for 2.5版本,如有问题希望原作者指正。
(先已更新至for 2.5 sp1)

附件图片为2.5版本演示效果

注:如果打开了附件功能设置里的隐藏图片真实地址功能有可能会无法显示exif信息,可视情况而定自行关闭。


+++++++++++++++++++++++++
HACK名稱: 显示数码图片的EXIF信息
適用版本: discuz!2.X
原作者: JackMing  (老么 修改移植至 for 2.5 sp1版本)
修改文件: viewthread.php
修改模板: viewthread.htm
+++++++++++++++++++++++++

安装步骤

1、修改文件viewthread.php

查找:

  1. $attach['attachimg'] = 1;
复制代码


在后面填入:

  1. /*--------------------------------
  2.                 显示jpeg和tiff图片的EXIF信息*/

  3.                 if (($extension == 'jpg' || $extension == 'jpeg') && function_exists

  4. ('read_exif_data')){
  5.                     $exif = @read_exif_data($discuz_root."./attachments/".$attach

  6. [attachment],0,true);
  7.                     if ($exif['EXIF']['ExifVersion']){
  8.                     $attach['exif']="EXIF版本:".$exif['EXIF']['ExifVersion']."相机品牌:".$exif

  9. ['IFD0']['Make']." 相机型号:".$exif['IFD0']['Model']." 光圈:".$exif['COMPUTED']['ApertureFNumber'].
  10.                     " 快门:".$exif['EXIF']['ExposureTime']." 感光度ISO:".$exif['EXIF']

  11. [ISOSpeedRatings];
  12.                     }
  13.                 }
  14.                 /*-------------------------------*/
复制代码


2、修改模版viewthread.htm

查找:

  1. <img src="$attachurl/$attach[attachment]" border="0" onload="if(this.width>screen.width*0.5) {this.resized=true; this.width=screen.width*0.6; this.alt='{lang click_open_newwindow}';}" onmouseover="if(this.resized) this.style.cursor='hand';" onclick="if(this.resized) window.open(this.src);">
复制代码


后面填入

  1. <br>$attach['exif']
复制代码


注意:
本hack主要利用了read_exif_data函数,该函数是不用gd库的,但是在默认情况下这个函数是无法使用的,打开该函数的方法如下:
根据diib在discuz.dismall.com发表的内容

UNIX/LINUX:编译PHP的时候,应该加上 --enable-exif选项,
Windows:
1、在PHP.ini里面,找到 ;extension=php_exif.dll 去掉分号。
2、找到[exif]段,把下面语句的分号去掉。
;exif.encode_unicode = ISO-8859-15
;exif.decode_unicode_motorola = UCS-2BE
;exif.decode_unicode_intel    = UCS-2LE
;exif.encode_jis =
;exif.decode_jis_motorola = JIS
;exif.decode_jis_intel    = JIS

对于大部分jpg图片都是没有可用的EXIF信息的,除非是最近的数码作品。

[ Last edited by 老么 on 2005-4-18 at 21:32 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
tomsina 发表于 2005-4-18 05:38:19 | 显示全部楼层
谢谢了,很好用
回复

使用道具 举报

sdywd 发表于 2005-10-26 03:15:03 | 显示全部楼层
Windows:
1、在PHP.ini里面,找到 ;extension=php_exif.dll 去掉分号。
2、找到[exif]段,把下面语句的分号去掉。
;exif.encode_unicode = ISO-8859-15
;exif.decode_unicode_motorola = UCS-2BE
;exif.decode_unicode_intel    = UCS-2LE
;exif.encode_jis =
;exif.decode_jis_motorola = JIS
;exif.decode_jis_intel    = JIS

这个的PHP.ini在哪里?
回复

使用道具 举报

sdywd 发表于 2005-10-26 03:16:11 | 显示全部楼层
请问2.5f可以使用吗?
回复

使用道具 举报

 楼主| 老么 发表于 2005-10-27 01:33:41 | 显示全部楼层
原帖由 sdywd 于 2005-10-26 03:15 发表
Windows:
1、在PHP.ini里面,找到 ;extension=php_exif.dll 去掉分号。
2、找到[exif]段,把下面语句的分号去掉。
;exif.encode_unicode = ISO-8859-15
;exif.decode_unicode_motorola = UCS-2BE
;exif.de ...

如果你是自己本机安装的话,PHP.ini文件在C:\windows\(XP/2003/9x/Me)或C:\Winnt\(2000/nt)下,如果是买的空间就要找空间商帮你解决了。

ps:这个版本就是for 2.5 sp1的。
回复

使用道具 举报

爱好者 发表于 2005-10-27 02:58:17 | 显示全部楼层
支持一个
回复

使用道具 举报

freddy 发表于 2005-10-27 13:31:23 | 显示全部楼层
准备批量操作
回复

使用道具 举报

zhouqi 发表于 2005-10-27 19:12:16 | 显示全部楼层
很不错,顶一个了!
回复

使用道具 举报

sdywd 发表于 2005-10-28 01:00:39 | 显示全部楼层
我的不是sp1的,我怎么弄都不行     
回复

使用道具 举报

sdywd 发表于 2005-10-28 01:05:52 | 显示全部楼层
会不会和鼠标控制图片大小有冲突呢?

真的很想要这个显示的   


  1. <img src="$attachurl/$attach[attachment]" border="0" onload="if(this.width>screen.width*0.5) {this.resized=true; this.width=screen.width*0.6; this.alt='{lang click_open_newwindow}';}" onmouseover="if(this.resized) this.style.cursor='hand';" onclick="if(this.resized) window.open(this.src);" onmousewheel="return imgzoom(this);">
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-24 05:16 , Processed in 0.041709 second(s), 4 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表