2

iOS デバイスで撮影した画像には、数行の単語と背景色 (赤) が少し含まれています。画像に単語のみをユーザーに表示したい(彼らは似たようなことをしているだろう)。UIImageView を使用することはできないため、画像を取得して背景に配置するだけでは機能しません。

だから私は、次の方法のどれが私に最良の結果をもたらすか、誰かが私に教えてくれるかどうか疑問に思っていました. 少し運が良かったので、以下のコードを投稿しました(オプション2)。

  1. 文字だけが見えるように背景を白くする
  2. 画像から赤い色を取り除く

前もって感謝します

 UIImage *image = [UIImage imageNamed:@"pic1.jpg"];

const float colorMasking[6] = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0};
image = [UIImage imageWithCGImage: CGImageCreateWithMaskingColors(image.CGImage, colorMasking)];
4

1 に答える 1

2
UIImage *image = [UIImage imageNamed:@"image1.jpg"];
UIImage *inputImage = [UIImage imageWithData:UIImageJPEGRepresentation(image, 1.0)];

const float colorMasking[6] = {225.0, 255.0, 225.0, 255.0, 225.0, 255.0};
CGImageRef imageRef = CGImageCreateWithMaskingColors(inputImage.CGImage, colorMasking);

UIImage *img2 = [UIImage imageWithCGImage:imageRef];

画像の背景からライト グレーを削除しました。RGB の色の範囲は 225 ~ 255 です。透明に見えるようになりました。

于 2012-10-29T07:20:41.300 に答える