完成此链接后,我的代码问题是输出图像无法设置正确的x和y值,因为裁剪后的图像似乎在结果图像中有0和0,无论我在哪里缩放(或计算滚动偏移的位置) .这是我尝试过的.
- (IBAction)crop:(id)sender
{
float zoomScale = 1.0f / [self.scroll zoomScale];
CGRect rect;
NSLog(@"contentOffset is :%f,%f",[self.scroll contentOffset].x,[self.scroll contentOffset].y);
rect.origin.x = self.scroll.contentOffset.x * zoomScale;
rect.origin.y = self.scroll.contentOffset.y * zoomScale;
rect.size.width = self.scroll.bounds.size.width * zoomScale;
rect.size.height = self.scroll.bounds.size.height * zoomScale;
UIGraphicsBeginImageContextWithOptions( CGSizeMake(rect.size.width, rect.size.height),
NO,
0.);
NSLog(@"rect offset is :%f,%f",rect.origin.x,rect.origin.y);
CGPoint point = CGPointMake(-rect.origin.x, -rect.origin.y); **//even though above NSLog have some values, but output image is unable to set proper x and y values as cropped image seems to have …Run Code Online (Sandbox Code Playgroud) 我有一个Phonegap应用程序,可以保存用户从相机到设备文件系统的图像.我希望能够在iOS/Objective C中访问此图像对象,但似乎无法弄清楚如何以及没有找到解决问题的任何解释.
我能够看到文件的路径(类似于"file:///var/mobile/Containers/Data/Application/XXXX-XX-XXXXX/Documents/tempImg.jpg"),并且可以正确显示该图像将HTML img src设置为此位置,但是当我尝试使用本机代码访问图像对象时,某些功能无效.我尝试过使用下面的代码
[UIImage imageWithContentsOfFile:imgName]
Run Code Online (Sandbox Code Playgroud)
其中imgName是上面引号中的路径,但它不起作用.我应该做别的吗?
我已经检查了所有Stack Overflow的答案,我可以找到如下面的链接,但没有任何工作
感谢任何帮助!
下面是我用来构建图像数组的代码
var _displayImage : Array<UIImage>!
required init(coder aDecoder: NSCoder) {
self._displayImage = []
}
func buildImageSet() {
self._displayImage = [UIImage(named: "image1"), UIImage(named: "image2"), UIImage(named: "image3"), UIImage(named: "image4"), UIImage(named: "image5")]
}
Run Code Online (Sandbox Code Playgroud)
我收到一个错误:找不到接受提供的参数的'init'的重载

我究竟做错了什么?
我想将图像上传到解析服务器.A PFFile最多只能是10mb,所以我写了一个类别来检查UIImagebytesize是否超过了.
这是我的类别中的代码:
- (UIImage *)scaleImageToSize:(CGFloat)destSize{
UIImage *img = self;
NSData *imgData = UIImageJPEGRepresentation(img, 1.0);
NSLog(@"size: %lu", (unsigned long)[imgData length]);
while ([imgData length] > destSize) {
UIImageJPEGRepresentation(img, 0.9);
NSLog(@"new size: %lu",(unsigned long)[imgData length]);
}
return img;
}
Run Code Online (Sandbox Code Playgroud)
但是,当我打电话[image scaleImageToSize:10485760];.它的大部分时间都小于此.
但是,在运行以下行之后:
photoFile = [PFFile fileWithData:UIImagePNGRepresentation(image)];
Run Code Online (Sandbox Code Playgroud)
该[photoFile fileSize]suddently超过10485760.怎么可能?我怎样才能防止照片变得太大PFFile?
有没有办法可以同时设置图像和标题UISegmentControl,这样图像就会出现在标题旁边,就像图像出现在标题旁边一样UIButton.
我正在尝试,但如果我设置选定片段的图像UISegmentControl然后标题消失,如果我设置选定片段的标题UISegmentControl然后图像消失,我想一次设置两个.
我正在尝试使用添加的属性创建UIImage的子类,但是当我创建一个方便的init时,我无法调用UIImage的指定init init(命名为name:String),因为由于某种原因它不会被继承.
class myUIImage: UIImage {
var imageType$: String?
convenience init(imageName$ imageName$: String) {
self.init(...?)
self.imageType$ = // ...
}
}
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
我最近遇到了一个恼人的问题.
假设我想在我的应用程序中的多个位置使用图像,并且在任何地方都必须将其舍入为圆形.因为我想我的代码是干净的,我认为这个功能(舍入本身)应放在内部延伸的UIImageView类.我创建了一个简单的类来覆盖storyboard构造函数,并负责正确设置cornerRadius:
class RoundedImageView: UIImageView {
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
self.layer.cornerRadius = self.frame.size.width/2
self.layer.borderColor = UIColor.redColor().CGColor
self.layer.borderWidth = 2
self.layer.masksToBounds = true
}
}
Run Code Online (Sandbox Code Playgroud)
对于喜欢的约束
身高:100
这显然有效,因为在调用构造函数后框架不会更改(因为它在storyboard中具有正确的尺寸).例如,当约束看起来像这样时,就会出现问题:
宽度等于0.5 superview的
因为在调用构造函数后框架会发生变化.
我最终做的是这样的:
override func viewDidLayoutSubviews(){
super.viewDidLayoutSubviews()
myRoundedImageInstance.layer.cornerRadius = ...
}
Run Code Online (Sandbox Code Playgroud)
在每个视图控制器中都有这个类的实例......这是有效的,因为在imageView改变维度之后重新计算框架,但这很难看,在这种情况下似乎没有类的存在.
我尝试将frame的重新计算放在drawRect中 - 也不起作用.有任何想法吗?
下面的Swift代码管理放大和缩小UIImage内部a UIScrollView.
双击时,图像放大到中心并缩小到中心.
题:
需要进行哪些代码更改才能将放大点设置为用户在屏幕上触摸的图像区域的中心?
(例如,如果用户双击图像的左上角,图像将相应地放大图像的左上角.)
class ScrollViewController: UIViewController, UIScrollViewDelegate {
var scrollView: UIScrollView!
var imageView: UIImageView!
override func viewDidLoad() {
super.viewDidLoad()
imageView = UIImageView(image: UIImage(named: "image.png"))
scrollView = UIScrollView(frame: view.bounds)
scrollView.backgroundColor = UIColor.blackColor()
scrollView.contentSize = imageView.bounds.size
scrollView.autoresizingMask = [UIViewAutoresizing.FlexibleWidth, UIViewAutoresizing.FlexibleHeight]
scrollView.contentOffset = CGPoint(x: 1000, y: 450)
scrollView.addSubview(imageView)
view.addSubview(scrollView)
scrollView.delegate = self
setZoomScale()
setupGestureRecognizer()
}
func viewForZoomingInScrollView(scrollView: UIScrollView) -> UIView? {
return imageView
}
override func viewWillLayoutSubviews() {
setZoomScale()
}
func setZoomScale() {
let imageViewSize = imageView.bounds.size …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用Swift的Simple Blog Detector和适用于iOS的OpenCV Objective C++包装器和OpenCV 3.1.0.但是,我收到了几个错误.我不理解他们,因为他们暗示我正在使用stitching.hpp,但我不是.有什么建议?我无法弄清楚为什么它会调用stitching.hpp搅拌器和曝光补偿.
错误是:在名称空间'cv :: detail'suting.hpp中没有名为'ExposureCompensator'的成员和:名称空间'cv :: detail'中没有名为'Blender'的成员'stitching.hpp
标题添加到开头,因为我最初从宏中的预期标识符'否'获得解析问题.通过添加这些标头,我删除了源文件中建议的解析问题,但这导致了如上所述的新错误.
#ifndef OPENCV_STITCHING_BLENDERS_HPP
#define OPENCV_STITCHING_BLENDERS_HPP
#if defined(NO)
#warning Detected Apple 'NO' macro definition, it can cause build conflicts. Please, include this header before any Apple headers.
#endif
#ifndef OPENCV_STITCHING_EXPOSURE_COMPENSATE_HPP
#define OPENCV_STITCHING_EXPOSURE_COMPENSATE_HPP
#if defined(NO)
#warning Detected Apple 'NO' macro definition, it can cause build conflicts. Please, include this header before any Apple headers.
#endif
#import "OpenWrapper.h"
#import <opencv2/opencv.hpp>
#import <opencv2/core/core.hpp>
#import <opencv2/imgcodecs/ios.h>
#import <opencv2/imgproc.hpp>
using namespace std;
using namespace cv; …Run Code Online (Sandbox Code Playgroud) uiimage ×10
ios ×8
swift ×5
objective-c ×3
uiscrollview ×2
c++ ×1
cordova ×1
inheritance ×1
initializer ×1
ios8 ×1
opencv ×1
optimization ×1
title ×1
uiimageview ×1
zoom ×1