Tag: 石英

pdf图像颜色空间麻烦ios

编辑我一直在使用的PDF文件显然是在“indesign”格式(不pipe这意味着什么),因此没有颜色configuration文件,有谁知道我怎么可以添加configuration文件,如果有可能呢? 编辑结束 提前感谢任何人都可以借此解决这个问题。 首先让我告诉你,我是一种新的开发IOS,我想在Xcode上使用石英的pdf阅读器,一切工作正常,除了图像的渲染,由于某种原因,颜色空间是完全的弄乱。 请看看这个例子。 这是我在我的IOS设备上得到的图像: 这是它看起来如此: 作为参考,绘制PDF页面的代码部分如下: – (void)drawLayer:(CATiledLayer *)layer inContext:(CGContextRef)context { ReaderContentPage *readerContentPage = self; // Retain self CGContextSetRGBFillColor(context, 1.0f, 1.0f, 1.0f, 1.0f); // White CGContextFillRect(context, CGContextGetClipBoundingBox(context)); // Fill CGContextTranslateCTM(context, 0.0f, self.bounds.size.height); CGContextScaleCTM(context, 1.0f, -1.0f); CGContextConcatCTM(context, CGPDFPageGetDrawingTransform(_PDFPageRef, kCGPDFCropBox, self.bounds, 0, true)); //CGContextSetRenderingIntent(context, kCGRenderingIntentDefault); CGContextSetInterpolationQuality(context, kCGInterpolationDefault); CGContextDrawPDFPage(context, _PDFPageRef); // Render the PDF page into […]

从一个PDF复制目录到另一个

你可能会发现它是这个问题的重复,但我没有得到任何解决scheme。 我的情况就像我从现有的PDF创build一个PDF与一些编辑。 这一切工作正常。 我的问题是我想添加元数据,目录,书签,你可以称之为在PDF的元数据到新创build的PDF。 我无法理解这里所build议的XMP格式。 有什么办法可以直接将TOC添加到新PDF中。 我正在使用以下function,但它根本不工作。 CGPDFContextAddDocumentMetadata(pdfContext,contdata); 任何人都可以build议我正确的方向挖掘。任何第三方工具也将做。 我试过podofo,但我没有得到任何方式将其移植到ios中。

在iOS中的三维文字效果

我想在我的一个屏幕上渲染一些文字,看起来像是3DISH。 我正在使用UIKit和标准视图控制器等 效果看起来像这样: 这可以用UIKit和iOS以某种方式完成吗? 通常我只是使用一个静态PNG,然而,文本是dynamic的,并基于用户数据更新

在iOS中自定义“可resize的图像”

UIImage API提供了调整图像大小的方法,其中某些区域被拉伸,而其他区域保持不变 – 非常适合可resize的UI元素的背景图像。 现在我正在寻找一种方法来为更复杂的背景图像定制这种行为。 这是什么- (UIImage *)resizableImageWithCapInsets:(UIEdgeInsets)capInsets; 确实。 透明区域保持不变,当视图大小改变时红色区域被拉伸。 这就是我想要的 – 对延伸的区域进行更细粒度的控制: 我想我必须通过覆盖我的UIView子类的-(void)drawRect:方法,然后使用Quartz来完成图像的绘制。 我只是不知道我将不得不使用哪个系统API。 有谁能给我一个提示如何做到这一点? 提前致谢!

缩小pdf大小 – 目标c

我有一个PDF生成项目,它包含一些文本和一个已经存储在数据库中的图像,我想要预览和邮件生成的PDF,只有文本数据时,一切都可以。 如果我们的数据中有图像,就会出现问题。 即使有大小为1MB或以下的图片,邮件也会收到10MB或以上的pdf。在模拟器中工作正常。绘制图像的代码如下所示: UIImage *plotImage=[[UIImage alloc]initWithContentsOfFile:[localPictureArray objectAtIndex:i]]; CGSize imageSize=plotImage.size; CGFloat scaleFactor = 1.0; if (imageSize.height>(maxHeight-currentPageY) || imageSize.width>maxWidth ) { UIGraphicsBeginPDFPageWithInfo(CGRectMake(0, 0, kDefaultPageWidth, kDefaultPageHeight), nil); currentPageY = kMargin; if (!((scaleFactor = (maxWidth / imageSize.width)) > ((maxHeight-currentPageY) / imageSize.height))) { scaleFactor = (maxHeight-currentPageY) /imageSize.height; // scale to fit heigth. } CGRect rect = CGRectMake(kMargin,currentPageY, imageSize.width * scaleFactor, […]

从阴影视图创buildUIImage,同时保留alpha?

我有一个不寻常的问题。 在我的应用程序中,我使用基本的Quartz2d图层阴影来遮挡UIImageView 。 这是我的代码: imageView.layer.shadowOpacity = 1.0; // Pretty self explanatory imageView.layer.shadowRadius = 8.0; // My softness imageView.layer.shadowColor = [UIColor blackColor].CGColor; // Color of the shadow imageView.layer.shadowOffset = CGSizeMake(0.0, 0.0); // Offset of the shadow 这在图像视图背后产生了很好的模糊效果。 不过,我正在用这种观点来做一些animation,在转换过程中对阴影的不断重新计算会导致非常波动的过渡。 我希望能够做的是创build一个UIImage或.png文件的图像视图与模糊和其alpha保持不变 。 这是我已经尝试过的: UIGraphicsBeginImageContext(CGSizeMake(320, 396)); [imageView.layer renderInContext:UIGraphicsGetCurrentContext()]; UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); UIImageWriteToSavedPhotosAlbum(viewImage, nil, nil, nil); 由于我有一个“图像视图外部”增长的阴影,我不能只在UIGraphicsBeginImageContext函数中传递它的大小。 我设置了正确的大小,但是由此产生的图像并不能保存我的alpha,而是在阴影后面放置了一个白色背景,这对我来说不起作用,因为我的真实背景是木质纹理。 […]

在iOS中最有效的方法来绘制图像的一部分

给定一个UIImage和一个CGRect ,什么是最有效的方式(在内存和时间)来绘制图像的CGRect对应的CGRect (无缩放)? 作为参考,这是我目前如何做到这一点: – (void)drawRect:(CGRect)rect { CGContextRef context = UIGraphicsGetCurrentContext(); CGRect frameRect = CGRectMake(frameOrigin.x + rect.origin.x, frameOrigin.y + rect.origin.y, rect.size.width, rect.size.height); CGImageRef imageRef = CGImageCreateWithImageInRect(image_.CGImage, frameRect); CGContextTranslateCTM(context, 0, rect.size.height); CGContextScaleCTM(context, 1.0, -1.0); CGContextDrawImage(context, rect, imageRef); CGImageRelease(imageRef); } 不幸的是,这对于中等尺寸的图像和高的setNeedsDisplay频率似乎非常慢。 使用UIImageView的框架和clipToBounds产生更好的结果(具有较小的灵活性)。

UIView用虚线

我拥有的: 要创build这一行,我基本上有一个UIView ,我做了以下几点: void setLayerToLineFromAToB(CALayer *layer, CGPoint a, CGPoint b, CGFloat lineWidth) { CGPoint center = { 0.5 * (ax + bx), 0.5 * (ay + by) }; CGFloat length = sqrt((ax – bx) * (ax – bx) + (ay – by) * (ay – by)); CGFloat angle = atan2(ay – by, ax – bx); […]