0

ocr クライアント tesseract を使用して、ocr テキストと位置データを hocr ファイルに生成しました。tesseract からのテキストの目に見えないレイヤーが埋め込まれた画像から pdf を作成したいと思います。これを行う方法がわかりません。テキスト データなしで pdf を生成するのは簡単です。

NSMutableData *pdfFile = [[NSMutableData alloc] init];
UIImage *image = [UIImage imageWithCGImage:[self.sourceImageArray[0] CGImage]];
CGRect rect;
rect = CGRectMake(0, 0, image.size.height ,image.size.width);
UIGraphicsBeginPDFContextToData(pdfFile, CGRectZero, nil);
for (int i = 0; i < [self.sourceImageArray count] ; i++){
        UIGraphicsBeginPDFPageWithInfo(rect, nil);
        UIImage *contextImage = self.sourceImageArray[i];
        [contextImage drawInRect:rect];
    }
UIGraphicsEndPDFContext();
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,                                                NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString* path = [documentsDirectory stringByAppendingPathComponent:@"multipage.pdf"];
NSData* data = pdfFile;
[data writeToFile:path atomically:YES];

PDF ソース コードでは、テキスト レンダリング モード 3 (「グリフ形状を塗りつぶしもストロークもしない」) を使用して、目に見えないテキストを書き込むことができます。これが、基本的にスキャンされた画像のみで構成される PDF ページに OCR がそのテキストを挿入する方法です。

したがって、問題は、非表示モード 3 でクォーツを使用してテキストを PDF にレンダリングする方法です。

4

1 に答える 1

0

レンダリング モード 3 を使用してテキストをレンダリングすることはできません。できることは、ページに通常のテキストを描画してから画像を描画することです。画像によってテキストがマスクされ、表示されなくなります。テキスト検索操作では、レンダリング モード 0 と 3 の間に違いはありません。

于 2013-05-14T06:19:23.723 に答える