- ID de exploración:
- 7295ee18-a8b7-499d-8b39-2a0cf2f2456fFinalizado
- URL enviada:
- https://www.imgocr.com/
- Informe finalizado:
Enlaces: 5 encontrados
Los enlaces salientes identificados en la página
Enlace | Texto |
---|---|
https://colab.research.google.com/github/tensorflow/docs/blob/master/site/en/tutorials/images/segmentation.ipynb | Image Segmentation |
https://github.com/tesseract-ocr/tesseract | Tesseract OCR |
https://www.facebook.com/imgocr | |
https://www.linkedin.com/showcase/image-to-text-imgocr/ | |
https://t.me/imgocr_com | Telegram Channel |
Variables JavaScript: 26 encontradas
Las variables JavaScript globales cargadas en el objeto de ventana de una página son variables declaradas fuera de las funciones y a las que se puede acceder desde cualquier lugar del código en el ámbito actual
Nombre | Tipo |
---|---|
onbeforetoggle | object |
documentPictureInPicture | object |
onscrollend | object |
menuToggle | object |
mainMenu | object |
pingandremove | function |
adsbygoogle | object |
isSafeCssLoad | boolean |
quickSafeloadFiles | function |
loadGeoData | function |
Mensajes de registro de la consola: 0 encontrados
Mensajes registrados en la consola web
HTML
El cuerpo HTML sin procesar de la página
<!DOCTYPE html><html lang="en"><head>
<meta charset="utf-8">
<meta content="width=device-width, initial-scale=1.0" name="viewport">
<meta name="msvalidate.01" content="0EAC5B04F7048B2C99C439181E200D85">
<meta name="robots" content="max-image-preview:large">
<link rel="canonical" href="https://www.imgocr.com"><meta property="og:url" content="https://www.imgocr.com"><link rel="alternate" hreflang="x-default" href="https://www.imgocr.com"><link rel="alternate" hreflang="en" href="https://www.imgocr.com"><link rel="alternate" hreflang="es" href="https://www.imgocr.com/es/imagen-a-texto"><link rel="alternate" hreflang="ru" href="https://www.imgocr.com/ru/изображение-в-текст"><link rel="alternate" hreflang="de" href="https://www.imgocr.com/de/bild-zu-text"><link rel="alternate" hreflang="id" href="https://www.imgocr.com/id/gambar-ke-teks"><link rel="alternate" hreflang="it" href="https://www.imgocr.com/it/immagine-in-testo"> <meta name="csrf-token" content="GXGVI8wwRfXmd6zJNN5u0B42AZgLo0bpQ5wkBqYQ">
<meta name="og:title" content="Image to Text AI (Extract Text From Image)">
<title>Image to Text AI (Extract Text From Image)</title>
<meta name="og:type" content="website">
<meta name="description" content="Image to text AI online OCR tool used to extract text from image, handwritten notes, and scanned documents. it rapidly converts picture to text">
<meta property="og:image" content="https://www.imgocr.com/storage/6623c44b641c0-image-to-text-ai.jpg">
<meta content="image to text AI, AI-powered image to text, AI image text extraction, convert image to text AI, free image to text, AI image to text, AI converter, AI OCR image to text, online image to text AI" name="keywords">
<link rel="shortcut icon" href="https://www.imgocr.com/favicon.ico">
<link href="https://www.imgocr.com/tool_assets/opt-style.css?v=1.1.2" rel="stylesheet">
<style>
img{max-width:100%;height:unset}.text{white-space:pre-line}.hero{height:unset;min-height:100vh}#blog a{text-decoration:none}#blog article img{width:100%}#blog h4{font-size:19px}.text-output-holder-load{position:relative}.text-output-holder-load textarea{font-size:14px;resize:none;width:96%;margin:0 auto}.text-output-holder-load .spinner-grow{position:absolute;top:35px;left:calc(50% - 30px)}.floating-alert{display:none}.make-visible{display:block!important}#features{margin:0}#features img{max-width:100%}.card-body img{display:block;margin:0 auto}#hero{width:100%;max-width:1440px;margin:0 auto;padding:10px 20px;}.col-gap{column-gap:10px;row-gap:10px}.d-flex{display:flex}.tool-area{background:#fff;border-radius:20px;padding:20px;box-shadow:0 1px 15px #aa9f7766;display:flex;justify-content:space-between;column-gap:20px;width:90%;margin:0 auto}#drop-area{border:2px dashed lightgray;border-radius:20px;padding:20px;width:100%;text-align:center;cursor:pointer;height:200px;display:flex;row-gap:10px;flex-direction:column;justify-content:center;align-items:center;font-size:20px;color:#303030}#drop-area.highlight{border-color:#ff9800}#file-list{list-style:none;display:none;padding:0;align-content:flex-start;flex-direction:column;margin:0;width:50%;height:200px;overflow-y:scroll;overflow-x:hidden}#file-list li{width:100%;border:1px dashed #3f51b5;padding:5px;border-radius:15px;text-align:left;background:#fff}#file-list li p{font-size:13px;height:32px;line-height:15px;overflow:hidden;font-weight:300;margin:0}#file-list li img{width:60px;height:60px;border:1px solid #eee;border-radius:10px;aspect-ratio:1 / 1;object-fit:cover}#file-list li span.remove_image{color:red;font-size:1.5em;line-height:16px;cursor:pointer;font-family:cursive}.file-preview{margin-bottom:10px;align-items:center;justify-content:space-between;display:flex}#submit_controls{margin-top:20px}#submit_controls button{height:40px;width:150px;background-color:#3f51b5;border:0;color:#fff;cursor:pointer}#_output_results{background:#fff;padding:50px;border-radius:20px;box-shadow:0 2px 10px #efefef;display:none;flex-direction:column;row-gap:20px;position:relative}.output-card{column-gap:10px}.output-card img{max-height:100px}.actionbtns{width:max-content;column-gap:20px;background:#fff;position:absolute;top:1px;right:16px;padding:5px}.text-output-holder-load textarea{border:1px dotted #aaa;width:100%;outline:0;resize:none;border-radius:10px}@keyframes uploader{0%{fill:#ff9800}50%{fill:#3f51b5}100%{fill:#ff9800}}#startoverbtn{cursor:pointer;position:absolute;right:20px;top:9px;color:red}#cloudupload{animation:uploader 1s ease-in-out infinite}.hwitwrkheading{color:#3a48a1}.stptagbadge{color:#464a4e}@media (max-width: 767px){#howitwork > .container > .row{row-gap:20px}#hero .tool-area{padding:10px;margin:5px;width:100%;flex-direction:column;row-gap:20px}#hero #file-list{width:100%}#hero #drop-area > p{font-size:18px;margin-bottom:0}#hero #drop-area{padding:10px}#hero #drop-area svg{height:60px}div#_output_results{margin:10px 0!important;padding:10px!important}#startoverbtn{position:unset;display:block;text-align:center}.output-card{flex-direction:column;box-shadow:0 0 5px #ddd;border-radius:10px;padding:5px}#hero .output-card img{height:90px;width:120px}.otpcntnarea{width:100%;margin-bottom:0!important}.actionbtns{position:unset!important;width:100%!important}}
</style>
<style>body{background:#f4f4f4;}.bg-dark{background: #202020;}div#mytransModal { background: #1a181899; } #scrollToTopBtn{display:none;position:fixed;bottom:0;right:80px;cursor:pointer;background:#000;box-shadow:0 10px 10px #aaa;height:35px;width:35px;align-items:center;justify-content:center}#scrollToTopBtn svg{width:22px;height:22px}nav.navbar{background:white;box-shadow:0 5px 10px #dfdfdf;}@media (max-width: 767px){.rm-p{padding:0!important}.rm-m{margin:0!important}.p-small{padding-left:20px!important;padding-right:20px!important} body{font-size:16px;} .alert{flex-direction: column;row-gap: 10px;font-size: 14px;}}</style>
<style>header .container{
padding: 0;
}
table td{
border-width: 1px;
padding: 5px;
}
.topalertmsg button.btn.btn-sm {
border: 1px solid black;
color: black;
}
body.bg-dark .topalertmsg button.btn.btn-sm {
border-color: white;
color: white;
}
.topalertmsg.alert-success {
background: #c1e9c2;
}
.topalertmsg.alert-warning{
background: #e9e6c1;
}
.topalertmsg.alert-danger{
background: #e9c1c1;
}
.topalertmsg.alert-info{
background: #c1d7e9;
}
.justify-content-around {
justify-content: space-around;
}
code{
white-space: pre-wrap;
}
ins[data-ad-status="unfilled"] {
display: none !important;
}
@media (max-width: 992px) {
table{
display: none;
}
} </style>
<!-- <script type="text/javascript"> (function(c,l,a,r,i,t,y){ c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)}; t=l.createElement(r);t.async=1;t.src="https://www.clarity.ms/tag/"+i; y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y); })(window, document, "clarity", "script", "o4icz649fl"); </script> -->
</head>
<body>
<header>
<div class="container d-flex justify-content-between align-items-center">
<a href="/" title="home logo">
<div class="d-flex align-items-center col-gap logo">
<svg title="logo" width="32px" height="32px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> <g clip-path="url(#clip0_429_11130)"> <path d="M20 12H4" style="stroke: orange;" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"></path> <path d="M16 3.99976H18C19.1046 3.99976 20 4.89519 20 5.99976V7.99976" stroke="#292929" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"></path> <path d="M8 19.9998L6 19.9998C4.89543 19.9998 4 19.1043 4 17.9998L4 15.9998" stroke="#292929" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"></path> <path d="M20 15.9998V17.9998C20 19.1043 19.1046 19.9998 18 19.9998H16" stroke="#292929" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"></path> <path d="M4 7.99976L4 5.99976C4 4.89519 4.89543 3.99976 6 3.99976L8 3.99976" stroke="#292929" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"></path> </g> <defs> <clipPath id="clip0_429_11130"> <rect width="24" height="24" fill="white"></rect> </clipPath> </defs> </svg>
<span>imgOCR - Image to Text</span>
</div>
</a>
<button id="menu-toggle" type="button" aria-label="Toggle Menu">☰</button>
<nav id="main-menu">
<ul>
<li><a title="find similar images" href="https://www.imgocr.com/en/reverse-image-search">Reverse Image Search</a></li>
<li><a title="extract text and translate in other language" href="https://www.imgocr.com/en/image-translator">Image Translator</a></li>
<li><a title="generate editable Word file from PDF" href="https://www.imgocr.com/en/pdf-to-word">PDF to WORD</a></li>
<li>
<a href="https://www.imgocr.com/login" class="btn btn-warning btn-sm">Login</a>
</li>
</ul>
</nav>
</div>
</header>
<style>
header .container{max-width: 100%;width:100%;min-width:100%;} header{background:#fff;box-shadow:0 2px 20px #b5b1a755;padding:20px 10px;width:100%;}header a:link,header a:visited,header a:active{text-decoration:none}header .logo{column-gap:10px}header .logo>span{font-size:18px;color:#000}header nav ul{padding:0;margin:0}header nav ul li{display:inline-block;margin-right:10px}header nav ul li a{display:block;padding:2px;font-size:14px}nav ul li a:hover{text-decoration:underline}#menu-toggle{background:none;outline:0;border:0;cursor:pointer;font-size:large;color:#000;display:none}@media screen and (max-width: 768px){#menu-toggle{display:block;position:relative;z-index:999}header nav{display:none;justify-content:center;align-items:center;position:fixed;height:100%;width:100%;background-color:#fffe;top:0;left:0;text-align:center;z-index:9999;}header nav ul{display:grid}}
</style>
<script>
var menuToggle=document.getElementById("menu-toggle"),mainMenu=document.getElementById("main-menu");window.addEventListener("resize",function(e){window.innerWidth>768&&(mainMenu.style.display="flex")}),document.addEventListener("DOMContentLoaded",function(){menuToggle.addEventListener("click",function(){"flex"===mainMenu.style.display?(mainMenu.style.display="none",document.body.style.overflow="auto",menuToggle.innerHTML="☰"):(mainMenu.style.display="flex",document.body.style.overflow="hidden",menuToggle.innerHTML="×")})});
</script> <!-- Header-->
<div class="pt-5" id="mainheader">
<div class="container px-2 pb-2 p-small">
<div class="row align-items-center">
<div class="col">
<!-- Header text content-->
<div class="text-center">
<h1><strong> Image to Text AI (Online OCR Converter) </strong></h1>
<p>
You all have to upload picture from device to get extracted text in bulk image OCR converter. </p>
</div>
</div>
</div>
<div style="width:100%;min-height:300px !important;margin:0 auto;text-align:center;" class="ad-placeholder"><ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-1038752045714760" data-ad-slot="1699411975" data-ad-format="auto" data-full-width-responsive="true"></ins></div>
</div>
</div>
<script> function pingandremove(e){e.parentNode.remove();let t=new XMLHttpRequest;t.onreadystatechange=function(){4==this.readyState&&200==this.status&&console.log(t.responseText)},t.open("POST","/np",!0),t.setRequestHeader("X-CSRF-TOKEN","GXGVI8wwRfXmd6zJNN5u0B42AZgLo0bpQ5wkBqYQ"),t.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),t.send()}</script> <section class="container" id="hero">
<!-- Tool Content Will Be Here -->
<div class="row">
<div id="main_uploader" class="col-md-12 dark-support">
<!-- Tool Container -->
<div class="tool-area">
<div id="drop-area" ondrop="dropHandler(event);" ondragover="dragOverHandler(event);" ondragenter="dragEnterHandler(event);" ondragleave="dragLeaveHandler(event);">
<svg width="90px" height="90px" viewBox="0 0 1024 1024" class="icon" version="1.1" xmlns="http://www.w3.org/2000/svg">
<path d="M220.5 245.4c-32.8 32.8-55.1 73.2-65.2 117.3h16.5c18.8-75.3 75.1-135.9 148-160.7v-16.9c-37.1 11.6-71 32-99.3 60.3z" style="fill: #3F51B5;"></path>
<path id="cloudupload" d="M959.9 540.8c0 113.6-92.1 205.8-205.7 205.9H590.9v-44h163.3c43.2 0 83.8-16.9 114.3-47.4 30.6-30.6 47.4-71.2 47.4-114.5 0-43.2-16.8-83.9-47.4-114.4S797.2 379 754 379c-11.5 0-22.8 1.2-33.8 3.5-15 3.2-29.4 8.4-42.8 15.7-1-15.4-3.3-30.7-6.8-45.6v-0.1c-3.6-15.6-8.6-30.8-14.9-45.7-14.4-33.9-34.9-64.4-61.1-90.6-26.2-26.2-56.6-46.7-90.6-61.1-35.1-14.8-72.4-22.4-110.9-22.4s-75.8 7.5-110.9 22.4c-33.9 14.3-64.4 34.9-90.6 61.1-26.2 26.2-46.7 56.7-61.1 90.6-14.9 35.1-22.4 72.4-22.4 110.9s7.5 75.8 22.4 110.9c14.3 33.9 34.9 64.4 61.1 90.6 26.2 26.2 56.7 46.7 90.6 61.1 35.1 14.8 72.4 22.4 110.9 22.4h39.7v44h-41C210.7 746 64.1 599 64.1 417.7c0-181.7 147.3-329 329-329 154.6 0 284.3 106.6 319.5 250.3v0.1c13.4-2.7 27.2-4.2 41.4-4.2 113.7 0.1 205.9 92.2 205.9 205.9z" fill="gray"></path>
<path d="M692.9 636.1h-22.6L519.8 485.6v449.6h-16V485.8L353.4 636.1h-22.6l181-181z" style="fill: #3F51B5;"></path>
</svg>
<p>Paste, Drop or <u style="color:#3F51B5;">Browse</u> Images to Upload</p>
<input type="file" title="upload images" id="fileInput" multiple="" accept="image/*" style="display: none;">
</div>
<ul id="file-list"></ul>
</div>
<div class="mt-3 alert alert-danger floating-alert">
<strong>Error:</strong> Something Went Wrong With This Image Try Another </div>
<div style="display:flex;justify-content:center;align-items:center;margin:5px auto;"><div id="ad-placeholder"><ins class="adsbygoogle" style="display:block;width:300px;height:250px;" data-ad-client="ca-pub-1038752045714760" data-ad-slot="1699411975"></ins><script>(function(){ (adsbygoogle = window.adsbygoogle || []).push({}); })();</script></div></div>
<div id="submit_controls" class="text-center">
<button type="submit" name="process_ocr_request_auth" id="submit_processor">Submit</button>
</div>
</div>
<!--Results Section-->
<div class="col-md-10 mx-auto my-5" id="_output_results"></div>
</div>
</section>
<div class="text-center alert alert-warning">
<em style="font-size: 14px;"><b>Important Notice:</b> Every uploaded file is encrypted througout whole processing with auto cleanup, No Cache saved on server.</em><br>
<small>If you're facing any problem, <a href="https://www.imgocr.com/p/contact-us">Contact Webmaster Here</a></small>
</div>
<div class="container text-center" aria-label="localization">
<big>Available Language Version(s):</big>
<p>
<a href="https://www.imgocr.com">English</a> / <a href="https://www.imgocr.com/es/imagen-a-texto">Spanish</a> / <a href="https://www.imgocr.com/ru/изображение-в-текст">Russian</a> / <a href="https://www.imgocr.com/de/bild-zu-text">German</a> / <a href="https://www.imgocr.com/id/gambar-ke-teks">Indonesian</a> / <a href="https://www.imgocr.com/it/immagine-in-testo">Italiano</a></p>
</div>
<!-- How It Works Section -->
<section class="container my-5" id="howitwork">
<div class="col-md-12 text-center mb-4">
<h2 class="fw-bolder mb-0">How Image to Text AI Works in 3 steps?</h2>
<p class="txt">You need to know about working of Our Image OCR tool that how it extracts text from JPG, PNG photos. This process is divided in three simple steps to get accurate editable text from images.</p>
</div>
<div class="row gap-lg-3">
<div class="col-md col-sm-12">
<div class="stptagbadge fw-bold">
<p>Step One</p>
</div>
<div>
<h3 class="hwitwrkheading">Upload</h3>
<p class="txt">you can paste, drop, or browse images, photos, pictures, scanned documents, or screenshots from your device. you are allowed bulk image OCR images per queue</p>
</div>
</div>
<div class="col-md col-sm-12">
<div class="stptagbadge fw-bold">
<p>Step Two</p>
</div>
<div>
<h3 class="hwitwrkheading">Validate Queue</h3>
<p class="txt">Your selected input image files will be validated before processing in the bulk upload queue. It's just eye-blink queue validation. Now you can submit for OCR.</p>
</div>
</div>
<div class="col-md col-sm-12">
<div class="stptagbadge fw-bold">
<p>Step Three</p>
</div>
<div>
<h3 class="hwitwrkheading">Output Text</h3>
<p class="txt">All queued images will be processed and scanned for text. After OCR Processing, you will have an output section with action buttons. You can copy, share, translate OCR text, or save it as aWord Document.</p>
</div>
</div>
</div>
</section>
<!-- About Section-->
<section class="py-2" id="features">
<div class="container">
<div class="row justify-content-center">
<div class="col-md-10 col-sm-12">
<div class="mb-5">
<h2 class="fw-bolder"><span class="text-gradient d-inline">Features of AI Image to Text Converter</span></h2>
<p class="lead mb-4">Learn about hidden features of ai image to text converter which helps users to get accurate, reliable, and easy to use interaction.</p>
<p class="m-0">
</p><p>It is very easy to get editable text from images, PDFs, handwritten educational notes, scanned legal documents and circulars, and poor-quality images. it's all possible due to intelligent OCR engines using ML models and AI Vision Models.</p>
<p>It was difficult to change image content or scan PDF documents. Now imgOCR is a single solution for document digitization and processing problems.</p>
<p>This tool will scan subtitles from movie screenshots and social media posts to provide editable text. So you can use that on your social media, posts, status, study material, or everywhere you want to use as a text.</p>
<p>I hope you will trust its accuracy of extracted text and output quality.</p>
<p>Let's Explore its Features Deeply.</p>
<h2>Image To Text AI Segmentation & Optical Recognizing</h2>
<p>imgOCR uses <a title="image segmentation ML Model" href="https://colab.research.google.com/github/tensorflow/docs/blob/master/site/en/tutorials/images/segmentation.ipynb" target="_blank" rel="nofollow noopener">Image Segmentation</a> to enhance the accuracy of image scanning and reading correctly as well as poor visibility areas of the picture. A Pre-Trained Tensorflow Model for better image reading and binary segmentation which helps to improve OCR Output quality.</p>
<p>For OCR lanugage based detection is carried out by intelligent powers of the <a title="OCR Engine by Tesseract" href="https://github.com/tesseract-ocr/tesseract" target="_blank" rel="nofollow noopener">Tesseract OCR</a> engine. It is trained using Image segmented binary data for Machine learning and dataset analysis. The TensorFlow optical image scanning model is useful to generate optimized and accurate output for image OCR with less error probability.</p>
<h3>Poor and Rough Photos</h3>
<p>Our <a title="convert photo to text using ocr" href="https://www.imgocr.com/en/photo-to-text" target="_blank" rel="noopener">photo to text converter</a> also supports poor-quality, blurry, and rough image OCR scanning. It detects rough areas where OCR's accuracy is about to drop, or hard to find a character. It will pre-process them to generate the best possible characters to make an accurate output flow. So you might face some delay with some photo processing due to optimization and pre-processing.</p>
<h3>Rotated and Tilt Image OCR</h3>
<p>Sometimes users don't care about the camera's orientation, or the target area to capture is not straight in the view. So in this case you can trust the powers of AI to interpret images for better Optical Character identification. It auto-corrects orientation and tilt edge issues in the picture's content to get the best possible accurate output.</p>
<h3>Aesthetic and Stylish font detection</h3>
<p>If you upload an image that contains a stylish font family, it will be accurately scanned and <a title="5 methods to convert image into text" href="https://www.imgocr.com/blog/5-creative-image-to-text-conversion-ways">converted into editable text</a>. Our AI photo reader understands various font families, which are not commonly used in daily routines. You especially noticed the aesthetic text on gift cards, invitation cards, and brochures.</p>
<h3>Handwritten Notes</h3>
<p>Students usually make notes in their classroom using pen and paper (handwritten). It's always hard to rewrite all content in Microsoft Word documents to <a title="digitalize hand written notes into word doc" href="https://www.imgocr.com/blog/ocr-ai-online-document-processing" target="_blank" rel="noopener">digitalize their handwritten notes</a>. Because digital documents are easy to share and backup. So extracting text from images using AI will trace handwritten content and make a digitalized document.</p>
<h4>Why are Handwriting Styles Not Detectable by OCR?</h4>
<p>According to OCR accuracy concerns, most users reported issues about handwritten samples not being correctly interpreted by the AI Optical Image Processing Engine. Some of them had committed common mistakes, Let me list them down:</p>
<h5>Handwriting Style Image Common Mistakes</h5>
<ul>
<li>Incomplete letters</li>
<li>Poor handwriting</li>
<li>Not much contrast between paper and ink</li>
<li>Unknown and confusing letters</li>
<li>Mixed letters without word break</li>
<li>Letters hidden with notebook page curls</li>
</ul>
<p>Image interpreting using AI is still machine processing, so you need to make it accurate by providing more clear and accurate input for digitizing content. So you are encouraged to avoid these common mistakes to enhance your accuracy chances.</p>
<h3>Old pages and Manuscripts</h3>
<p>when you find old images and manuscripts from your briefcase a decade ago you have written or received. You can digitalize them by taking photos from your phone's camera and uploading them on imgOCR to <a title="How to convert image to text microsoft word?" href="https://www.imgocr.com/blog/ai-image-editable-word-document-convert" target="_blank" rel="noopener">extract text from photos using AI</a>,</p>
<h3>Image Translate in Any Language</h3>
<p>A stunning feature has been added. Now you can <strong>use <a title="ai Photo translator" href="https://www.imgocr.com/en/image-translator" target="_blank" rel="noopener">Photo Translator</a></strong> to get text from photos and translate editable extracted text into 90+ languages with few clicks or taps.</p>
<ul>
<li>After getting output from the image your text will be able to be translated into other languages</li>
<li>Just Tap on the "<strong>Translate</strong>" button it will open a "<strong>Translate Manager</strong>" popup</li>
<li>Choose a language from the Dropdown and Press '<strong>Translate'</strong></li>
<li>You Will get Translated Output Ready To <strong>Copy </strong>with a Single Tap</li>
</ul>
<p><img style="display: block; margin-left: auto; margin-right: auto;" src="https://imgocr.com/uploads/translate-image-to-text-ocr-step1-1696960239.webp" alt="translate image to text ocr step1" width="285" height="171" loading="lazy"></p>
<p>This is how the Translate button will appear below the extracted text output as target text. You can Start <strong>Translation Manager</strong> by pressing this button.</p>
<p>now inside <strong>Translation Manager, </strong>you will see the target language dropdown where you can select the language to get translated output.</p>
<p>Once you press the "<strong>Translate</strong>" button you will get "<strong>Translated Text"</strong> Now you can copy that translated text and paste it anywhere else. 👍</p>
<p></p>
</div>
</div>
</div>
<!-- Skillset Card-->
<div class="row justify-content-center">
<div class="col-md-10 col-sm-12">
<!-- Features-->
<div class="mb-3">
<div class="d-flex align-items-center mb-2">
<h3 class="fw-bolder mb-0"><span class="text-gradient d-inline">Ensure Accuracy</span></h3>
</div>
<div class="row">
<div class="col">
<p>Image To Text AI ensures the accuracy of characters scanned from source image segments. It generates output based on lossless OCR processing. Binary segmentation is compiled into accurate possible character output in readable sentences.</p>
</div>
</div>
</div>
<!-- feature -->
<div class="mb-3">
<div class="d-flex align-items-center mb-2">
<h3 class="fw-bolder mb-0"><span class="text-gradient d-inline">Devices Support</span></h3>
</div>
<div class="row">
<div class="col">
<p>You can use imgOCR on any device you have without installation. it works on laptops, PC, iPhones, MAC, tablets, Android, and desktop devices without any platform restriction. You need a browser to access image to text converter tool.</p>
</div>
</div>
</div>
<!-- feature -->
<div class="mb-3">
<div class="d-flex align-items-center mb-2">
<h3 class="fw-bolder mb-0"><span class="text-gradient d-inline">Easy Flexible Interface</span></h3>
</div>
<div class="row">
<div class="col">
<p>It is an effortless, flexible, and user-friendly interface for everyone. imgOCR provides API access for only registered users to integrate seamless OCR processing in their applications.</p>
</div>
</div>
</div>
<!-- feature -->
<div class="mb-3">
<div class="d-flex align-items-center mb-2">
<h3 class="fw-bolder mb-0"><span class="text-gradient d-inline">Output Options</span></h3>
</div>
<div class="row">
<div class="col">
<p>Once the selected queue is processed you get the Output panel. You will have different output options like extracted Text translation, Copy paste, Sharing on Social media apps, saving as notepad file, or saving as Microsoft Word Doc</p>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- About Section-->
<section class="card py-2" id="features">
<div class="container">
<div class="row justify-content-center">
<div class="col-md-10">
<div class="my-5">
<h2 class="fw-bolder text-center"><span class="text-gradient d-inline">Uses of Image to Text AI Converter</span></h2>
<p class="lead text-center mb-4">Text scanner AI converts images into text, that helps in daily life use cases. It increases productivity of officers, students, bankers, managers, marketers and social media managers. Let's discuss possible areas where image to text converter Intelligence is used seamlessly.</p>
<p class="text-muted">
</p><p>Your bookshelf includes hardcopy books, handwritten notes, manuscripts, and notebooks. Your phone storage might be filled with many images taken from the Internet or captured from mobile devices, which contain text but are not editable.</p>
<p><strong>Don't Worry!</strong></p>
<p>Now, using imgOCR's advanced processing you can take pictures and <a title="jpeg to word document editable text" href="https://www.imgocr.com/en/jpg-to-word" target="_blank" rel="noopener">convert JPEG into digital editable text</a> with accuracy and proficiency.</p>
<h3>Extracting AI Prompts from Video Content</h3>
<p>In the digital era of Artificial intelligence, you might see Facebook reels, YouTube shorts, or TikTok video content where creators show you some ChatGPT or Generative AI like Google Bard prompts, which are not mentioned in the video's description or caption. You might also be unable to select and copy text from the video caption or description (in case it is mentioned).</p>
<p>The solution is simple, You can take a screenshot of that video part when prompt text is visible in the video. Save it as a picture in your device and upload it to get a prompt text extracted from the photo screenshot.</p>
<h3>Extract Comics Text and Translate</h3>
<p>Many people like to read and enjoy comics but mostly Chinese and Korean comics are interesting. So they always have a problem understanding or reading other language texts. Using Our Image OCR converter this problem is resolved. Now you all have to capture comic images or screenshots to upload on this tool to get its translated text in your language.</p>
<h3>SMS</h3>
<p>Sometimes you might like a good quote or a post on your social media and you take a screenshot. But here problem is you are not able to send images into SMS. Now the <strong>Problem is Resolved</strong> just convert the SMS picture to text with ImgOCR and share editable output text via the SMS application.</p>
<h3>Facebook and X-Twitter Post Caption</h3>
<p>When you <strong>designed</strong> a post using an image editor and posted it on Facebook or Twitter, you forgot to back up its source. You face trouble reusing text as a caption. As a Solution, take a screenshot of your target text from Facebook or Twitter and convert the screenshot into editable text. Finally, you can copy output and paste it to make a <strong>new post or use it as caption text</strong>.</p>
<h3>Messenger Chat</h3>
<p>You might had screenshots of chats about personal and business discussions. You can also extract text from chat screenshots without leaking or exposing your confidential messages on our server. OCR processing on this picture to text converter is highly protective during transit and conversion as well. Our image processing engine is highly encrypted and instantly removes residual files after being output generated.</p>
<h3>WhatsApp Status</h3>
<p>Image and video statuses take some time to load on a poor network. Many users prioritize text <strong>status on WhatsApp</strong>. because it loads faster. So you can <a title="Learn in detail to copy text from WhatsApp" href="https://www.imgocr.com/blog/65b0e5ca35163-copy-text-from-whatsapp-status" target="_blank" rel="noopener">copy text from WhatsApp status easily</a>. After getting the output text you will able to repost it on your status or send it as a message to others.</p>
<h3>Instagram Story & Reels</h3>
<p>If you are an Instagram <strong>Content creator</strong> you can create your own stories and Reels using Text from other creators' images. </p>
<ol>
<li>Take a Screenshot of a post you like on another creator's profile.</li>
<li>upload to the Drop area of OCR Image converter</li>
<li>after "<em>Submit</em>" and AI processing you will get Extracted text.</li>
<li>Copy your result text or directly share on Insta Story from the "<em>Share</em>" Button</li>
</ol>
<h3>Assignment Document</h3>
<p>If you are a <strong>student</strong>, you might find informational and educational content in lecture notes videos, YouTube videos, Social media Image posts, and PowerPoint slide images. Directly you can't use this<strong> non-editable content</strong> in your <strong>homework assignments</strong>.</p>
<p>You can simply pause the video and take a screenshot. upload that <a title="edit screenshot text online" href="https://www.imgocr.com/blog/edit-screenshot-text-online" target="_blank" rel="noopener">screenshot to extract its text</a>. Finally, save the output as MS Word Document. Now you have editable Text you can use in your digital Assignments.</p>
<h3>Email Copywriting</h3>
<p>If you are a <strong>digital marketer</strong>, you might have to post some text data but you have an Infographic PDF which is not editable. No Problem!<br>Now you can also <a title="editable pdf to word docx" href="https://www.imgocr.com/en/pdf-to-word" target="_blank" rel="noopener">Convert PDF to Word Document</a> and get an editable version of PDF in Word Docx Document to enhance your business outreach email copywriting.</p>
<h3>Programming Code</h3>
<p>if you are a <strong>developer</strong> and seeking help from YouTube or other development courses where you want to replicate a code visible in the source video. You can use the snipping tool to make a screenshot and upload it to extract programming code from the image.</p>
<h3>Study Notes</h3>
<p>If you are a <strong>researcher</strong>, you come across a lot of study material in books, research papers, and media papers for general, political, scientific, linguistics, and other knowledge domain sources. You capture images from your phone and upload them to extract text from camera photos. Converted text will be editable and usable for your <strong>research study notes</strong>.</p>
<h3>Billing, Invoice, and Receipt</h3>
<p>If you are a <strong>business owner</strong>, you might have many PDF attachments in your emails, or day book register ledger records you want to make editable in Word document. You can upload an image or PDF of your <strong>billing invoice or receipt</strong> to extract text from it and save it as a Word document.</p>
<h2 style="text-align: left;"><strong>How to be more productive using imgOCR?</strong></h2>
<p>In the digital era, visual content exponentially got popularity, because people pick someone else most liked content and edit it in their way.</p>
<p>It's normal to pick someone else's content you liked most and make creative changes to post it for your audience. But in visual content, you have a single option to make it editable from images like screenshots.</p>
<p>You take screenshots, Extract text content from images, and edit with your idea to post among your targeted community or social media audience.</p>
<p><strong>Our Online Free OCR converter</strong> will help you in the following effective ways:</p>
<ol>
<li>it helps you to <strong>Remove physical files</strong> from your office table which takes up a lot of space, by digitizing them in editable documents.</li>
<li>It will make more room for your other <strong>productive equipment</strong> in the office to improve progress and quality of work.</li>
<li>If you find a content idea from someone else that you like, you can copy it into a Word document and add your own creative touch to make it unique!</li>
</ol>
<p>In short, text extraction from images is a great universal tool that saves valuable time for other productive tasks. It reduces errors when digitizing documents and increases accuracy, helping you spend less time on manual editing.</p>
<p></p>
</div>
</div>
</div>
</div>
</section>
<!-- Blog Section -->
<section class="pt-5" id="blog">
<div class="container px-5 mb-5">
<div class="text-center mb-5">
<h2 class="fw-bolder mb-0"><span class="text-gradient d-inline">Blog</span></h2>
</div>
<div class="row justify-content-center gap-3">
<article class="col-md-3">
<div class="card overflow-hidden shadow rounded-4 border-0">
<div class="card-body p-0">
<div class="row align-items-center">
<a href="https://www.imgocr.com/blog/how-to-extract-text-from-image" title="How to extract text from image? A Detailed Guide for Everyone">
<img loading="lazy" height="165px" width="290px" class="img-fluid" src="https://www.imgocr.com/blog-uploads/thumb/how-to-extract-text-from-image-a-detailed-guide-for-everyone-1730296470.webp" alt="title text How to extract text from image? A Detailed Guide for Everyone blog with icon">
<h3 class="px-3 h6 mt-2 text-dark">How to extract text from image? A Detailed Guide for Everyone</h3>
</a>
</div>
</div>
</div>
</article>
<article class="col-md-3">
<div class="card overflow-hidden shadow rounded-4 border-0">
<div class="card-body p-0">
<div class="row align-items-center">
<a href="https://www.imgocr.com/blog/5-creative-image-to-text-conversion-ways" title="5 Creative Image to Text Conversion Ways in Everyday Life">
<img loading="lazy" height="165px" width="290px" class="img-fluid" src="https://www.imgocr.com/blog-uploads/thumb/5-creative-image-to-text-conversion-ways-in-everyday-life-1719993776.webp" alt="title text 5 Creative Image to Text Conversion Ways in Everyday Life blog with icon">
<h3 class="px-3 h6 mt-2 text-dark">5 Creative Image to Text Conversion Ways in Everyday Life</h3>
</a>
</div>
</div>
</div>
</article>
<article class="col-md-3">
<div class="card overflow-hidden shadow rounded-4 border-0">
<div class="card-body p-0">
<div class="row align-items-center">
<a href="https://www.imgocr.com/blog/how-to-copy-text-from-image" title="How to Copy Text from Image? A Boss Mode OCR Guide">
<img loading="lazy" height="165px" width="290px" class="img-fluid" src="https://www.imgocr.com/blog-uploads/thumb/how-to-copy-text-from-image-a-boss-mode-ocr-guide-1716372312.webp" alt="title text How to Copy Text from Image? A Boss Mode OCR Guide blog with icon">
<h3 class="px-3 h6 mt-2 text-dark">How to Copy Text from Image? A Boss Mode OCR Guide</h3>
</a>
</div>
</div>
</div>
</article>
<article class="col-md-3">
<div class="card overflow-hidden shadow rounded-4 border-0">
<div class="card-body p-0">
<div class="row align-items-center">
<a href="https://www.imgocr.com/blog/image-text-extractor-detailed-guide" title="How Image Text Extractor helpful for Students and Businesses?">
<img loading="lazy" height="165px" width="290px" class="img-fluid" src="https://www.imgocr.com/blog-uploads/thumb/image-text-extractor-a-deep-analysis-guide-for-students-business-1710162690.webp" alt="title text How Image Text Extractor helpful for Students and Businesses? blog with icon">
<h3 class="px-3 h6 mt-2 text-dark">How Image Text Extractor helpful for Students and Businesses?</h3>
</a>
</div>
</div>
</div>
</article>
</div>
</div>
</section>
<!-- Faq -->
<section class="py-2" id="faqs">
<div class="container">
<!-- Contact form-->
<div class="rounded-4 py-5">
<div class="text-center mb-5">
<h2 class="fw-bolder">Frequently Asked Questions</h2>
<p class="lead fw-normal mb-0">Common queries by users to understand better online OCR Processing and editable image text converters</p>
</div>
<div class="row">
<div class="col-md-12">
<ol class="p-3 m-0"> <li> <strong>Can I translate extracted text into other languages?</strong> <p> ImgOCR tool not only extracts text but also provides translation features that allow you to translate the extracted content into your desired language. </p> </li> <li> <strong>How do I use an image text extractor?</strong> <p> To use imgOCR text extractor, simply upload your image file (in formats like JPG, or PNG) to the tool. The converter will process the image and provide you with the extracted text, which you can then copy or save. </p> </li> <li> <strong>How does online OCR work?</strong> <p> Online ImgOCR tool analyzes an image's visual data, identifies patterns corresponding to letters and words, and converts them into machine-readable text. This process typically involves pre-processing the image, detecting text regions, recognizing characters, and finally extracting the text. </p> </li> <li> <strong>Can I extract text from low-resolution images?</strong> <p> Yes, many modern image to text converters like ImgOCR, are designed to handle low-resolution images and can still extract text with high accuracy, making them useful for various applications like scanning notes or documents. </p> </li> </ol>
</div>
</div>
</div>
</div>
</section>
<!-- The Modal -->
<div class="modal" id="mytransModal">
<div class="modal-dialog">
<div class="modal-content">
<!-- Modal Header -->
<div class="modal-header">
<h4 class="modal-title">Translation Manager</h4>
<button type="button" class="btn-close" data-bs-dismiss="modal" onclick="closeModal('#mytransModal')"></button>
</div>
<!-- Modal body -->
<div class="modal-body" id="trnsoutput">
<div class="d-flex flex-column">
<label class="text-center">
--- Target Text ---
<textarea class="form-control" rows="5" title="target content to translate" readonly=""></textarea>
</label>
<div class="d-flex justify-content-center align-items-center mt-2 gap-3">
<select id="target_lang" class="p-2" title="target language id to translate"></select>
<button class="btn btn-dark" id="tactionbtn">Translate</button>
</div>
<div class="mt-3 mx-auto w-100 text-center"></div>
</div>
</div>
<!-- Modal footer -->
<div class="modal-footer">
<button type="button" class="btn btn-danger" onclick="copyTextFromId(this,'#trsotp')"><i class="bi bi-clipboard"></i></button>
</div>
</div>
</div>
</div>
<!-- Footer-->
<footer>
<div class="container d-flex justify-content-between align-items-start text-justify">
<div>
<big>Quick Links</big>
<ul>
<li><a title="image to text converter api by imgocr" href="https://www.imgocr.com/p/api">API Documentation</a></li>
<li><a href="https://www.imgocr.com/p/privacy-policy">Privacy Policy</a></li>
<li><a href="https://www.imgocr.com/p/refund-policy">Refund Policy</a></li>
<li><a href="https://www.imgocr.com/p/terms-and-conditions">Terms of Service</a></li>
<li><a href="https://www.imgocr.com/p/contact-us">Contact Us</a></li>
</ul>
</div>
<div>
<big>Archive</big>
<ul>
<li><a href="https://www.imgocr.com/blog">Blog</a></li>
<li><a href="https://www.imgocr.com/p/change-log-updates">Changelog Updates</a></li>
</ul>
</div>
<div>
<big>Social Links</big>
<ul>
<li><a href="https://www.facebook.com/imgocr" target="_blank">Facebook</a></li>
<li><a href="https://www.linkedin.com/showcase/image-to-text-imgocr/" target="_blank">Linkedin</a></li>
<li><a href="https://t.me/imgocr_com" target="_blank">Telegram Channel</a></li>
</ul>
</div>
</div>
<div class="container p-0 mt-5 mb-3 w-100 text-center">
<p>Copyright © 2023 - Crafted by <a class="text-white" href="https://www.imgocr.com">ImgOCR.com</a></p>
</div>
</footer>
<style>
footer{padding:20px 0;background-color:#222;color:#fff}.text-justify{text-align:justify}footer a:link,footer a:active,footer a:visited{color:orange}footer big{font-size:22px;font-weight:700}footer p,footer ul{padding:0;margin:0}footer p{font-size:14px}footer li{list-style:none}footer li::before{content:"\2666";margin-right:5px}@media(max-width: 992px){footer>div{flex-direction:column;text-align:center;row-gap:20px}}
</style> <div id="scrollToTopBtn"> <svg viewBox="0 0 36 36" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--twemoji" preserveAspectRatio="xMidYMid meet"><path fill="#fff" d="M25.711 10.867L18.779.652c-.602-.885-1.558-.867-2.127.037l-6.39 10.141c-.569.904-.181 1.644.865 1.644H13V16a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2v-3.525h1.898c1.047 0 1.414-.723.813-1.608zM3.651 23.575H1.438c-.975 0-1.381-.712-1.381-1.401c0-.71.508-1.399 1.381-1.399h7.469c.874 0 1.381.689 1.381 1.399c0 .69-.406 1.401-1.381 1.401H6.696v10.189c0 1.016-.649 1.584-1.522 1.584s-1.522-.568-1.522-1.584V23.575zM10.396 28c0-4.222 2.841-7.471 6.982-7.471c4.079 0 6.983 3.351 6.983 7.471c0 4.201-2.821 7.471-6.983 7.471c-4.121 0-6.982-3.27-6.982-7.471zm10.798 0c0-2.456-1.279-4.67-3.816-4.67s-3.816 2.214-3.816 4.67c0 2.476 1.239 4.668 3.816 4.668c2.578 0 3.816-2.192 3.816-4.668zm4.433-5.644c0-.954.569-1.582 1.585-1.582h3.591c2.985 0 5.197 1.947 5.197 4.851c0 2.963-2.293 4.811-5.074 4.811h-2.253v3.329c0 1.016-.649 1.584-1.521 1.584c-.874 0-1.524-.568-1.524-1.584V22.356zm3.046 5.4h2.071c1.277 0 2.089-.934 2.089-2.151c0-1.219-.812-2.152-2.089-2.152h-2.071v4.303z"></path></svg> </div>
<script> window.addEventListener('scroll', function() { var scrollToTopBtn = document.getElementById('scrollToTopBtn'); if (document.body.scrollTop > 320 || document.documentElement.scrollTop > 320) { scrollToTopBtn.style.display = 'flex'; } else { scrollToTopBtn.style.display = 'none'; } }); document.getElementById('scrollToTopBtn').addEventListener('click', function() { document.body.scrollTop = 0; document.documentElement.scrollTop = 0; }); var isSafeCssLoad = false; document.addEventListener('touchstart', quickSafeloadFiles); document.addEventListener('mouseenter', quickSafeloadFiles); document.addEventListener('mouseover', quickSafeloadFiles); function quickSafeloadFiles(){ if (!isSafeCssLoad) { ['https://cdn.jsdelivr.net/npm/[email protected]/font/bootstrap-icons.css' ].forEach( function(item, i) { var style = document.createElement("link"); style.setAttribute('href', item); style.setAttribute('rel', 'stylesheet'); document.body.appendChild(style); } ); [ 'https://www.imgocr.com/tool_assets/new-scripts.js', 'https://www.googletagmanager.com/gtag/js?id=G-1RS5K86EGE' ].forEach( function(item, i) { var script = document.createElement("script"); script.setAttribute('src', item); document.body.appendChild(script); } ); isSafeCssLoad = true; } }
</script>
<style> #subscriber_list_popup{ display:none;position:fixed;top:0;left:0;width:100%;height:100%;background: #4449;z-index:9999;align-items:center;justify-content:center;} .triggerbtn{position:fixed;bottom:5px;left:5px;} .nlclosebtn{position:absolute;top:5px;right:10px;cursor:pointer;font-size: 18px;} @media (max-width: 992px){ #subscriber_list_popup .card-content{padding: 0 20px;} .nlclosebtn{top: -10px;right: 5px;} }</style>
<button onclick="document.querySelector('#subscriber_list_popup').style.display='flex';" class="btn btn-dark triggerbtn" aria-label="feedback button"><i class="text-warning">⭐</i></button>
<div id="subscriber_list_popup">
<div class="card col-md-5">
<div class="card-header position-relative">
<h4 class="text-gradient text-center">⭐ Rate Your Experience</h4>
<span class="nlclosebtn" onclick="document.querySelector('#subscriber_list_popup').style.display='none';">×</span>
</div>
<div class="card-content my-4">
<form id="feedbackformpop" class="col-md-8 mx-auto" method="post" action="https://www.imgocr.com/tgcontact">
<input type="hidden" name="_token" value="GXGVI8wwRfXmd6zJNN5u0B42AZgLo0bpQ5wkBqYQ">
<div class="input-group align-items-center mb-1">
<label>Choose Ratings: </label>
<select name="_rating" required="">
<option value="1 star">⭐</option>
<option value="2 star">⭐⭐</option>
<option value="3 star" selected="">⭐⭐⭐</option>
<option value="4 star">⭐⭐⭐⭐</option>
<option value="5 star">⭐⭐⭐⭐⭐</option>
</select>
</div>
<input type="text" name="bot_name" style="display: none;">
<input type="text" name="name" class="form-control mb-1" placeholder="Enter Your Good Name">
<textarea name="msg" onfocus="loadGeoData()" rows="4" class="form-control mb-1" placeholder="Enter Your message for webmaster"></textarea>
<input type="email" name="mail" placeholder="Enter your E-Mail" required="" class="form-control">
<button class="btn btn-primary mt-3" id="feedbacksubmitbtn">Submit</button>
</form>
</div>
<div class="card-footer text-center">
<sub>Your Reviews are Valuable for our improvement.</sub>
</div>
</div>
</div>
<script> function loadGeoData() { const e = new XMLHttpRequest;e.onload = function() {4 == e.readyState && 200 == e.status && (document.getElementById("_geo_data").value = this.responseText)}, e.open("GET","https://api.ipgeolocation.io/ipgeo?apiKey=f56918ccce9d46f5a2ac406e65e48d8f&fields=city,state_prov,country_name,latitude,longitude,isp"), e.send()} </script>
<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "FAQPage", "mainEntity": [ { "@type": "Question", "name": "Can I translate extracted text into other languages?", "acceptedAnswer": { "@type": "Answer", "text": "ImgOCR tool not only extracts text but also provides translation features that allow you to translate the extracted content into your desired language." } } , { "@type": "Question", "name": "How do I use an image text extractor?", "acceptedAnswer": { "@type": "Answer", "text": "To use imgOCR text extractor, simply upload your image file (in formats like JPG, or PNG) to the tool. The converter will process the image and provide you with the extracted text, which you can then copy or save." } } , { "@type": "Question", "name": "How does online OCR work?", "acceptedAnswer": { "@type": "Answer", "text": "Online ImgOCR tool analyzes an image's visual data, identifies patterns corresponding to letters and words, and converts them into machine-readable text. This process typically involves pre-processing the image, detecting text regions, recognizing characters, and finally extracting the text." } } , { "@type": "Question", "name": "Can I extract text from low-resolution images?", "acceptedAnswer": { "@type": "Answer", "text": "Yes, many modern image to text converters like ImgOCR, are designed to handle low-resolution images and can still extract text with high accuracy, making them useful for various applications like scanning notes or documents." } } ] } </script>
<script>
var globallimitHit = 5; let imageBinQueue = [];
const sizeOf = function(bytes) {
if (bytes == 0) {
return "0.00 B";
}
var e = Math.floor(Math.log(bytes) / Math.log(1024));
return (bytes / Math.pow(1024, e)).toFixed(2) + ' ' + ' KMGTP'.charAt(e) + 'B';
}
const checkRealImage = (base64Data, callback) => {
var img = new Image();
img.onload = function() {
callback(true, base64Data);
};
img.onerror = function() {
callback(false, base64Data);
};
img.src = base64Data;
}
function dropHandler(event) {
event.preventDefault();
const fileList = event.dataTransfer.files;
handleFiles(fileList);
}
function closeModal(tarid){
document.querySelector(tarid).style.display = 'none';
}
function dragOverHandler(event) {
event.preventDefault();
event.dataTransfer.dropEffect = 'copy';
document.querySelector('#drop-area').classList.add('highlight');
}
function dragEnterHandler(event) {
event.preventDefault();
document.querySelector('#drop-area').classList.add('highlight');
}
function dragLeaveHandler(event) {
event.preventDefault();
document.querySelector('#drop-area').classList.remove('highlight');
}
function handleFiles(files) {
const fileListElement = document.querySelector('#file-list');
// Convert the FileList to an array and use a for loop to iterate
const filesArray = Array.from(files);
let isLimitHit = false; // Flag to track if the limit has been hit
for (let i = 0; i < filesArray.length; i++) {
const file = filesArray[i];
if (!file || isLimitHit) {
break; // Break the loop if the limit is hit or no file is present
}
let reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = async (e) => {
let base64 = e.target.result;
checkRealImage(base64, function(isImage, dataimg) {
if (isImage) {
let queueIndexCur = imageBinQueue.length;
// Check if the limit of 5 images is reached
if (queueIndexCur >= globallimitHit) {
if (!isLimitHit) {
alert("Only "+globallimitHit+" Images per queue is allowed");
isLimitHit = true; // Set flag to true to prevent further additions
}
return; // Return early to avoid adding more images
}
// Create the HTML element for the file preview
var htmlItemImg = '<li class="file-preview" data-queue_index="' + queueIndexCur + '" data-img_name="' + file.name.replace(/(?:\.[^.]+)?$/, '') + '"><div class="d-flex col-gap"><img src="' + dataimg + '" alt="' + file.name + '">';
htmlItemImg += '<div><p>' + file.name + '</p><tt>' + sizeOf(file.size) + '</tt></div></div><span class="remove_image" onclick="removeThis(this)">×</span></li>';
// Add the new HTML to the file list
fileListElement.innerHTML += htmlItemImg;
// Make sure the file list is visible
if (fileListElement.style.display == '') {
fileListElement.style.display = 'flex';
}
// Remove highlight from drop area
document.querySelector('#drop-area').classList.remove('highlight');
// Add the image to the queue
let fileObject = {
file: file,
index: queueIndexCur
};
imageBinQueue.push(fileObject);
} else {
alert('Upload Valid Image');
}
});
};
}
// Reset the file input
document.querySelector('#fileInput').value = "";
}
function removeThis(el) {
el.parentElement.remove();
if (document.querySelectorAll('#file-list li').length <= 0) {
document.querySelector('#file-list').style.display = '';
}
//reset input
document.querySelector('#fileInput').value = "";
//get index of current element
let index = $(el).parent().data('queue_index');
imageBinQueue.splice(index, 1);
}
document.addEventListener('DOMContentLoaded', function() {
// Prevent duplicate submissions
if (window.history.replaceState) {
window.history.replaceState(null, null, window.location.href);
}
// Disable double submission
document.querySelector('#feedbackformpop').addEventListener('submit', function() {
document.querySelector('#feedbacksubmitbtn').disabled = true;
});
// Paste to upload image
document.addEventListener('paste', function(e) {
var items = e.clipboardData.items;
if (items.length > 0 && items[0].type.indexOf("image") !== -1) {
var blob = items[0].getAsFile();
handleFiles([blob]);
}
});
// Start over button click event
let returnbtn = document.querySelector('#startoverbtn');
if(returnbtn != null){
returnbtn.addEventListener('click', function() {
window.location.href = 'https://www.imgocr.com';
});
}
// Translation script
document.querySelector('#tactionbtn').addEventListener('click', function() {
var langg = document.querySelector('#target_lang').value;
var txttag = document.querySelector('#trnsoutput > div > label > textarea').value;
var loadingel = '<div class="spinner-grow text-dark" role="status"><span class="sr-only"></span></div>';
document.querySelector('#trnsoutput > div > div:last-child').innerHTML = loadingel;
fetch('/api/translate', {
method: "POST",
headers: {
'Content-Type': 'application/json',
'X-CSRF-TOKEN': document.querySelector('meta[name="csrf-token"]').getAttribute('content')
},
body: JSON.stringify({ lang: langg, txt: txttag })
})
.then(response => response.json())
.then(dat => {
if (dat.status === 'success') {
document.querySelector('#mytransModal .modal-footer').style.display = 'block';
document.querySelector('#trnsoutput > div > div:last-child').innerHTML =
`<label id="trsotp" class="w-100">--- Translated Text ---<textarea title="translated output" rows="5" class="form-control" readonly>${dat.translatedText}</textarea></label>`;
} else {
alert(dat.message);
}
});
});
// File input change event
document.querySelector('#fileInput').addEventListener('change', function() {
handleFiles(this.files);
});
// Drop area click event
document.querySelector('#drop-area').addEventListener('click', function() {
document.querySelector('#fileInput').click();
});
// Auto submission URLs
document.querySelector('#submit_processor').addEventListener('click', function() {
if (document.querySelectorAll('#file-list li').length <= 0) {
alert("Oopss..!\nAdd Images In queue before submit!");
return false;
}
document.querySelector('#main_uploader').style.display = 'none';
window.scrollTo({
top: document.querySelector('#_output_results').offsetTop + 250,
behavior: 'smooth'
});
var outputResults = document.querySelector('#_output_results');
outputResults.style.display = 'flex';
outputResults.innerHTML = '<div class="spinner-grow text-dark mx-auto" role="status"><span class="sr-only"></span></div>';
grecaptcha.ready(function() {
grecaptcha.execute('6LcXc8onAAAAAKMa2FSHcOI-nAsGK0WeKohNn0u4', { action: 'ocr_image_to_text' })
.then(function(token) {
sendPing('/api/get_request_token', 'POST', { 'recap_token': token }, function(res) {
if (res.body.status === 'success') {
let aiengine_csrf = res.body.request_auth;
let outputCards = '<span id="startoverbtn" onclick="window.location=window.location.href;"><b>Start Over</b></span>';
document.querySelectorAll('#file-list li').forEach((x, count) => {
const imageUrl = x.querySelector('img').src;
let fileId = x.getAttribute('data-queue_index');
let file_name = x.getAttribute('data-img_name');
if (fileId == count) {
sendPing('/api/get_text', 'POST', { '_req_token': aiengine_csrf, 'imgFile': imageBinQueue[count].file }, function(res) {
const outputTextArea = document.querySelector(`#outputtxt${count} > textarea`);
const spinnerGrow = document.querySelector(`#outputtxt${count} .spinner-grow`);
spinnerGrow.remove();
if (res.body.message === 'success') {
outputTextArea.value = res.body.text;
} else {
outputTextArea.value = res.body.error;
}
const actionButtons = document.querySelectorAll(`#outputtxt${count} ~ .actionbtns > a`);
actionButtons.forEach(btn => btn.style.pointerEvents = 'unset');
});
}
outputCards += `
<div class="d-flex justify-content-between align-items-center output-card">
<div class="imgarea">
<img loading="lazy" style="border:1px dashed #eee;" src="${imageUrl}" height="100px" width="100px">
</div>
<div class="otpcntnarea col-md p-0 my-2" style="position:relative;">
<div class="text-output-holder-load" id="outputtxt${count}">
<textarea rows="5" readonly></textarea>
<div class="spinner-grow text-dark" role="status"><span class="sr-only"></span></div>
</div>
<div class="d-flex justify-content-around text-center actionbtns">
<a href="#" title="translate" onclick="translate_n(event,this,'#outputtxt${count}')"><i class="bi bi-xl bi-translate"></i></a>
<a href="#" title="Copy to Clipboard" onclick="copyTextFromId(event,this,'#outputtxt${count}')"><i class="bi bi-clipboard"></i></a>
<a href="#" title="Share On Socialmedia" onclick="shareWithFriend(event,'#outputtxt${count}')"><i class="bi bi-share"></i></a>
<a href="#" title="Save Notepad File" onclick="exportTxt(event,'#outputtxt${count}','${file_name}')"><i class="bi bi-download"></i></a>
<a href="#" title="Save Word Doc File" onclick="exportDoc(event,'#outputtxt${count}','${file_name}')"><i class="bi bi-cloud-download"></i></a>
</div>
</div>
</div>`;
if (count === 0) {
outputCards += `
<div style="display:flex;justify-content:center;align-items:center;margin:5px auto;">
<div id="ad-placeholder">
<ins class="adsbygoogle" style="display:block;width:300px;height:250px;" data-ad-client="ca-pub-1038752045714760" data-ad-slot="1699411975"></ins>
</div>
</div>`;
}
});
outputResults.innerHTML = outputCards;
const actionLinks = document.querySelectorAll('.actionbtns > a');
actionLinks.forEach(x => x.style.pointerEvents = 'none');
setTimeout(function() {
outputResults.style.display = 'flex';
outputResults.style.opacity = '1';
(adsbygoogle = window.adsbygoogle || []).push({});
}, 100);
}
});
});
});
});
});
function sendPing(url, method, params, callback) {
const xhr = new XMLHttpRequest();
xhr.responseType = 'json';
xhr.onreadystatechange = function() {
if (xhr.readyState === XMLHttpRequest.DONE) {
if (xhr.status === 200) {
callback({
status: xhr.status,
body: xhr.response
});
} else {
callback({
status: xhr.status,
msg: xhr.statusText //HTTP error message
});
}
}
};
//security Token
params['_token'] = document.querySelector('meta[name="csrf-token"]').getAttribute('content');
if (method.toUpperCase() === 'GET') {
//For GET requests, construct the URL with query parameters
const queryString = Object.keys(params)
.map(key => encodeURIComponent(key) + '=' + encodeURIComponent(params[key]))
.join('&');
url = url + '?' + queryString;
xhr.open(method, url, true);
xhr.send();
} else if (method.toUpperCase() === 'POST') {
//For POST requests, send the FormData object
const formData = new FormData();
//Append key-value pairs from the object to the FormData object
for (const key in params) {
formData.append(key, params[key]);
}
xhr.open(method, url, true);
xhr.send(formData);
}
}
///translation popup
function translate_n(event,el, txtel) {
event.preventDefault();
// Hide the modal footer
document.querySelector('#mytransModal .modal-footer').style.display = 'none';
// Clear previous content
document.querySelector('#trnsoutput > div > div:last-child').innerHTML = '';
// Fetch language options
fetch('/api/loadLangOptions')
.then(response => response.text())
.then(dat => {
document.querySelector('#target_lang').innerHTML = dat;
})
.catch(error => console.error('Error loading language options:', error));
// Show the modal
document.querySelector('#mytransModal').style.display = 'block'; // Assuming you're controlling the modal visibility via CSS
// Get the text value from the specified textarea
var textval = document.querySelector(txtel + ' > textarea').value.trim();
// Set the value in the translation output textarea
document.querySelector('#trnsoutput > div > label > textarea').value = textval;
}
function shareWithFriend(event,elid) {
event.preventDefault();
if (navigator.canShare) {
let el = document.querySelector(elid + ' > textarea');
navigator.share({
title: "ImgOCR - Image To Text Converter",
text: el.value + "\n\n Created and shared via https://www.imgocr.com"
}).then(() => {
console.log('Shared successfully');
}).catch((error) => {
console.error('Error sharing:', error);
});
} else {
alert("Web Share API Not Supported, You can Copy text instead.");
}
}
function exportTxt(event,text,fname) {
event.preventDefault();
var pdom = document.createElement('a');
pdom.setAttribute('href','data:application/download;charset=utf-8,' + encodeURIComponent(document.querySelector(text + " > textarea").value));
pdom.setAttribute('download', '[imgocr.com]'+fname+'.txt');
if (document.createEvent) {
var event = document.createEvent('MouseEvents');
event.initEvent('click', true, true);
pdom.dispatchEvent(event);
} else {
pdom.click();
}
}
function exportDoc(event,elementValue,fname) {
event.preventDefault();
var preHtml = "<html xmlns:o='urn:schemas-microsoft-com:office:office' xmlns:w='urn:schemas-microsoft-com:office:word' xmlns='http://www.w3.org/TR/REC-html40'><head><meta charset='utf-8'><title>Export HTML To Doc</title></head><body>";
var postHtml = "</body></html>";
var html = preHtml + document.querySelector(elementValue + " > textarea").value.replace(/(?:\r\n|\r|\n)/g, '<br>') + postHtml;
var blob = new Blob(['\ufeff', html], {
type: 'application/msword'
});
var url = 'data:application/vnd.ms-word;charset=utf-8,' + encodeURIComponent(html);
filename = '[imgocr.com]'+fname+'.doc';
var downloadLink = document.createElement("a");
document.body.appendChild(downloadLink);
if (navigator.msSaveOrOpenBlob) {
navigator.msSaveOrOpenBlob(blob, filename);
} else {
downloadLink.href = url;
downloadLink.download = filename;
downloadLink.click();
}
document.body.removeChild(downloadLink);
}
function copyTextFromId(event,e, el_id, fallbackText = false) {
event.preventDefault();
var copyableText = document.querySelector(el_id + " > textarea").value;
try {
navigator.clipboard.writeText(copyableText)
.then(function() {
// Update button text to "Copied"
e.innerHTML = '<i class="bi bi-clipboard-check"></i>';
// Reset button text after 1.5 seconds
setTimeout(function() {
e.innerHTML = (!fallbackText ? '<i class="bi bi-clipboard"></i>' : fallbackText);
}, 1500);
})
.catch(function(err) {
console.error("Error copying text to clipboard:", err);
});
} catch (ex) {
console.log("Error: " + ex);
}
}
var isrecaptchajsincluded = false; document.addEventListener('touchstart', loadDelayScripts); document.addEventListener('mouseenter', loadDelayScripts); document.addEventListener('mouseover', loadDelayScripts); function loadDelayScripts(event){ if (!isrecaptchajsincluded) { var recaptchaScript = document.createElement("script"); recaptchaScript.setAttribute('src', 'https://www.google.com/recaptcha/api.js?render=6LcXc8onAAAAAKMa2FSHcOI-nAsGK0WeKohNn0u4'); document.body.appendChild(recaptchaScript); isrecaptchajsincluded = true; } }
</script>
<script>
document.addEventListener('DOMContentLoaded', function () {
const buttons = document.querySelectorAll('.accordion-button');
buttons.forEach(button => {
button.addEventListener('click', function () {
const targetId = this.getAttribute('data-bs-target');
const content = document.querySelector(targetId);
// Toggle the active state of the button
this.classList.toggle('active');
// Toggle visibility of the associated content
if (content.style.display === 'block') {
content.style.display = 'none';
} else {
content.style.display = 'block';
}
});
});
let adLoaded = false;
function loadAdScript() {
if (!adLoaded) {
adLoaded = true;
// Create and load the adsbygoogle script element
const script = document.createElement('script');
script.src = "https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-1038752045714760";
script.async = true;
script.crossOrigin = "anonymous";
// Append the script to the body
document.body.appendChild(script);
// Once the script is loaded, initialize all ad containers
script.onload = () => {
(adsbygoogle = window.adsbygoogle || []).push({});
};
}
}
window.addEventListener('mousemove', loadAdScript, { once: true });
window.addEventListener('touchstart', loadAdScript, { once: true });
});
</script>
<script defer=""> document.addEventListener("DOMContentLoaded",()=>{setTimeout(async function(){let e=!1;try{await fetch(new Request("https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js")).catch(()=>{e=!0})}catch(t){e=!0}e&&function(){const e=document.createElement("div");e.innerHTML='<div style="position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.7); display: flex; justify-content: center; align-items: center; z-index: 9999;"><div style="background: #e5e5e5;padding: 20px;text-align: center;max-width: 400px;border-radius: 10px;color: #000;line-height: normal;"> <h2>Ad Blocker Detected</h2> <p>ImgOCR\'s free services rely on ad revenue; you are requested to disable your ad blocker. Thank you!</p><button class="btn btn-primary btn-sm" id="closeAdblockModal">Sure, I Do!</button></div></div>',document.body.appendChild(e),document.getElementById("closeAdblockModal").addEventListener("click",function(){e.remove()})}()},1e3)});</script>
</body></html>