3

UITextViewから複数行の文字列を取得して画像に描画したいのですが、画像内のテキストの位置はUITextView内の位置とまったく同じである必要がありますが、jusがtextViewをUIImageViewに追加したくないので、新しい画像が必要です。それらのテキストの、それは可能ですか?それを行うための提案はありますか?

4

2 に答える 2

6

UIViewのコンテンツをUIImageにキャプチャできます。まず、空のUIViewを作成し、UIImageViewとUITextViewをサブビューとして配置します。

// Assumes you have UIImageView *myImageView and UITextField *myTextField
UIView *parentView = [[UIView alloc] initWithFrame:CGRectZero];
[parentView addSubview:myImageView];
[myImageView setFrame:CGRectMake(0, 0, 100, 100)];
[parentView addSubview:myTextField];
[myTextField setFrame:CGRectMake(20, 20, 80, 20)];
[parentView sizeToFit];

次に、グラフィックコンテキストを作成し、それにparentViewを描画します。

UIGraphicsBeginImageContext([parentView bounds].size);
[[parentView layer] renderInContext:UIGraphicsGetCurrentContext()];
UIImage *outputImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

これで、UIImageViewとUITextFieldのコンテンツを含むUIImageが作成され、ネットワークを介して表示、保存、または送信できるようになりました。

于 2009-09-09T17:31:06.713 に答える
1

これは良い解決策でした、ありがとう。

追加する必要があることを追加したい

#import <QuartzCore/QuartzCore.h>

警告が消えるようにあなたの輸入品に。

于 2009-11-05T08:56:18.410 に答える