Estoy trabajando en un tipo de letra, y estoy buscando generar casos de prueba de cómo se renderizan cadenas específicas. ¿Cuál es la forma más sencilla de rasterizar automáticamente muchos archivos de texto diferentes en un mapa de bits?
Respuesta
¿Demasiados anuncios?Añade una cabecera html con selección de fuentes (mediante cp y >>) y luego usaewkhtmltoimage ( https://wkhtmltopdf.org/ ) para generar imágenes a partir de ella. Alternativamente, mira el código fuente y escribe unas 20 líneas de código Qt utilizando el mismo enfoque.
Prueba de concepto en PyQt5:
from PyQt5 import QtCore, QtGui, QtWidgets
app = QtWidgets.QApplication([])
w = QtWidgets.QWidget()
w.setWindowTitle('Textbox to image')
font = QtGui.QFont()
font.setFamily("Herculanum")
font.setBold(True)
textbox = QtWidgets.QTextEdit(w)
textbox.setFont(font)
textbox.resize(280, 40)
textbox.setText("Lorem ipsum dolor sit amet, consetetur sadipscing elitr")
textbox.grab().save("image.png")
Resultado (png):
Así, con la distorsión personalizada es como creé un gran conjunto de datos ML para OCR a partir de fuentes personalizadas.