客户端下载用户创建的映像

时间:2017-03-15 11:28:56

标签: php imagejpeg

我对php知之甚少,对任何愚蠢的错误都很抱歉。我在网上找到了这个代码,但并不是我想要的。

如下所示,我正在显示一个表单,用户在其中编写内容然后单击“CRIAR SELO”按钮,刷新页面并将该文本放到图像上并显示以供他使用鼠标右键下载

Image 1

我希望当用户点击“CRIAR SELO”按钮时,会显示一个窗口,以便他可以选择将文件保存在计算机中的位置,这样就无需右键单击并保存。

*我不需要继续显示图像,所以如果不能同时显示图像(显示和强制下载窗口),则没有问题。

这是表单(index.php):

<?php $rda = isset($_GET['rda'])?$_GET['rda']:"00000BR"; ?>
<form action="" method="get" />
    <input name="rda" type="text" value="" placeholder="00000BR">
    <img src="selo.php?rda=<?php echo $rda ?>">
    <input type="submit" name="enviar" class="confirma" value="CRIAR SELO »">
</form>

这是PHP(selo.php):

<?php
$imagem = imagecreatefromjpeg( "00000BR_01.jpg" );
$cor = imagecolorallocate( $imagem, 000, 000, 000 );
$font = "verdanab.ttf";
$rda = urldecode( $_GET['rda'] );
imagettftext($imagem, 20, 0, 37, 50, $cor, $font, $rda );
header('Content-type: image/jpeg');
imagejpeg( $imagem, '', 100 );
imagedestroy($imagem);
?>

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

我找到了办法。

我添加了第二个按钮,现在用户点击&#34; CRIAR SELO&#34;用他的文本生成图像,然后单击按钮&#34; DOWNLOAD&#34;下载带有文本名称的生成图像。

例如:用户类型&#34; 77777BR&#34;,点击&#34; CRIAR SELO&#34;然后&#34; DOWNLOAD&#34;下载名为&#34; 7777BR.jpg&#34;。

的图像
<?php $rda = isset($_GET['rda'])?$_GET['rda']:"00000BR"; ?>
<form action="" method="get">
    <input name="rda" type="text" placeholder="00000BR">
    <br />
    <img src="selo.php?rda=<?php echo $rda ?>">
    <br />
    <input type="submit" name="enviar" class="confirma" value="CRIAR SELO »">
    <a href="selo.php?rda=<?php echo $rda ?>" download="<?php echo $rda.'.jpg' ?>">DOWNLOAD</a>
</form>