PDF用旋转图像制作iPhone

时间:2010-01-25 12:48:58

标签: iphone pdf-generation quartz-graphics

我在PDF上绘制旋转图像时遇到问题,我的输出更糟糕。

我的情况是,我们不知道有任何固定的坐标。 X,Y,旋转等取决于ImageView本身。我选择了ImageView并通过滑块旋转它。

检查 ZOSH 应用程序。我需要实现像这个应用程序的功能。我想通过逐个添加图片来制作PDF。

请给我链接任何可以帮助我的例子,我被困在这里。我正在基于imageview的中心在PDF上绘制图像。

请帮帮我,谢谢你。

2 个答案:

答案 0 :(得分:0)

答案在Apple's documentation。清单13-3和13-4看起来就像你所追求的那样。

答案 1 :(得分:0)

遇到同样的问题,经过相当长的一段时间后我才能找到解决方案....可能对你有所帮助

- (UIImage *)RotateImage:(UIImage *)Image :( float)Angle {     CGFloat angleInRadians = -1 * Angle *(M_PI / 180.0);     CGAffineTransform transform = CGAffineTransformIdentity;

transform = CGAffineTransformMakeRotation(angleInRadians);
//transform = CGAffineTransformMakeScale(1, -1);
//transform =CGAffineTransformMakeTranslation(0,80);

CGRect rotatedRect = CGRectApplyAffineTransform(CGRectMake(0,0,Image.size.width,Image.size.height), transform);

UIGraphicsBeginImageContext(rotatedRect.size);
//[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
CGContextTranslateCTM(UIGraphicsGetCurrentContext(), 0,rotatedRect.size.height);
CGContextScaleCTM(UIGraphicsGetCurrentContext(),1, -1); 

//CGContextTranslateCTM(UIGraphicsGetCurrentContext(), +(rotatedRect.size.width/2),+(rotatedRect.size.height/2));

CGContextTranslateCTM(UIGraphicsGetCurrentContext(), (rotatedRect.origin.x)*-1,(rotatedRect.origin.y)*-1);
CGContextRotateCTM(UIGraphicsGetCurrentContext(), angleInRadians);
//CGContextTranslateCTM(UIGraphicsGetCurrentContext(), -(rotatedRect.size.width/2),-(rotatedRect.size.height/2));

CGImageRef temp = [Image CGImage];

CGContextDrawImage(UIGraphicsGetCurrentContext(), CGRectMake(0, 0, Image.size.width,Image.size.height), temp);

//CGContextRotateCTM(UIGraphicsGetCurrentContext(), -angleInRadians);

UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

//[viewImage autorelease];


return viewImage;

}

用于缩放问题....我建议你尝试为应用程序窗口创建一个子类

我发现这个网页显示了如何子类化应用程序窗口,以便观察点击并将这些点击转发给视图控制器。

http://mithin.in/2009/08/26/detecting-taps-and-events-on-uiwebview-the-right-way/

希望能帮到你......