ImageMagick导致验证码变黑

ImageMagick导致验证码变黑,imagemagick,Imagemagick,我对ImageMagick有问题。我通过自制软件下载了ImageMagick,由于某种原因,验证码显示为黑色 这就是我得到的: 以下是我正在使用的ImageMagick版本: Hamels-MacBook-Air:gitreports HD$ magick -version Version: ImageMagick 7.0.5-4 Q16 x86_64 2017-03-25 http://www.imagemagick.org Copyright: © 1999-2017 ImageMagic

我对ImageMagick有问题。我通过自制软件下载了ImageMagick,由于某种原因,验证码显示为黑色

这就是我得到的:

以下是我正在使用的ImageMagick版本:

Hamels-MacBook-Air:gitreports HD$ magick -version
Version: ImageMagick 7.0.5-4 Q16 x86_64 2017-03-25 http://www.imagemagick.org
Copyright: © 1999-2017 ImageMagick Studio LLC
License: http://www.imagemagick.org/script/license.php
Features: Cipher DPC HDRI Modules
Delegates (built-in): bzlib freetype jng jpeg ltdl lzma png tiff xml zlib
这也是我在控制台中收到的信息:

Started GET "/issue/hd719/Bloc-Jams" for ::1 at 2017-04-25 21:02:29 -0400
Processing by RepositoriesController#repository as HTML
  Parameters: {"username"=>"hd719", "repositoryname"=>"Bloc-Jams"}
  User Load (1.0ms)  SELECT  "users".* FROM "users" WHERE "users"."username" = ? LIMIT 1  [["username", "hd719"]]
  Repository Load (0.3ms)  SELECT  "repositories".* FROM "repositories" INNER JOIN "repositories_users" ON "repositories"."id" = "repositories_users"."repository_id" WHERE "repositories_
users"."user_id" = ? AND "repositories"."name" = ?  ORDER BY name ASC LIMIT 1  [["user_id", 1], ["name", "Bloc-Jams"]]
  CACHE (0.0ms)  SELECT  "users".* FROM "users" WHERE "users"."username" = ? LIMIT 1  [["username", "hd719"]]
  CACHE (0.1ms)  SELECT  "repositories".* FROM "repositories" INNER JOIN "repositories_users" ON "repositories"."id" = "repositories_users"."repository_id" WHERE "repositories_users"."us
er_id" = ? AND "repositories"."name" = ?  ORDER BY name ASC LIMIT 1  [["user_id", 1], ["name", "Bloc-Jams"]]
  SimpleCaptcha::SimpleCaptchaData Load (0.2ms)  SELECT  "simple_captcha_data".* FROM "simple_captcha_data" WHERE "simple_captcha_data"."key" = ?  ORDER BY "simple_captcha_data"."id" ASC
 LIMIT 1  [["key", "438f5570aeba7ef4658ee2505ced9112e7221fa6"]]
   (0.7ms)  begin transaction
  SQL (1.1ms)  UPDATE "simple_captcha_data" SET "value" = ?, "updated_at" = ? WHERE "simple_captcha_data"."id" = ?  [["value", "SJZSRC"], ["updated_at", "2017-04-26 01:02:29.640800"], ["
id", 1]]
   (1.1ms)  commit transaction
  Rendered simple_captcha/_simple_captcha.erb (0.8ms)
  Rendered repositories/repository.html.erb within layouts/application (42.4ms)
  User Load (0.4ms)  SELECT  "users".* FROM "users" WHERE "users"."id" = ? LIMIT 1  [["id", 1]]
Completed 200 OK in 319ms (Views: 258.7ms | ActiveRecord: 4.9ms)


Started GET "/simple_captcha?code=438f5570aeba7ef4658ee2505ced9112e7221fa6&time=1493168549" for ::1 at 2017-04-25 21:02:30 -0400
  SimpleCaptcha::SimpleCaptchaData Load (0.2ms)  SELECT  "simple_captcha_data".* FROM "simple_captcha_data" WHERE "simple_captcha_data"."key" = ?  ORDER BY "simple_captcha_data"."id" ASC
 LIMIT 1  [["key", "438f5570aeba7ef4658ee2505ced9112e7221fa6"]]
  CACHE (0.0ms)  SELECT  "simple_captcha_data".* FROM "simple_captcha_data" WHERE "simple_captcha_data"."key" = ?  ORDER BY "simple_captcha_data"."id" ASC LIMIT 1  [["key", "438f5570aeba
7ef4658ee2505ced9112e7221fa6"]]
我还可以提供所要求的任何其他信息


-谢谢大家!

正如我在评论中所说,@emcconville发布的代码在windows PC上为我工作

它在使用magick时失败了,我怀疑magick(V7)需要不同顺序的操作员,因为它比V6更严格。因此,这在我的电脑上又起了作用:

magick -size 100x28 -background white -gravity Center -fill darkblue -pointsize 22  label:12345 -wave 2x92  -implode 0.2 "E:\Pictures\temp.jpg"
我猜SimpleCapture与V7不兼容;您有可以尝试的V6版本吗?
我使用的是V7版本,但它也内置了旧式V6版本,但可能无法在mac上工作?

您需要添加生成捕获的代码。我猜这些信件背后的透明度不起作用。我不确定,但我认为V7对待透明度的方式与V6不同,代码可能需要更改。或者将字母背景改为白色。嘿@Bonzo你所说的
是什么意思?你需要添加生成捕获的代码
我该怎么做-谢谢。你一定在什么地方写了一些imagemagick代码,或者你正在使用你在网上找到的代码?根据您安装Imagemagick的方式,您可能需要使用magick,而不是在代码中进行转换,正如我所说的,您可能需要更改代码以实现V7透明性。捕获可能是黑色的,因为字母背景不透明。我认为这是由生成的。默认设置将生成以下命令:
convert-fill darkblue-background white-size 100x28-wave 2x92-gravity Center-pointsize 22-intlode 0.2 label:12345 temp.jpg
来自@emcconville的代码在convert中对我有效,但在windows PC上使用magick时失败。我尝试在不使用的情况下移动一些选项成功。嘿,我感觉我做得不对,所以我运行代码
magick-size 100x28-背景白色-重心-填充深蓝色-pointsize 22标签:12345-wave 2x92-内爆0.2“E:\Pictures\temp.jpg”
我得到的图像是
12345
是扭曲的12345吗?恐怕这就是code@emcconville发布的全部内容。但我想说,这表明SimpleCapture不支持V7。为了确认这一点,我建议您删除Imagemagick的V7版本,然后尝试V6版本。如果你正在建立一个网站,你可以在那里尝试SimpleCapture代码,如果它可以在你的mac上忽略它并在线测试。是的。
12345
只是FPO(仅用于放置)。库将生成随机字符。有关使用自制软件安装ImageMagick 6的信息,请参阅。