2011-08-15 18 views
0

正如你在下面的代碼中看到的,我在寫一些文本之前對我的UIView進行了一些轉換。似乎雖然文本的位置受上述轉換的影響。在CGContext中使用的流行語翻譯

有什麼方法可以'彈出'這些位移,所以我可以寫我的文字相對於原始的0,0座標?

//turn PDF upsidedown 
CGAffineTransform transform = CGAffineTransformIdentity; 
transform = CGAffineTransformMakeTranslation(100, aUIView.bounds.size.height+300); 
transform = CGAffineTransformScale(transform, 0.5, -0.5); 
CGContextConcatCTM(pdfContext, transform); 


// Draw view into PDF 
// Is renderInContext deprecated? Something to look into. 
[aUIView.layer renderInContext:pdfContext]; 


CGContextSelectFont (pdfContext, "Helvetica", 14, kCGEncodingMacRoman); 
CGContextSetTextDrawingMode (pdfContext, kCGTextFill); 
CGContextSetRGBFillColor (pdfContext, 0, 0, 0, 1); 
CGContextSetTextMatrix(pdfContext, CGAffineTransformMake(1.0,0.0, 0.0, -1.0, 0.0, 0.0)); 
const char *text = "THE QUICK BROWN FOX JUMPED OVER THE LAZY DOG TEST 1"; 
CGContextShowTextAtPoint (pdfContext, 10.0, 10.0, text, strlen(text)); 

回答

2

我認爲CGContextSaveGState(cntx)和CGContextRestoreGState(cntx)是你在找什麼。

+0

+1這些都是正確的功能使用。 :) –