1
0
mirror of https://github.com/php/doc-tr.git synced 2026-03-24 07:12:18 +01:00
Files
archived-doc-tr/reference/image/examples.xml
2021-05-13 00:24:43 +03:00

158 lines
5.3 KiB
XML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 10c69571e7dd8a7cc0fbc9f20a55d24b1b1032be Maintainer: nilgun Status: ready -->
<chapter xml:id="image.examples" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.examples;
<section xml:id="image.examples-png">
<title>PHP ile PNG oluşturmak</title>
<para>
<example>
<title>- PHP ile PNG oluşturma örneği</title>
<programlisting role="php">
<![CDATA[
<?php
header("Content-type: image/png");
$string = $_GET['text'];
$foto = imagecreatefrompng("images/button1.png");
$turuncu = imagecolorallocate($foto, 220, 210, 60);
$px = (imagesx($foto) - 7.5 * strlen($string)) / 2;
imagestring($foto, 3, $px, 9, $string, $turuncu);
imagepng($foto);
imagedestroy($foto);
?>
]]>
</programlisting>
</example>
Bu örnek bir sayfadan şöyle bir etiketle çağırlabilir: <literal>&lt;img
src=&quot;button.php?text=gönder&quot;&gt;</literal>. Yukarıdaki
<filename>button.php</filename> betiği bu
&quot;<literal>gönder</literal>&quot; dizgesini alır ve
&quot;<filename>images/button1.png</filename>&quot;
resminin üzerine yerleştirip elde edilen resmi çıktılar. Bu yöntem, her
düğme için ayrı bir düğme resmi kullanmaktan daha verimlidir. Bu yöntemle
düğmeler devingen olarak üretilir.
</para>
</section>
<section xml:id="image.examples-watermark">
<title>Alfa kanallarını kullanarak resme damga basmak</title>
<para>
<example>
<title>- Alfa kanallarını kullanarak resme damga basma örneği</title>
<programlisting role="php">
<![CDATA[
<?php
// Filigran uygulanacak fotoğrafı ve damgayı yükleyelim.
$damga = imagecreatefrompng('damga.png');
$foto = imagecreatefromjpeg('foto.jpeg');
// Damganın kenar boşluklarını ayarlayıp resmin
// yükseklik ve genişliğini alalım
$sağ_boşluk = 10;
$alt_boşluk = 10;
$sx = imagesx($damga);
$sy = imagesy($damga);
// Damga resmini koordinatları belirterek kenar boşlukları ile
// birlikte fotoğrafın üzerine kopyalayalım.
imagecopy($foto, $damga, imagesx($foto) - $sx - $sağ_boşluk,
imagesy($foto) - $sy - $alt_boşluk,
0, 0, imagesx($damga), imagesy($damga));
// Sonucu çıktılayıp belleği serbest bırakalım.
header('Content-type: image/png');
imagepng($foto);
imagedestroy($foto);
?>
]]>
</programlisting>
<mediaobject>
<alt>Alfa kanallarını kullanarak resmin damgalanması</alt>
<imageobject>
<imagedata fileref="en/reference/image/figures/watermarks.png" />
</imageobject>
</mediaobject>
</example>
Telif haklı fotoğraflara ve görüntülere bir işaret veya damga basmanın en
uygun yolu budur. Damga resminde metin olarak bir alfa kanalının varlığı
halinde metne kenar yumuşatma uygulanacağına dikkat edin. Bu, kopyalama
sırasında korunur.
</para>
</section>
<section xml:id="image.examples.merged-watermark">
<title>Yarı geçirgen filigran oluşturmak için
<function>imagecopymerge</function> kullanımı</title>
<para>
<example>
<title><function>imagecopymerge</function> kullanarak yarı geçirgen
filigran oluşturma örneği</title>
<programlisting role="php">
<![CDATA[
<?php
// Filigran uygulanacak fotoğrafı ve damgayı yükleyelim.
$foto = imagecreatefromjpeg('foto.jpeg');
// Önce damga resmini GD'yi kullanarak oluşturalım.
$damga = imagecreatetruecolor(100, 70);
imagefilledrectangle($damga, 0, 0, 99, 99, 0x0000FF);
imagefilledrectangle($damga, 9, 9, 90, 60, 0xFFFFFF);
imagestring($damga, 5, 20, 20, 'libGD', 0x0000FF);
imagestring($damga, 3, 20, 40, '(c) 2007-9', 0x0000FF);
// Damganın kenar boşluklarını ayarlayıp resmin
// yükseklik ve genişliğini alalım
$yan_boşluk = 10;
$alt_boşluk = 10;
$sx = imagesx($damga);
$sy = imagesy($damga);
// %50 matlıktaki damgayı fotoğrafa basalım.
imagecopymerge($foto, $damga, imagesx($foto) - $sx - $yan_boşluk,
imagesy($foto) - $sy - $alt_boşluk, 0, 0,
imagesx($damga), imagesy($damga), 50);
// Sonucu kaydedip belleği serbest bırakalım.
imagepng($foto, 'damgalı_foto.png');
imagedestroy($foto);
?>
]]>
</programlisting>
<mediaobject>
<alt>Yarı geçirgen filigran oluşturmak için imagecopymerge() kullanımı</alt>
<imageobject>
<imagedata fileref="en/reference/image/figures/watermark-merged.png" />
</imageobject>
</mediaobject>
</example>
Bu örnekte özgün görüntü ile damgayı birleştirmek için
<function>imagecopymerge</function> işlevi kullanılmıştır. Bu işlevi
kullanarak damgamızın ışık geçirgenliğini ayarlayabiliriz. Bu örnekte ışık
geçirgenliği %50 olarak ayarlanmıştır. Uygulamada, kaldırılması zor olduğundan
yarı geçirgen filigran olarak telif haklarının korunmasında kullanılır.
</para>
</section>
</chapter>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->