2012-12-19 3 views
3

제가 PDF 거꾸로

UIImage *CurImage=[UIImage imageWithContentsOfFile:[ImageArr objectAtIndex:i]]; 
UIView *ViewDraw=[[UIView alloc]initWithFrame:CGRectMake(0,10, pageSize, pageSize)]; 
ViewDraw.backgroundColor=[UIColor clearColor]; 
CGContextBeginPage (pdfContext,nil); 

//turn PDF upsidedown 
CGAffineTransform transform = CGAffineTransformIdentity; 
transform = CGAffineTransformMakeTranslation(0,CurImage.size.height); 
transform = CGAffineTransformScale(transform, 1.0, -1.0); 

CGContextConcatCTM(pdfContext, transform); 
int y = (pageSize - CurImage.size.height)/2; 
int x = (pageSize - CurImage.size.width)/2; 

[CurImage drawInRect:CGRectMake((ViewDraw.frame.width - curImage.frame.width)/2, 24, size.width, curImage.frame.height)]; 

//  CGContextDrawImage(pdfContext, CGRectMake(x,-y, CurImage.size.width, CurImage.size.height), CurImage.CGImage); 
CGContextEndPage (pdfContext); 
CurImage=nil; 

코드

이하하여 PDF를 생성하고 생성하지만 거꾸로 미러 이미지 i.e.180도 생성된다.

무엇이 잘못 되었나요?

답변

3

턴 PDF 거꾸로 : 일부는 거절됩니다 다른 사람이 동일하게 유지하면서 귀하가 어떤 임의의 높이를 제공하고 있습니다

CGAffineTransform aCgAffTrans = CGAffineTransformMakeTranslation(0,892); //here the whole PDF page height should be given 
aCgAffTrans = CGAffineTransformScale(aCgAffTrans, 1.0, -1.0); 
CGContextConcatCTM(aCgPDFContextRef, aCgAffTrans); 

. 그래서 거울 같은 효과가 나타납니다.

+0

원본 식별 변형이 바로 제거됩니다. CGAffineTransformMakeTranslation의 결과를 aCgAffTrans의 선언에 직접 지정하면이 변환이보다 명확 해집니다. – Adrian

+1

@ 애드리안 : 내 대답을 편집 해 주셔서 감사합니다 :) –