Skip to content

Instantly share code, notes, and snippets.

@moaminsharifi
Created April 8, 2021 13:57
Show Gist options
  • Save moaminsharifi/2089cf8ff6f19b9d699265d0c5c823ad to your computer and use it in GitHub Desktop.
Save moaminsharifi/2089cf8ff6f19b9d699265d0c5c823ad to your computer and use it in GitHub Desktop.
persian-character-in-opencv
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"id": "blank-bracket",
"metadata": {},
"source": [
"![نوشتن متن فارسی در عکس توی پایتون با استفاده از opencv و Pillow](persian-text-in-opencv-python.png)\n"
]
},
{
"cell_type": "markdown",
"id": "expired-armstrong",
"metadata": {},
"source": [
"# English Text"
]
},
{
"cell_type": "code",
"execution_count": 1,
"id": "competent-device",
"metadata": {},
"outputs": [],
"source": [
"import cv2\n",
"file_name = 'base.png'\n",
"img = cv2.imread(file_name)\n",
"\n",
"# font \n",
"font = cv2.FONT_HERSHEY_SIMPLEX \n",
"\n",
"# org \n",
"org = (50, 50) \n",
"\n",
"# fontScale \n",
"fontScale = 1\n",
"\n",
"# Blue color in BGR \n",
"color = (255, 0, 0) \n",
"\n",
"# Line thickness of 2 px \n",
"thickness = 2\n",
"\n",
"image = cv2.putText(img, 'Hi There', org, font, \n",
"fontScale, color, thickness, cv2.LINE_AA)\n",
"\n",
"cv2.imshow('image',image)\n",
"cv2.waitKey(0) # get time if set 0 then wait until press key\n",
"cv2.destroyAllWindows()"
]
},
{
"cell_type": "markdown",
"id": "controversial-potter",
"metadata": {},
"source": [
"# persian"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "short-pittsburgh",
"metadata": {},
"outputs": [],
"source": [
"file_name = 'base.png'\n",
"img = cv2.imread(file_name)\n",
"\n",
"# font \n",
"font = cv2.FONT_HERSHEY_SIMPLEX \n",
"\n",
"# org \n",
"org = (50, 50) \n",
"\n",
"# fontScale \n",
"fontScale = 1\n",
"\n",
"# Blue color in BGR \n",
"color = (255, 0, 0) \n",
"\n",
"# Line thickness of 2 px \n",
"thickness = 2\n",
"text = 'سلام'\n",
"image = cv2.putText(img, text, org, font, \n",
"fontScale, color, thickness, cv2.LINE_AA)\n",
"\n",
"cv2.imshow('image',image)\n",
"cv2.waitKey(0) # get time if set 0 then wait until press key\n",
"cv2.destroyAllWindows()"
]
},
{
"cell_type": "markdown",
"id": "rural-marshall",
"metadata": {},
"source": [
"# ASCII\n",
"## `128`\n",
"![1200px-USASCII_code_chart.png](1200px-USASCII_code_chart.png)\n",
"\n",
"\n",
"\n",
"\n",
"\n"
]
},
{
"cell_type": "markdown",
"id": "outer-beauty",
"metadata": {},
"source": [
"\n",
"# UTF- 8\n",
"## `1, 112, 064`\n",
"![utf-8-persian-character-1.png](utf-8-persian-character-1.png)\n"
]
},
{
"cell_type": "markdown",
"id": "infectious-variety",
"metadata": {},
"source": [
"# install Pillow\n",
"`pip install Pillow`"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "adjacent-cookie",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAABAAAAAMACAYAAAC6uhUNAAAna0lEQVR4nO3deZRkZX3H4V8PM4MsAyhIlCFsIgiKihrQGA3GLWAEPJiIihBAkRBXCMYNImjUoKghAiG44E7EoCIoGCOCQiCKgCyC5oBsEpCwDTgsDp0/3tOpqp6ent67ur/Pc04fqrqrq9+pou/p+7nvfe/A4ODgYAEAAADz2oLZHgAAAAAw/QQAAAAACCAAAAAAQAABAAAAAAIIAAAAABBAAAAAAIAAAgAAAAAEEAAAAAAggAAAAAAAAQQAAAAACCAAAAAAQAABAAAAAAIIAAAAABBAAAAAAIAAAgAAAAAEEAAAAAAggAAAAAAAAQQAAAAACCAAAAAAQAABAAAAAAIIAAAAABBAAAAAAIAAAgAAAAAEEAAAAAAggAAAAAAAAQQAAAAACCAAAAAAQAABAAAAAAIIAAAAABBAAAAAAIAAAgAAAAAEEAAAAAAggAAAAAAAAQQAAAAACCAAAAAAQAABAAAAAAIIAAAAABBAAAAAAIAAAgAAAAAEEAAAAAAggAAAAAAAAQQAAAAACCAAAAAAQAABAAAAAAIIAAAAABBAAAAAAIAAAgAAAAAEEAAAAAAggAAAAAAAAQQAAAAACCAAAAAAQAABAAAAAAIIAAAAABBAAAAAAIAAAgAAAAAEEAAAAAAggAAAAAAAAQQAAAAACCAAAAAAQAABAAAAAAIIAAAAABBAAAAAAIAAAgAAAAAEEAAAAAAggAAAAAAAAQQAAAAACCAAAAAAQAABAAAAAAIIAAAAABBAAAAAAIAAAgAAAAAEEAAAAAAggAAAAAAAAQQAAAAACCAAAAAAQAABAAAAAAIIAAAAABBAAAAAAIAAAgAAAAAEEAAAAAAggAAAAAAAAQQAAAAACCAAAAAAQAABAAAAAAIIAAAAABBAAAAAAIAAAgAAAAAEEAAAAAAggAAAAAAAAQQAAAAACCAAAAAAQAABAAAAAAIIAAAAABBAAAAAAIAAAgAAAAAEEAAAAAAggAAAAAAAAQQAAAAACCAAAAAAQAABAAAAAAIIAAAAABBAAAAAAIAAAgAAAAAEEAAAAAAggAAAAAAAAQQAAAAACCAAAAAAQAABAAAAAAIIAAAAABBAAAAAAIAAAgAAAAAEEAAAAAAggAAAAAAAAQQAAAAACCAAAAAAQAABYL46++yqNdbofIzk5pt7H3PZZTM6RMbBewX9Y6+9en8fb711tkcEADAmAgAAjMfChaPfBwDoUwIAAIzHokW99wUAAGCOEADmq8HB2R4BwPxkBgAAMEcJAAAwHsNnAAy/DwDQpwSA+coMAIDpYQYAADBHCQAJBgZmewQA84c1AACAOUoAmK/MAAD6zW9+U3XqqSN/7ctfrvrf/53Z8UxU9w7/qi6zCgDQhwQAgKny4IOzPYL+9ZvfVL34xVX77FN14om9Xzv++KrXva59/Y47Zmd849EdAJz/DwDMIQLAfGUGAMysM8+sevKTqy65ZLZH0n+Gdv6vuKJtm970pqoTTmhfO/74qre8pd2+/PK5EQG6d/pN/wcA5hABAGCybryxav/9q66/vup5z6s65ZTZHlF/ufPOqttu6/3cNdf0/nfIbbf1/6kA3Tv9AgAAMIcIAPOVGQDT66STqn7+89keBd1m8z35znfaTm5VOw3gwAOr3ve+2RlLP9p226rvfa/qsY9t9w8+uOq449rt446resMb2u2NN26P23bb2RnnWJkBAADMUQJAAlcBmFof+1jVIYdUvfCFVVdfPdujoWr235PnPKdqrbV6P/f+91e99a0zP5aZ9tBDVbfcsvrHPfnJVd/9btVhh1V98pOdzw8MtDUBDj206t//vWr77Ud/nkceaacSzCYzAACAOUoAmGnXXNPOed1zz6pLL52+nzOTMwAGB6tOP71q113bEb5HPapqyy2r9ttv5s+Hnu6xfOQjVYcf3m7fdlvb4bzyysk/70zph/fqhhuqvvrVqo9/vOqYY6pOPrnqhz+sWrFiYs832+/JHXdU7bFH1fLlK3/tk5+sete7Zm4s02F126z/+I+qLbao2m23qn/7t9Gf66lPbe/58Cg5MNDex6c8ZdXf+6tfVb385VUbbVT19KevfErBWE3F70D3DACLAAIAc4hDFzPpvvuqnva0qt/9rt1//vOrdtxxdsc0Wffe21b1Puus3s/feGPVF79Y9aUvtT/4Dz10foxl+PnK99xTdeuto++49IvZfq/OO6/qiCOqLrhg5K/vsUfbMRuv2X5P9tuvvYZDnvCEtrM6FDSOOaZqu+2q9t13ZsYzlcayzTr99HZU/pxzqpYtq9prr+kZy5IlVd/+duf+xRdX7b77+J5jqn4HzAAAAOYoMwCm0rJlVT/7WdW3vtWOaA637rq9fzyP9JipMhMzAB54oP0BPvyP6eHjOPzwqn/8x/kxlpNPrvrLv2y311yz6hvfaKuWr8ott7QjpLNtNt+rRx6pOvroqhe9aNU7/1VVW289seefzffkM5+pOvvszv1nPrPqv/6r6utfb0eWh/zVX1X94hdT8zOn0lRss37wg87tP/7jKR/i/9tww6pNN+3cv/ji8X3/VP4OWAMAAJijBICxeOSRql//evWPO+yw9sfynntW/cu/jPyYZz2rc/uqq6ZkeLPmne/s3SFYd92qAw6oeve72zTsbu95T1shvd/Hct55bYfukUdG/vqCBW2H841vbDuaL3nJyI/7+ter/uRP2tTovfeuevjh8f6LptZUvlfjvdb9295WddRRq35Nh6xqNky/vif33ddeqyGbbdbGucEGVS97WRvL0I7iAw+0he9mykxts373u97/VzbffNxDHZfuxQF/+cvxfe9U/g6YAQAAzFHzMwBcc03VTTdN/nkuvbRNBd1ss6q/+IvVP/4xj+ncXtVlrLr/gL399smNbzTTPQPgkkt6F/LaYov2ep18clv87LvfbbeHLF/ee79fx/KBD7Sdt222qTr11JEfs2BBu4b5qnY0q9pR5vPOaztid97ZFjebLVP5+lx0Uft9eMc7xrYD9q//2s4fH7J4cdVBB1X953+2//8feqjq5pvbNPIXvGDk5+jX9+Tzn+/9HT7llN5twItf3KaTDznvvFXPPJir26z77+/d1qyzztjHOhGbbNK5PZ41AKZ6e2UGAAAwR83PAHDkke083N13rzr//Ik/zxlntKmgt97adnxWd0Rtgw06t++6a+THPP7xndvLlo18NPWaa0ZeUGyipuMqAO98Z+cP/8WL26JuW23V+5gDDqjaZZfO/Ymc3z2TY7ntts505uuvb+cLT9S++/ZOAZ/NADCV79VnPtMWvTv22KqXvnT0n7t8edXb3965v/767Qj5iSdW7bRTm9K9xhrtd2KPPaoe97iVn6Of35PTTuvcfslLRp7+/qY3tdXvh5x00sjPNVe3Weut17sz3L0WwnRYc83O7fEsGjnV26v9928/f8WKqssuG/s4AABm2fwLAPfeW3Xmme0Ps7POqvrxjyf+XAcd1Dm6MzjYpvSOpvtI0NA1wYdbvLj3/oIR3oJ9923nur7tbVXXXTfW0c6cyy6r+v73O/f/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AAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAAIAAAAABBAAAAAAIIAAAAAAAAEEAAAAAAggAAAAAEAAAQAAAAACCAAAAAAQQAAAAACAAP8HrUUFbk6oMKYAAAAASUVORK5CYII=\n",
"text/plain": [
"<PIL.PngImagePlugin.PngImageFile image mode=RGBA size=1024x768 at 0x7F4EC80E4B50>"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from PIL import Image, ImageFont, ImageDraw \n",
"image = Image.open(file_name) \n",
"font = ImageFont.truetype('vazir.ttf', 40, encoding='unic')\n",
"draw = ImageDraw.Draw(image) \n",
"text = 'سلام من امین هستم!'\n",
"draw.text((50, 100), text,(255,2,2), font = font) \n",
"image"
]
},
{
"cell_type": "markdown",
"id": "banner-chinese",
"metadata": {},
"source": [
"![persian-character-in-opencv-4.png](persian-character-in-opencv-4.png)"
]
},
{
"cell_type": "markdown",
"id": "thermal-boost",
"metadata": {},
"source": [
"### install `arabic_reshaper` , `python-bidi`\n",
"\n",
"`pip install arabic-reshaper`\n",
"\n",
"`pip install python-bidi`\n",
"### or\n",
"`pip install arabic-reshaper python-bidi`"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "referenced-collins",
"metadata": {},
"outputs": [],
"source": [
"import arabic_reshaper\n",
"from bidi.algorithm import get_display\n",
"from PIL import Image, ImageFont, ImageDraw "
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "biblical-savings",
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"سلام من امین هستم! \n",
"ﺳﻼﻡ ﻣﻦ ﺍﻣﯿﻦ ﻫﺴﺘﻢ! \n",
"!ﻢﺘﺴﻫ ﻦﯿﻣﺍ ﻦﻣ ﻡﻼﺳ\n",
"bidi without reshape: !متسه نیما نم مالس\n"
]
}
],
"source": [
"file_name = 'base.png'\n",
"image = Image.open(file_name) \n",
"font = ImageFont.truetype('vazir.ttf', 40, encoding='unic')\n",
"draw = ImageDraw.Draw(image) \n",
"text = 'سلام من امین هستم!'\n",
"\n",
"reshaped_text = arabic_reshaper.reshape(text) # correct its shape\n",
"bidi_text = get_display(reshaped_text) # correct its direction\n",
"print(f\"\"\"\n",
"{text} \n",
"{reshaped_text} \n",
"{bidi_text}\n",
"bidi without reshape: {get_display(text)}\"\"\")"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "third-limitation",
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"image/png": "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ABx1VD2NdsWKiEcfHfjzL7+89X96P/GJiK98pe4IdHXVywJuv72x0xsxsFOSe+5Er2oHvNuUKY3pV17pf77x4+uAaatbdjvzRLTuLDTvZPT0xjc25m+OCzNn1ssCupezYEHElVf2v5x2nX12HVjtAx+IuOeevucZN66+l/3tqEZE/Nu/1VO4582LmDOn/ncg1uS9/PSn62UREXWH9oYb6o5yV1fEFltEfOYz9ZKJbvfeW099H26d3qajZbt86lM15kTU9/d73+s94OfRR0e8+92Nxz/8YXvL3n//xvScOX3/Lfe85GhVO/TdhvrzYfPNG9Pz56/+9QEAGPXGbgAYjEWLIi66qPF41qx6PXJPm2wS8bd/23h8223tv8b48a2P2/kf7OYzGf7wh1WPyN88Snp/OwPNO/arev0ZMxrTDz7Y9zzz5zfOFNhuu947xe98Z+t1xasac6Adv/99xI031sBz002Du6Xa8cc3tm0pded1IAb6Xt59dx3Zvtspp9Tt09Opp9Yd32533TWw9RqoTm/T0bJdHn20nuHT7ZOf7H+k/6OPbkw//XQjXqzKXns1AtmKFXU8jWavvVav42/27LOrX+5Qfz40/w33ddYPAABrHQGgp4ULIy68sPWIW/Ngdj392Z81pp97LuLxx9t7nZ6nwLdzFPOll1of93da7oIFrYP2PfPM6pf31FP9v27zEctvfCPihRd6z3PhhY2Byw45pO/lbLNNY7qdo+SrcuedrTs4H/zgmi9r883rLR27tXskt9tA38vmW6pttFHEWWf1Pd8b3hDx5jc3Hj///MDWa6A6vU07vV3mzauv+Zd/2fhaV1e9lKE/22/fmF6xor0j9ePH1zOIut1+e+v3zz6798B87cSYof58aB7YdFVn/gAAsNYQALotX15PL95884j/9/8aX+/qaj1dtqfu0967XXtte6/X82yB5iOO7T6n51HCbj1P3b777t7zvPJK647TnDn9HzH82Mca2+D11yPe857W537jG40zJqZN6/u67FJad2I23rjv12pX8/aaObM1LqyJ5tPZ77qrxpx2DeS9vOaaen/1bpMnt+6M9dS847VoUfvrtCY6uU07vV3uuCNi553rmT7NAWfRoogjj+w7evX12uuv397r7btvY7r773PFiohzzmkde6Db9763+mUO9edDcxjYYYfVvz4AAKPe2A0A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BAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASEAAAAAAgAQEAAAAAEhAAAAAAIAEBAAAAABIQAAAAACABAQAAAAASOD/A2nG1MKTyevMAAAAAElFTkSuQmCC\n",
"text/plain": [
"<PIL.PngImagePlugin.PngImageFile image mode=RGBA size=1024x768 at 0x7F0328074100>"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"draw.text((50, 100), bidi_text,(255,2,2), font = font) \n",
"image"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "owned-nevada",
"metadata": {},
"outputs": [],
"source": [
"import numpy as np\n",
"open_cv_image = cv2.cvtColor(np.array(image), cv2.COLOR_RGB2BGR)\n",
"cv2.imshow('open_cv_image',open_cv_image)\n",
"cv2.waitKey(0) # get time if set 0 then wait until press key\n",
"cv2.destroyAllWindows()"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.5"
}
},
"nbformat": 4,
"nbformat_minor": 5
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment