作者whitebase (finn)
看板PHP
标题Re: [请益] 截图,某个区域
时间Thu Oct 11 11:11:55 2012
※ 引述《whitebase (finn)》之铭言:
: 利用imagecopyresampled();达到截取一张完整图片的某个区域,
: 来源:
: http://blog.longwin.com.tw/2007/11/php_snap_image_block_2007/
: comment-page-1/#comment-49705
: 程式码如下:
: <?
: header("Content-type: image/jpeg");
: $filename = 'book_rabbit_rule.jpg';
: /* 读取图档 */
: $im = imagecreatefromjpeg($filename);
: /* 图片要截多少, 长/宽 */
: $new_img_width = 120;
: $new_img_height = 42;
: /* 先建立一个 新的空白图档 */
: $newim = imagecreate($new_img_width, $new_img_height);
: // 输出图要从哪边开始x, y , 原始图要从哪边开始 x, y , 要画多大 x, y(resize) ,
: 要抓多大 x, y
: imagecopyresampled($newim, $im, 0, 0, 7, 174, 120, 42, $new_img_width,
: $new_img_height);
: /* 放大 成 500 x 500 的图 */
: // imagecopyresampled($newim, $im, 0, 0, 100, 30, 500, 500, $new_img_width,
: $new_img_height);
: /* 将图印出来 */
: imagejpeg($newim);
: /* 资源回收 */
: imagedestroy($newim);
: imagedestroy($im);
: ?>
: 但跑出来网页显示:"无法显是错误的的图片",在想是不是权限问题,
: 但改成777後还是一样,是其中有什麽其他问题?
: 图片来源网址有改,不是来源问题,档案是jpg档。
: 或是有其比较好的方式可以替代吗,这些函式多跑几张图,
: 跑完不知道会不会很吃时间orz..
一一一一一一一一一一一一一一
自问自答..
找到解决方法,
原理就不再多解解释了..,直接讲解决方案,
只要把网页中的html tag通通删掉即可,
意思就是仅保留<? ?>中的部分,body、head等等的都删除,
但这样一来仅能显示图片无法排版等等的,
将原抓图片的程式码令存到单独的网页,比如说img.php
之後在你要展示的网页中,加入<img src="img.php">
比如说你要展示的网页叫show.php
那在你show.php的网页里加入<img src="img.php">即可
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 210.241.41.203
1F:→ CaptainH:本来就是这样啊... = = 10/11 11:59
2F:→ whitebase:那你应该在前一篇就回阿= = 10/11 14:20
3F:→ wayway2004:你前一篇贴的程式码又没有html tag...= = 10/11 14:56
4F:→ whitebase:但有提到输出是乱码,那jpeg档案的内容(binary) 10/11 15:28
5F:→ whitebase:我还是初哥,概念比较差不敏锐 10/11 15:30
6F:推 kerash:以你这样的做法如果能够显示,那原本的 img.php 就能显示 10/11 17:15
7F:→ kerash:只是差在一个是被img拉出来显示,一个是直接读档 10/11 17:15
8F:→ CaptainH:我猜他原来是把HTML部份和图片写在一起啦 10/11 18:33
9F:→ CaptainH:你讲是乱码谁知道是"怎麽乱"的啊 10/11 18:34
10F:→ CaptainH:程式码也不附, 谁知道你连最基本的概念都没有? 10/11 18:34
11F:→ MOONRAKER:就跟你说你"输出图片前可能有输出什麽东西"了  ̄σ ̄ 10/11 18:45
12F:→ MOONRAKER:初哥咧 怪我喔 10/11 18:45
13F:→ Reylod:我觉得你不要以为别人是马後炮比较好 10/11 20:14
14F:→ whitebase:..是要不要这麽激动,不是对每个人都是基本概念 10/12 11:41
15F:→ whitebase:MOONRAKER,好像没惹到你吧 10/12 11:42
16F:→ mervynW:必须的说, 你回文的太随性,太口语化,很容易误会. 10/12 11:54
17F:→ whitebase:恩可能太口语等等抱歉 10/12 16:37
18F:嘘 CaptainH:真是摆明欠嘘, 你给的程式码完全正确, 谁知道你直接放在 10/12 16:58
19F:→ CaptainH:HTML里面, 是我有通天眼还是破心术啊? 10/12 16:58
20F:→ CaptainH:不然下次你来问, 我就从怎麽架apache开始教你好了 10/12 16:59
21F:→ CaptainH:以防我又忘了 "基本概念不是每个人都有" 10/12 16:59
22F:→ whitebase:..,是有没有必要这麽激动,PHP本来就可以摆在HTML里面 10/12 17:08
23F:→ whitebase:这种误解本来就会有,什麽apache开始教,扯远了吧 10/12 17:10
24F:→ whitebase:这样酸是比较怎样= = 10/12 17:11
25F:→ mervynW:乖乖认错对你比较好, 再说下去直接进大家黑名单. 10/12 17:20
26F:→ gpmm:请大家都冷静一点… 10/12 20:24