Quiero crear una imagen de captcha usando convert
ImageMagick.
Y sigo esto , pero hay algún problema.
Entrada en mi shell de Linux:
convert -background white -fill black -font FreeSerif-Bold -pointsize 36 label:'adfgh' ./test.png
El error es:
convertir: no autorizado
adfgh
@ error / constitutivo.c / ReadImage / 453. convertir: falta un nombre de archivo de imagen./test.png
@ error / convert.c / ConvertImageCommand / 3015
My ImageMagick: Versión: 6.7.2-7, lo instalo con yum install ImageMagick
.
No tengo ni idea. ¿Algún consejo por favor?
imagemagick
imagemagick-convert
jianwei
fuente
fuente
policy.xml
. Las opciones de seguridad pueden evitar ellabel:
protocolo.Respuestas:
Utilizo ImageMagick en php (v.7.1) para cortar archivos PDF en imágenes.
Primero obtuve errores como:
Después de algunos cambios
/etc/ImageMagick-6/policy.xml
, empiezo a tener errores como:Mi solución :
En archivo
/etc/ImageMagick-6/policy.xml
(o/etc/ImageMagick/policy.xml
)línea de comentarios
cambio de linea
a
añadir línea
Luego reinicie su servidor web (nginx, apache).
fuente
policy.xml
archivo se actualizó por última vez el 29 de septiembre, pero los problemas surgen hoy. Estoy usando el servidor ubuntu 14.04.5, pero configuré la actualización automática. En apt log, encontré sobre esta actualización:imagemagick-common:amd64 (6.7.7.10-6ubuntu3.12, 6.7.7.10-6ubuntu3.13),
Uso muchas veces el
convert
comando ImageMagic para convertir*.tif
archivos en*.pdf
archivos.No sé por qué, pero hoy comencé a recibir el siguiente error:
Después de emitir el comando:
Después de leer las respuestas anteriores, edité el archivo
/etc/ImageMagick-6/policy.xml
y cambió la línea:
a
Y ahora todo funciona bien.
Tengo "ImageMagick 6.8.9-9 Q16 x86_64 2018-09-28" en "Ubuntu 16.04.5 LTS".
fuente
convert
en PDF.Si todavía está aquí, está intentando editar imágenes sobre las que tiene control total, sabe que son seguras y los usuarios no pueden editarlas.
Hay un
/etc/ImageMagick/policy.xml
archivo que está instalado por yum. No permite casi todo (por seguridad y para proteger su sistema de una sobrecarga de llamadas con ImageMagick).Si obtiene un
ReadImage
error como el anterior, puede cambiar la línea a:lo que debería solucionar el problema.
El archivo tiene un montón de documentación, así que deberías leerlo. Por ejemplo, si necesita más permisos, puede combinarlos como:
... que es preferible a eliminar todas las verificaciones de permisos (es decir, eliminar o comentar la línea).
fuente
poppler
es una alternativa a GhostScript (que seconvert
basa en rasterizar páginas PDF a imágenes)Si alguien necesita hacerlo con un comando después de la instalación, ejecute esto.
fuente
sed -i 's/\(<policy domain="coder" rights=\)"none" \(pattern="PDF" \/>\)/\1"read|write"\2/g' /etc/ImageMagick-6/policy.xml
sudo sed -i '/PDF/s/none/read|write/' /etc/ImageMagick-6/policy.xml
La respuesta con los votos más altos (no tengo suficiente reputación para agregar comentarios allí) sugiere comentar la línea de MVG, pero tenga esto en cuenta:
Y
Fuente
fuente
$convert --version Version: ImageMagick 6.7.7-10 2018-09-28 Q16 http://www.imagemagick.org
Después de una actualización reciente en mi sistema Ubuntu 16.04, también comencé a recibir este error al intentar ejecutar convertir en archivos .ps para convertirlos en archivos PDF.
Esta solución funcionó para mí:
En una ejecución de terminal:
Esto debería abrir el archivo policy.xml en el editor de texto gedit. Si no es así, su imagen mágica podría estar instalada en un lugar diferente. Entonces cambia
a
para líneas PDF, EPS y PS cerca del final del archivo. Guardar y salir, y la magia de la imagen debería funcionar nuevamente.
fuente
Simplemente elimine el archivo /etc/ImageMagick/policy.xml.
fuente
policy-disabled.xml
. Creo que lo restauraré hasta que esté seguro de que se abordan los problemas de seguridadDespués de leer varias sugerencias aquí y combinar las ideas, para mí fueron necesarios los siguientes cambios en /etc/ImageMagick-6/policy.xml:
... rights = "none" no ayudó. ... pattern = "LABEL" no era necesario. Aunque no trabajo con grandes archivos png (solo ~ 1 Mb), también fueron necesarios algunos cambios en los límites de memoria:
(en lugar de 256Mib), y
(en lugar de 128 MB)
fuente
Tuve este error al intentar convertir un pdf a jpg y lo resolví usando este método: sudo vi /etc/ImageMagick*/policy.xml
cambio:
dominio de política = "codificador" derechos = "ninguno" patrón = "PDF"
a:
policy domain = "codificador" derechos = "leer | escribir" patrón = "PDF"
Fuente: http://realtechtalk.com/ImageMagick_Convert_PDF_Not_Authorized-2217-articles
fuente
Si no necesita manejar archivos raster y PDF / PS / EPS a través de la misma herramienta, no afloje la seguridad de ImageMagick.
En cambio, mantenga intacta su defensa en profundidad para sus aplicaciones web, verifique que su Ghostscript haya sido parcheado para todas las
-dSAFER
vulnerabilidades conocidas y luego invoque directamente.-dSAFER
te excluye del modo de compatibilidad heredada "ejecutar Postscript tendrá permiso completo para interactuar con el mundo exterior como un modo de lenguaje de programación completo".-r300
establece el DPI deseado en 300 (el valor predeterminado es 72)-sDEVICE
especifica el formato de salida (consulte la sección Dispositivos del manual para otras opciones).-o
es una abreviatura de-dBATCH -dNOPAUSE -sOutputFile=
Si está renderizando archivos EPS, agréguelos
-dEPSCrop
para que no amplíen su salida al tamaño de página y utilicen-sDEVICE=pngalpha
para obtener fondos transparentes.fuente
-r600 -dDownScaleFactor=4
al crear un archivo con 150 ppp pero mejor suavizado.También tuve el error
error/constitute.c/ReadImage/453
al intentar convertir un eps a un gif con magia de imagen. Probé la solución propuesta por sNICkerssss pero aún tenía errores (aunque diferentes al primero) eerror/constitute.c/ReadImage/412
Lo que resolvió el problema fue ponerloread
en otras entradasfuente