- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试模仿 Celebrity Clicks 的作用是:将名人贴纸添加到相机源中,对其进行定位并缩放,然后拍照。这应该会给你一张贴有贴纸的照片,这就是 Celebrity Click 所做的。但是,我无法将相机照片与贴纸合并。有一些问题:当应用于最终相机图像时,贴纸比例和位置是错误的,因为从相机拍摄的图像实际上在分辨率和尺寸上都比设置时实时相机源上显示的图片大得多贴上标签。
这是我现在正在做的事情:
[(GPUImageStillCamera *)videoCamera capturePhotoAsImageProcessedUpToFilter:selectedFilter withCompletionHandler:^(UIImage *processedImage, NSError *error) {
selectedImage = [self imageByCombiningImage:processedImage withImage:celebOverlayView.imageView.image];
}];
- (UIImage*)imageByCombiningImage:(UIImage*)firstImage withImage:(UIImage*)secondImage {
UIImage *image = nil;
CGSize newImageSize = CGSizeMake(MAX(firstImage.size.width, secondImage.size.width), MAX(firstImage.size.height, secondImage.size.height));
if (UIGraphicsBeginImageContextWithOptions != NULL) {
UIGraphicsBeginImageContextWithOptions(newImageSize, NO, [[UIScreen mainScreen] scale]);
} else {
UIGraphicsBeginImageContext(newImageSize);
}
[firstImage drawInRect:cameraView.frame];
[firstImage drawAtPoint:CGPointMake(roundf((newImageSize.width-firstImage.size.width)/2),
roundf((newImageSize.height-firstImage.size.height)/2))];
[secondImage drawAtPoint:CGPointMake(roundf((newImageSize.width-secondImage.size.width)/2),
roundf((newImageSize.height-secondImage.size.height)/2))];
image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return image;
}
我附上了前后的照片,这样你就可以看到我的问题了。
相机设置屏幕:
用相机拍摄的贴有贴纸的照片:
我猜测有更好的方法来合并两个图像或简单地将给定坐标处的贴纸应用到相机捕获的图像上。有什么建议吗?
最佳答案
最简单的方法是在选取器中保存添加 View 的相关帧,然后在应用添加的图像组合两个图像时计算新帧。
很多方法之一是在拍摄照片时将框架的所有参数分别除以 super View 的宽度和高度,然后在尝试合并两者时将相同的框架坐标乘以图像宽度和高度图片。
此外,对于您正在做的事情,我建议您放弃核心图形来绘制图像内容,而只使用 ImageView :使用背景图像的大小创建 ImageView ,设置图像,然后添加另一个 ImageView 添加的图像并如上所述设置框架。然后只需创建 View 的屏幕截图即可完成图像。这样您就不会遇到缩放、转换等方面的问题。
关于ios - 如何在相机照片上添加贴纸叠加层,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27590324/
是否可以使用 Facebook Messenger 的新 API 发送原生贴纸? 我尝试使用以下代码,但贴纸显示为下载的图像,而不是原始形式 messageData = { "
我正在创建一个 iMessage 贴纸包扩展,其中包含包含文本的贴纸。我在 Xcode 中没有看到任何本地化贴纸的选项?是否可以本地化贴纸? 最佳答案 也许这很明显,但您可以在扩展程序中管理它。如果您
我构建了一个消息应用程序扩展,灵感来自 Ice Cream Builder(Apple 示例代码):https://developer.apple.com/library/content/sample
所以我的问题的基本动机有点模糊: 我想跟踪用户对特定商店的忠诚度。每家商店的收银机上都会有一张 NFC 标签。购买时,用户会在他们的手机上使用一个应用程序(当然可以使用 NFC),贴纸会发回一些指定商
我一直在考虑开发我自己的自定义 Viber 贴纸,但我找不到任何好的来源来给我一些这方面的信息。 有人知道怎么做吗?或者有可能吗?如果是,请告诉我我需要做什么。 谢谢。 最佳答案 当您发送/接收贴纸时
我尝试使用 Google 键盘 Gboard 等键盘将表情符号插入到我的 edittext 但它显示 toast 此文本字段不支持从键盘插入 GIF. 有几个关于相同的问题,但没有正确的答案。我读了d
我想构建一个 Android 应用程序,它可以获取一组图像并制作一个 Telegram 贴纸包。我知道如何通过@stickers bot 创建贴纸。但我想自动完成。我应该做什么以及最好的方法是什么?
我有数百张珠宝产品图片。其中一些带有“畅销书”标签。标签的位置因图像而异。我想遍历所有图像,如果图像有此标签,则将其删除。生成的图像将在移除对象的像素上渲染背景。 带有标签/贴纸/对象的图像示例: 要
我正在将 Noble/Bleacon 与 Raspberry-Pi 和 MacbookProRetina 一起使用,并且我试图发现 Estimote 贴纸,但这确实很困难,因为它每 X 分钟广播一次
我正在尝试在我的应用中实现图像键盘支持。我关注了official documentation .为了支持这一点,我需要重写 EditText 的 onCreateInputConnection 来告诉
我是一名优秀的程序员,十分优秀!