2011年04月22日

iPhoneでPDFを表示する場合でPDFをUIImageに変換する。

iPhoneで今PDFリーダを作っている。
で、その際プレビュー表示をさせたいのだが、AFOpenFlowというライブラリが第三者から提供されているのでこれを使わしてもらう。

で、AFOpenFlowはImageをプレビューするものなので、読み込んだPDFを今度はUIImageに変換してやる必要がある。

のやり方が、


PDFファイルをUIImageに変換する

1.カレントグラフィックコンテキストで作成

-(UIImage*)getImage:(CGPDFPageRef)pPageRef{
UIImage *image = nil;

//グラフィックの作成開始:メインスレッドのみ
UIGraphicsBeginImageContext(rect);

//現在のグラフィックからコンテキストの生成
CGContextRef context = UIGraphicsGetCurrentContext();

//PDFページをコンテキストに描画
CGContextDrawPDFPage(context, pageRef);

//コンテキストをUIImageに変換
image = UIGraphicsGetImageFromCurrentImageContext();

//グラフィックの作成終了
UIGraphicsEndImageContext();

return image;
}

※上記はメインメソッドのみ使用可能
※上記はImageが反転して描画されるため、補正が必要


2.ビットマップコンテキストで作成
-(UIImage*)getImage:(CGPDFPageRef)pPageRef{
UIImage *image = nil;

//ビットマップコンテキストの生成
CGContextRef context = CGBitmapContextCreate();

//PDFページをコンテキストに描画
CGContextDrawPDFPage(context, pageRef);

//コンテキストをUIImageに変換
CGImageRef imageRef = CGBitmapContextCreateImage(context);
image = [UIImage imageWithCGImage:imageRef];
CGImageRelease(imageRef);

//コンテキストの解放
CGContextRelease();

return image;
}


ソース

ラベル:iPhone
posted by 1.618 at 14:24| Comment(0) | iPhone | このブログの読者になる | 更新情報をチェックする

COCOS2D & 3D for iphone & android

今日会社でiphoneの勉強してて、OpenGL難しいよね〜って話してたらCOCOS2Dってライブラリがあるよーって言われた。

COCOS2D

iphoneのゲームの40%はこのライブラリで作成されているらしい!
。。。まぁ同僚が言ってただけだから信用ならないけど。

現在android版も作成中みたいなので、そちらも期待したい。

。。。苦労して自作フレームワーク作ってたのに〜><;
くそー!T_T;
ラベル:opengl
posted by 1.618 at 12:21| Comment(0) | 2Dグラフィック | このブログの読者になる | 更新情報をチェックする

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。


×

この広告は180日以上新しい記事の投稿がないブログに表示されております。