CGI/Perl 创建自定义签名文件的脚本
CGI/Perl script creating a customized signature file
我有点用这个。
我有一个包含以下代码的 cgi 文件:
#!/usr/bin/perl
use CGI;
$cgi = new CGI;
open (IMAGE, "ts.jpg");
$size = -s "ts.jpg";
read IMAGE, $data, $size;
close (IMAGE);
print $cgi->header(-type=>'image/jpeg'), $data;
exit;
这可以正确显示我的图像文件。
但是,我希望用户能够通过网络表单在图像上添加 2 行文本,以便每次生成一个新的 jpeg。这是 URL:http://elearning.cpma.ca/signature.html
当我点击 "Add Text" 按钮时,我的 cgi 文件中缺少什么可以让我重新发布以筛选新的 jpeg 文件,上面显示 2 行文本?
如有任何帮助,我们将不胜感激。
您需要一个图像处理库。您会看到很多关于 GD or ImageMagick, but I think I'd use Imager 的推荐,因为它更新且更易于使用。
关于改进代码的一些一般性建议。
- 始终在代码中使用
strict
和 warnings
。
- 使用
my
(my $cgi = ...
) 声明变量。
new CGI
语法可能存在问题。请改用 CGI->new
。
- 使用 three-arg 打开和词法文件句柄 (
open my $image_fh, '<', 'ts.jpg')
)。
- 始终检查
open
(open my $image_fh, '<', 'ts.jpg') or die $!
) 中的 return 代码。
我能够通过 alvarotrigo 在 GitHUb TextPainter
上提供的自述文件创建我想要的内容
我需要做一些小的代码更改才能使其正常工作 - 但是,它很容易实现。
不需要 CGI。请参阅 SignatureFile 了解我的图像的最终结果。
感谢所有回复我的问题的人。
我有点用这个。 我有一个包含以下代码的 cgi 文件:
#!/usr/bin/perl
use CGI;
$cgi = new CGI;
open (IMAGE, "ts.jpg");
$size = -s "ts.jpg";
read IMAGE, $data, $size;
close (IMAGE);
print $cgi->header(-type=>'image/jpeg'), $data;
exit;
这可以正确显示我的图像文件。 但是,我希望用户能够通过网络表单在图像上添加 2 行文本,以便每次生成一个新的 jpeg。这是 URL:http://elearning.cpma.ca/signature.html
当我点击 "Add Text" 按钮时,我的 cgi 文件中缺少什么可以让我重新发布以筛选新的 jpeg 文件,上面显示 2 行文本?
如有任何帮助,我们将不胜感激。
您需要一个图像处理库。您会看到很多关于 GD or ImageMagick, but I think I'd use Imager 的推荐,因为它更新且更易于使用。
关于改进代码的一些一般性建议。
- 始终在代码中使用
strict
和warnings
。 - 使用
my
(my $cgi = ...
) 声明变量。 new CGI
语法可能存在问题。请改用CGI->new
。- 使用 three-arg 打开和词法文件句柄 (
open my $image_fh, '<', 'ts.jpg')
)。 - 始终检查
open
(open my $image_fh, '<', 'ts.jpg') or die $!
) 中的 return 代码。
我能够通过 alvarotrigo 在 GitHUb TextPainter
上提供的自述文件创建我想要的内容我需要做一些小的代码更改才能使其正常工作 - 但是,它很容易实现。 不需要 CGI。请参阅 SignatureFile 了解我的图像的最终结果。 感谢所有回复我的问题的人。