-2

UIImageを取得して、プログラムで黒い境界線を付けるにはどうすればよいですか?

私がコードを受け取ることができれば、それは素晴らしいことです。

tnx

4

2 に答える 2

2

境界線のみを表示する必要がある場合は、UIImageViewのレイヤーのCoreAnimationを使用して表示できます。画像自体でそれを行う必要がある場合は、新しい画像を作成し、古い画像を新しい画像に描画してから、その上に長方形を描画する必要があります。

- (UIImage*)imageWithBorderFromImage:(UIImage*)source;
{
  CGSize size = [source size];
  UIGraphicsBeginImageContext(size);
  CGRect rect = CGRectMake(0, 0, size.width, size.height);
  [source drawInRect:rect blendMode:kCGBlendModeNormal alpha:1.0];

  CGContextRef context = UIGraphicsGetCurrentContext();
  CGContextSetRGBStrokeColor(context, 1.0, 0.5, 1.0, 1.0); 
  CGContextStrokeRect(context, rect);
  UIImage *testImg =  UIGraphicsGetImageFromCurrentImageContext();
  UIGraphicsEndImageContext();
  return testImg;
}  

これにより、画像にピンクの境界線が表示され、新しい画像が返されます。

于 2009-08-31T19:02:45.833 に答える
0

私はこれを見てみたいと思います: UIImageのプロパティCGImageのピクセルを編集できますか

黒枠部分はわかると思います。それぞれの辺に沿って繰り返し、ピクセルを(0,0,0,255)に一定量変更します。

于 2009-08-31T17:39:44.907 に答える