複数行の文字列で構成されるUITextViewから画像にテキストを描画する方法は?

StackOverflow https://stackoverflow.com/questions/1400248

  •  05-07-2019
  •  | 
  •  

質問

iは、UITextViewから複数行の文字列を取得して、画像上に描画します。 画像内のテキストの位置はUITextView内の位置と正確に同じでなければなりませんが、textViewをUIImageViewに追加したくありません。これらのテキストで構成される新しい画像が必要ですか?それを行うための提案はありますか?

役に立ちましたか?

解決

任意の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が表示され、ネットワーク経由で表示、保存、または送信できます。

他のヒント

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

追加する必要があるものを追加したい

#import <QuartzCore/QuartzCore.h>

インポートに対して警告が消えます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top