2015-11-05 22 views
6

Python uygulamasında yeniyim ve şu kodu çalıştırmaya çalıştım. Aşağıdaki hata "IOError: cannot open resource" aldı. Bu, bazı Görüntü özelliklerinin daha uzun olmamasından kaynaklanıyor mu (ör. Coval.otf) ya da potansiyel olarak yazma/okuma kısıtlamalarından kaynaklanıyor mu? lütfen bana bildirin - bu sisteminizde mevcut değil, muhtemelenImageFont IO hatası: kaynağı açamıyor

import numpy as np 
from PIL import Image, ImageDraw, ImageFont 
from skimage import transform as tf 

def create_captcha(text, shear=0, size=(100,24)): 
    im = Image.new("L", size, "black") 
    draw = ImageDraw.Draw(im) 
    font = ImageFont.truetype(r"Coval.otf", 22) 
    draw.text((2, 2), text, fill=1, font=font) 
    image = np.array(im) 
    affine_tf = tf.AffineTransform(shear=shear) 
    image = tf.warp(image, affine_tf) 
    return image/image.max() 

%matplotlib inline 
from matplotlib import pyplot as plt 
image = create_captcha("GENE", shear=0.5) 
+0

Hata kümesini gönderir misiniz? –

+0

Eşleşebilecek bir tane oluşturdum: http://pastebin.com/C92Re7iQ. Coval.otf bulunmuyor mu? Ayrıca biraz daha fazla ışık tutabilecek bu kaynağı da buldu: http://tiny.cc/1voo5x. Kurulacak gibi görünüyor. Bu kitap, indirmek için bir bağlantı gösterir. – Newyork167

cevap

7

Coval.otf okunamaz da ondan W, çok teşekkür, bu ImageFont doc belirtilir. Belirli bir yazı tipini aramayı denedim ve numaralı telefona başvurmanın hiçbir yolunu bulamadım. Coval yazı tipini kullanmanız gerekiyorsa, @ NewYork167's link'a bakın.

font = ImageFont.truetype("arial.ttf", 15) 
+8

Mac için, benim için ne çalışıyor? 'Myfont = ImageFont.truetype ('/ Library/Fonts/Arial.ttf', 15)' '. Benim durumumda yazı tipi dosya yolunu belirtmek için gereklidir. – wenlibin02

1

görünüyor:

iki şekilde de, dokümanlar example belirtilen birini kullanmak, sadece sistemde mevcut olan bir yazı tipine çağrıyı değiştirebilir, kendinize yükleme yazı zahmetinden kurtarmak için Gelecek koddaki fontları değiştirmek zorunda kalmadan kaydetmek için buradan Koval'i yükleyebileceğiniz gibi https://fontlibrary.org/en/font/bretan