{"id":800,"date":"2012-10-05T16:11:54","date_gmt":"2012-10-05T16:11:54","guid":{"rendered":"http:\/\/faq.pctrickers.com\/?p=800"},"modified":"2023-03-27T15:20:20","modified_gmt":"2023-03-27T15:20:20","slug":"php-creating-watermark-text","status":"publish","type":"post","link":"https:\/\/webexplorar.com\/php-creating-watermark-text\/","title":{"rendered":"PHP Creating watermark text"},"content":{"rendered":"<p>How to <strong>create text watermark using php<\/strong>?This is describes <strong>how to create simple text watermark using php<\/strong>.Tested in many browsers.Uploaded file type is same to final image type.Only you have to call to the function and get output.View demo and download source code.<!--more--><br \/>\nIn the another post is describes <a href=\"\/php-creating-watermark-image\/\" target=\"_blank\" rel=\"noopener noreferrer\">how to create simple image watermark using php.<\/a>But this watermark text is very simply an smiler to it.First you get a font that you want to apply to this(Ex: TIMES.TTF for Time New Roman font).<br \/>\nEverything I\u2019ll describes here simply by commenting.<br \/>\nThis is the php function.<\/p>\n<pre class=\"lang:php decode:true \">\n<?php\n$fontPath       = \"MTCORSVA.TTF\";\n$fontSize       = 20;  \/\/ in pixels\n$watermarkText  = \"Watermark text here\";\nfunction watermarkProcess($oldImageName, $newImageName){\n    global $fontPath, $fontSize, $watermarkText;\n    list($oldImageWidth,$oldImageHeight) = getimagesize($oldImageName);\n    $width  = 300;\n    $height = 300;\n    \/\/ CREATING TEMPORARY IMAGE\n    $imageTmp = imagecreatetruecolor($width, $height) or die('Cannot Initialize new GD image stream');\n    \/\/ GET TEMPORARY IMAGE INFO(WIDTH &#038; HEIGHT)\n    $info = getimagesize($oldImageName);\n    \/\/ Get image path from jpg\/jpeg types\n    if($info[2] == IMAGETYPE_JPEG){\n        $imageTmpPath = imagecreatefromjpeg($oldImageName) or die('JPEG\/JPEG Image type is open failed');\n    }\n    \/\/ Get image path from gif type\n    if($info[2] == IMAGETYPE_PNG){\n        $imageTmpPath = imagecreatefrompng($oldImageName) or die('PNG Image type is open failed');\n    }\n    \/\/ Get image path from png type\n    if($info[2] == IMAGETYPE_GIF){\n        $imageTmpPath = imagecreatefromgif($oldImageName) or die('GIF Image type is open failed');\n    }\n    \/\/ Copy and resize part of an image with resampling\n    imagecopyresampled($imageTmp, $imageTmpPath, 0, 0, 0, 0, $width, $height, $oldImageWidth, $oldImageHeight);\n    \/\/ Decides text color by RGB value\n    $color = imagecolorallocate($imageTmp, 59, 186, 10);\n    \/\/ Create temp image text by inserting text to positions\n    imagettftext($imageTmp, $fontSize, 0, 70, 270, $color, $fontPath, $watermarkText);\n    \/\/ Create image for jpg\/jpeg types\n    if($info[2] == IMAGETYPE_JPEG){\n        imagejpeg($imageTmp, $newImageName, 100);\n    }\n    \/\/ Create image for gif type\n    if($info[2] == IMAGETYPE_PNG){\n        imagepng($imageTmp, $newImageName, 0);\n    }\n    \/\/ Create image for png type\n    if($info[2] == IMAGETYPE_GIF){\n        imagegif($imageTmp, $newImageName, 100);\n    }\n    \/\/ delete temporary image\n    imagedestroy($imageTmp);\n    \/\/ delete uploaded original image\n    unlink($oldImageName);\n    return true;\n}\n?>\n<\/pre>\n<div class='stb-container stb-style-info stb-no-caption'><div class='stb-caption'><div class='stb-logo'><img class='stb-logo__image' src='data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN\/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz\/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH\/w\/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA\/g88wAAKCRFRHgg\/P9eM4Ors7ONo62Dl8t6r8G\/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt\/qIl7gRoXgugdfeLZrIPQLUAoOnaV\/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl\/AV\/1s+X48\/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H\/LcL\/\/wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93\/+8\/\/UegJQCAZkmScQAAXkQkLlTKsz\/HCAAARKCBKrBBG\/TBGCzABhzBBdzBC\/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD\/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q\/pH5Z\/YkGWcNMw09DpFGgsV\/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY\/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4\/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L\/1U\/W36p\/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N\/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26\/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE\/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV\/MN8C3yLfLT8Nvnl+F30N\/I\/9k\/3r\/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt\/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi\/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a\/zYnKOZarnivN7cyzytuQN5zvn\/\/tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO\/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3\/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA\/0HIw6217nU1R3SPVRSj9Yr60cOxx++\/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3\/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX\/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8\/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb\/1tWeOT3dvfN6b\/fF9\/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR\/cGhYPP\/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF\/6i\/suuFxYvfvjV69fO0ZjRoZfyl5O\/bXyl\/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o\/2j5sfVT0Kf7kxmTk\/8EA5jz\/GMzLdsAAAAgY0hSTQAAeiUAAICDAAD5\/wAAgOkAAHUwAADqYAAAOpgAABdvkl\/FRgAACLRJREFUeNrsmmuIXGcZgJ\/3+845c9udZLNp7umF2osUS9NqL5S2VsE\/BX8IoRZBWtAi\/vRSEMG\/Bi0UBf+0ItQ\/tRcQQRBBK5hWrJq2aatNm0uTbHaTbPYyM7tzOee7vP6Yk1uzKWTrbqTkO7zMcOYczjzfe39nRFX5JCzDJ2RdAbkCskIrueQ7FveWbwSNjvbMXvLBHGCJUYkaRVV3ALeosjnG2FDV6RD1qKq+psq0qiIy3MckyXBucMFjbrzrhysMcpGlaNMaeSRL7OPWmNsAE1WJQfEx4n3E+9DyIf5R4UngX5dXI8g5r4ICIjxYqyS\/qmT2WmtMeV6JJYDzEWcCxsha48PDzseHQ4hPi\/AdoHuZQPRcLSAU31jTXPN0VqkLGkASkLS8wJH4LtblGGMRcsCiCqo8rqp3q8aHgGOrDtKa\/scZHGvY2ahlz6T1q1E\/DyZBkjGIrrxCsaaByBxJ82bMwjHiwmE0GhRLiHJrCPnvgC8CrVWNWkXepsjb+Lx9Q8UOnkmbt6IaEKkijTugfiuYKtgGmBrYUUy6lqS2jerYDhITMVawVsiqa7BJ43bQH696+K03tlBrbKZRrz5Zad60BrMG0QJG7oDK1aARzAhIbQhiqmCb0N+HFIepjF6PNYIQMEaojW7B2Oq3QO8Tzh4rrxHXJvj2nVmWfpnazeBnId0E2ZYyBmRg6qXVpiAVkCqoR9xRstoGkrSOEUVDTpI1qTQ2IMh3xRhOy8onxFA0LcVXbGUDmFGIA8g2lc4dgVACCYgBLJgEpIqYGjo4iBEQMaAFIkK1sRkx6ReySmNzpTpKpTq68iBiuM1a+YJkm0A9mBTs2vLTODxHLIOblGJBEsRUEc0RHMYYVD2qnqy6DpuOjAZf3DuMaLoKIMSrjZEtJOuG2rCNYchFhxrReG6EPptzRACDHd2B2Po51wdMUietjOL94GpXdHFFb+XDb4xxPdgRSMsQO\/yCaBialQaQYaJAz3FaVbB1Qu8AGnvnJVZjUoytEWNYs9z+6JJBVClQAujQB8JiubslxHlmdW4SjRD7qF9AYyyVJojYob8Mi6\/AMiLWskwrRCZ8CNPExWFojX2IXdAcYlH6iJ4DoGd8R4ca5YwfiGBsZWiwfsDHyfDLCL9x7yD3\/4z5iSGIBiiOQ1iA2AN1QzM6AxGGmV5zlAohCjEqGiMiKSZpEGOBy9sR5LVVA\/E+HB3k8bm8NzncZdOAYhLcDIQ2aB9wpRSgA9A+6tt418X5ghAiIUZM0sCmDdxgDl90\/i4i\/17Vxsr5+IfuwuwbcTCBZBvR0AE\/DX6u1Ex3qJ3T4mdw+Tx5\/xTBR0LUoe9nY4hJ6XcmiLH4xXL9Y1kgUSEidPt+V29+L2qboAH1bTS0IXRKkC6EDupOUgzmKJzHFT18qQ2kQlodx+cd+t3JPSC\/Wd1WVxVRxXte6LYm\/+L7x4l2PbE4hbo51M2jbhZ1pwj5cYpBm6IIOKd4r4QQiTFi0zUYW6fbOUQoFneJmLi6IGWyFgO9PPygO7c3km3FByX4BYJv410LV3RwzuF8xId4RhNRFVVLUl2Hdx36nYmXQV66rMOHqLzW7Uw9HdwCkm0mhkAISowQIsMvX2ogln4RY0SSGjap0+tMhOAHTwxrMvmQrCKIiJAXcVe\/\/f6CZJvQMpMrwzxRdoJEBdV45pxNm3jXI+9NPyvCnrOh+lxZ8Vrr\/APMkd7C1AsxBiRtAlruqZz\/GDGoRhCLsTXy7omeatwlJkNMeoGseIlijFyAVjj\/c9ebeqxaGzeaLyAiiAiqw+Rn01FIMlwxgZg6MRQg9rmRsRv38z+aPSfLMacLA5l9K++f2l1r3PSAtRWQDGMcQkGIILaCSTbQ6xxBbAXve9RGtz9bqW9ANVweEGuXAhG86z+v6h+QZAzFIkSsdEhjoIgOjQ6wCBYRe2Bs02f\/JqfLf872YjatDrvKlfYRI3KBWCPEGF6JIQfTQEyC2AYmHSdNKxAWcd0jiMlQIMlG\/xxiCM51ca6Hcz1iHGBTy6uv\/JUnvv+9VXD20v4\/LCDvxTCYwGblbKsCZgSTjGJtgsYCEYuqUqlvfNOabNiHmIRKpUGSNnj8m9\/m\/s8\/xE+ffGrlTStNzUUSvhYoLUi3IxGVDEER2yCtKtY71M0DkFXXnUirY2fu7fZ6PProY7z04gur5yPOxYuBoKHXRTxIhpy2c21gE8UkDpEWgkdNtugipAZOnjzJzp072b179+o6+49+9s7S5X2Ar331wUMP3j5\/t6muK2cOCSQVrOlSyZTceibmUn6\/9\/W2Td9l8thRnnnqJ0wdO7r6UStrbFj6PHBo\/qrWnuePcuctluu2WQ5+8AF50adwntlWzuSJNgcmpjh25OVBa\/o47779Bv1+\/\/KE37f3vrl0CxwC22+6pfaZHfcxv9Dm0J559u3vMD27iIkDEnHMzszQas0xefhgemDfOwTvL9\/PCp+6ZsvSPhIj69evr7QXFtg6PsZ1122lPlLn9bf2056ZpNfpEENBo9Fgfm4mKSHsh0b8yyu0lgMyumHbRUEK73tjWUJzdIRaNWN83Rhrx8bBdzGxT6\/XIy9yXJ43gGZpkXr+qIUcGFwq0CWD+G7rIr28Z9BdzCqVKovdHpHAfKtNa36OXneRGBVjbVmD6UZg03A4zOk5qyshwqpoZObUqaV7k+D5YN\/bL2679savbxtvkqQwPraWkeZafL9F3p2n3+szc\/LEoXZrbgHYAiyUsgj0gNOTC11xkPcOHLrYBJLDU9Ovrtt6w7vXb\/vSp8ebTSZOzDBSh5YWxKiIEaZPTL2vMebABDBbApQD44\/RG13qiLJWrV58eOcDWb1+zV333Pvrz919z\/2zrQVm5+fI+33mZk51D+77z59OnZz6JaqvAvMfPRrQlQVZqoxfYt227qpNj2zcuv2OLEuzQb8\/eXj\/vt\/mg\/5bwNFSC1xWkP\/XdeUvHFdAroB89PrvAIkUyrgAK0PWAAAAAElFTkSuQmCC' alt='img'\/><\/div><div class='stb-caption-content'><\/div><div class='stb-tool'><\/div><\/div><div class='stb-content'>\n<ul>\n<li>0 \u2013 text rotation<\/li>\n<li>140 \u2013 The x-cordinate.From left-to-right distance.simply like left padding of the image<\/li>\n<li>270 \u2013 The y-cordinate. From top-to-bottom distance.simply like top padding of the image<\/li>\n<\/ul>\n<p><\/div><\/div><br \/>\nThis is the <strong>html form.<\/strong><\/p>\n<pre class=\"lang:php decode:true \">\n<form name=\"imageUpload\" id=\"imageUpload\" method=\"post\" enctype=\"multipart\/form-data\" >\n     <fieldset>\n        <legend>Upload Image<\/legend>\n        Image :<input type=\"file\" name=\"imagefile\" id=\"imagefile\"\/><br \/>\n        <input type=\"submit\" name=\"uploadedImage\" id=\"uploadedImage\" value=\"Submit\" \/>\n     <\/fieldset>\n     <?php\n     if(!empty($textWithWatermark)) {\n        echo '<br\/><center><\/center><br\/>';\n        echo 'Image Name- '.$textWithWatermarkName;\n     }\n     else\n        echo '<h3>'.$msg.'<\/h3>';\n     ?>\n<\/form>\n<\/pre>\n<p>Now see, <strong>how to call to this function.<\/strong><\/p>\n<pre class=\"lang:php decode:true \">\n<?php\n$textWithWatermark = \"\";\n$imageWithWatermarkName     = \"\";\nif(isset($_POST['uploadedImage']) and $_POST['uploadedImage'] == \"Submit\"){\n    $path    = \"uploads\/\";\n    \/\/ get valid image formats\n    $valid_formats     = array('jpg','jpeg','png','gif');\n    $uploadedImageName = $_FILES['imagefile']['name'];\n    if(strlen($uploadedImageName))\n    {\n       list($txt, $extension) = explode(\".\", $uploadedImageName);\n       $fileSize = round( ($_FILES['imagefile']['size']\/1024)\/1024, 2 ); \/\/ size by mb\n       if(in_array($extension,$valid_formats) &#038;&#038; $_FILES['imagefile']['size'] <= 5242880) \/\/ limit to 5mb size\n        {\n            $upload_status = move_uploaded_file($_FILES['imagefile']['tmp_name'], $path.$_FILES['imagefile']['name']);\n            if($upload_status)\n            {\n                $imgName      = time().'.'.$extension;\n                $newNamePath  = $path.$imgName;\n                \/\/ Call to the function\n                if(watermarkProcess($path.$_FILES['imagefile']['name'], $newNamePath))\n                    $textWithWatermark  = $newNamePath;\n                    $textWithWatermarkName = $imgName;\n            }\n        }\n        else {\n            $msg = \"File size Max 5mb or Invalid file format supports jpg, jpeg, png, gif.<br\/>You uploaded file size is \".$fileSize.'MB';\n        }\n    }\n}\n?>\n<\/pre>\n<h3>Now put this all together.<\/h3>\n<pre class=\"lang:php decode:true \">\n<?php\n$fontPath   = \"MTCORSVA.TTF\";\n$fontSize   = 20;  \/\/ in pixels\n$watermarkText  = \"Watermark text here\";\nfunction watermarkProcess($oldImageName, $newImageName){\n    global $fontPath, $fontSize, $watermarkText;\n    list($oldImageWidth,$oldImageHeight) = getimagesize($oldImageName);\n    $width  = 300;\n    $height = 300;\n    \/\/ CREATING TEMPORARY IMAGE\n    $imageTmp = imagecreatetruecolor($width, $height) or die('Cannot Initialize new GD image stream');\n    \/\/ GET TEMPORARY IMAGE INFO(WIDTH &#038; HEIGHT)\n    $info = getimagesize($oldImageName);\n    \/\/ Get image path from jpg\/jpeg types\n    if($info[2] == IMAGETYPE_JPEG){\n        $imageTmpPath = imagecreatefromjpeg($oldImageName) or die('JPEG\/JPEG Image type is open failed');\n    }\n    \/\/ Get image path from gif type\n    if($info[2] == IMAGETYPE_PNG){\n        $imageTmpPath = imagecreatefrompng($oldImageName) or die('PNG Image type is open failed');\n    }\n    \/\/ Get image path from png type\n    if($info[2] == IMAGETYPE_GIF){\n        $imageTmpPath = imagecreatefromgif($oldImageName) or die('GIF Image type is open failed');\n    }\n    \/\/ Copy and resize part of an image with resampling\n    imagecopyresampled($imageTmp, $imageTmpPath, 0, 0, 0, 0, $width, $height, $oldImageWidth, $oldImageHeight);\n    \/\/ Decides text color by RGB value\n    $color = imagecolorallocate($imageTmp, 59, 186, 10);\n    \/\/ Create temp image text by inserting text to positions\n    imagettftext($imageTmp, $fontSize, 0, 70, 270, $color, $fontPath, $watermarkText);\n    \/\/ Create image for jpg\/jpeg types\n    if($info[2] == IMAGETYPE_JPEG){\n        imagejpeg($imageTmp, $newImageName, 100);\n    }\n    \/\/ Create image for gif type\n    if($info[2] == IMAGETYPE_PNG){\n        imagepng($imageTmp, $newImageName, 0);\n    }\n    \/\/ Create image for png type\n    if($info[2] == IMAGETYPE_GIF){\n        imagegif($imageTmp, $newImageName, 100);\n    }\n    \/\/ delete temporary image\n    imagedestroy($imageTmp);\n    \/\/ delete uploaded original image\n    unlink($oldImageName);\n    return true;\n}\n$textWithWatermark = \"\";\n$imageWithWatermarkName     = \"\";\nif(isset($_POST['uploadedImage']) and $_POST['uploadedImage'] == \"Submit\"){\n    $path    = \"uploads\/\";\n    \/\/ get valid image formats\n    $valid_formats     = array('jpg','jpeg','png','gif');\n    $uploadedImageName = $_FILES['imagefile']['name'];\n    if(strlen($uploadedImageName))\n    {\n       list($txt, $extension) = explode(\".\", $uploadedImageName);\n       $fileSize = round( ($_FILES['imagefile']['size']\/1024)\/1024, 2 ); \/\/ size by mb\n       if(in_array($extension,$valid_formats) &#038;&#038; $_FILES['imagefile']['size'] <= 5242880) \/\/ limit to 5mb size\n        {\n            $upload_status = move_uploaded_file($_FILES['imagefile']['tmp_name'], $path.$_FILES['imagefile']['name']);\n            if($upload_status)\n            {\n                $imgName      = time().'.'.$extension;\n                $newNamePath  = $path.$imgName;\n                \/\/ Call to the function\n                if(watermarkProcess($path.$_FILES['imagefile']['name'], $newNamePath))\n                    $textWithWatermark  = $newNamePath;\n                    $textWithWatermarkName = $imgName;\n            }\n        }\n        else {\n            $msg = \"File size Max 5mb or Invalid file format supports jpg, jpeg, png, gif.<br\/>You uploaded file size is \".$fileSize.'MB';\n        }\n    }\n}\n?>\n            <form name=\"imageUpload\" id=\"imageUpload\" method=\"post\" enctype=\"multipart\/form-data\" >\n                <fieldset>\n                    <legend>Upload Image<\/legend>\n                    Image :<input type=\"file\" name=\"imagefile\" id=\"imagefile\"\/><br \/>\n                    <input type=\"submit\" name=\"uploadedImage\" id=\"uploadedImage\" value=\"Submit\" \/>\n                <\/fieldset>\n                <?php\n                    if(!empty($textWithWatermark)) {\n                        echo '<br\/><center><\/center><br\/>';\n                        echo 'Image Name- '.$textWithWatermarkName;\n                    }\n                    else\n                        echo '<h3>'.$msg.'<\/h3>';\n                ?>\n            <\/form>\n<\/pre>\n<p>That\u2019s only.<br \/>\n<br \/>\n<a class=\"large button download\" target=\"_blank\" href=\"http:\/\/demo.webexplorar.com\/PHP\/PHP-Creating-watermark-text\" title=\"Demo PHP Creating watermark text\" rel=\"noopener noreferrer\">View Demo<\/a><\/p>\n<p><a class=\"large button download\" href=\"http:\/\/adf.ly\/FGQCg\" id=\"download=22\" title=\"Download PHP Creating watermark text Example\" target=\"_new\" rel=\"noopener noreferrer\"><span>Download PHP Creating watermark text Example<small> (567 KB)<\/small><\/span><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>How to create text watermark using php?This is describes how to create simple text watermark using php.Tested in many browsers.Uploaded file type is same to final image type.Only you have to call to the function and get output.View demo and download source code.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[121,1],"tags":[],"class_list":["post-800","post","type-post","status-publish","format-standard","hentry","category-php","category-recent-posts","post--single"],"aioseo_notices":[],"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/webexplorar.com\/wp-json\/wp\/v2\/posts\/800","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webexplorar.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webexplorar.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webexplorar.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/webexplorar.com\/wp-json\/wp\/v2\/comments?post=800"}],"version-history":[{"count":1,"href":"https:\/\/webexplorar.com\/wp-json\/wp\/v2\/posts\/800\/revisions"}],"predecessor-version":[{"id":3764,"href":"https:\/\/webexplorar.com\/wp-json\/wp\/v2\/posts\/800\/revisions\/3764"}],"wp:attachment":[{"href":"https:\/\/webexplorar.com\/wp-json\/wp\/v2\/media?parent=800"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webexplorar.com\/wp-json\/wp\/v2\/categories?post=800"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webexplorar.com\/wp-json\/wp\/v2\/tags?post=800"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}