Files
Yuzu-GCA/ocr_fixed.py

49 lines
1.5 KiB
Python

import sys
import io
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
from PIL import Image
img = Image.open(r"D:\Yuzu-GCA\screen_fixed.png")
print(f"Format: {img.format}")
print(f"Size: {img.size}")
print(f"Mode: {img.mode}")
# Try OCR
try:
import pytesseract
text = pytesseract.image_to_string(img, lang='eng+chi_sim')
print("\n=== pytesseract OCR result ===")
print(text)
except ImportError:
print("pytesseract not available")
# Also try Windows OCR
try:
import asyncio
from winsdk.windows.media.ocr import OcrEngine
from winsdk.windows.graphics.imaging import BitmapDecoder, SoftwareBitmap
from winsdk.windows.storage.streams import RandomAccessStreamReference
from winsdk.windows.globalization import Language
import os
async def ocr_windows():
engine = OcrEngine.try_create_from_user_profile_languages()
if not engine:
engine = OcrEngine.try_create_from_language(Language("en"))
path = os.path.abspath(r"D:\Yuzu-GCA\screen_fixed.png")
file_stream = await RandomAccessStreamReference.create_from_file(path).open_read_async()
decoder = await BitmapDecoder.create_async(file_stream)
bitmap = await decoder.get_software_bitmap_async()
result = await engine.recognize_async(bitmap)
print("\n=== Windows OCR result ===")
for line in result.lines:
print(line.text)
asyncio.run(ocr_windows())
except Exception as e:
print(f"Windows OCR failed: {e}")