标签: crop

使用CICrop裁剪CIImage无法正常工作

我有麻烦裁剪图像.对我来说,CICrop过滤器无法正常工作.如果我的CIVector x和y(起点)为0,一切正常(图像从左下角裁剪),图像被我的矩形宽度和高度裁剪,但如果CIVector起点(x和y)在我的裁剪中不是0图像变成空间(因为CICrop过滤器从左下角裁剪,无论起源是什么(x和y)).

我正在用矩形裁剪CIImage,来源:

CIVector *cropRect =[CIVector vectorWithX:150 Y:150 Z: 300 W: 300];

CIFilter *cropFilter = [CIFilter filterWithName:@"CICrop"];   

[cropFilter setValue:myCIImage forKey:@"inputImage"];
[cropFilter setValue:cropRect forKey:@"inputRectangle"];

CIImage *croppedImage = [cropFilter valueForKey:@"outputImage"];
Run Code Online (Sandbox Code Playgroud)

使用CIVector X 150和Y 150输出图像:(我为了清晰起见绘制了边框)

在此输入图像描述

使用CIVector X 0和Y 0输出图像:

在此输入图像描述

原始图片:

在此输入图像描述

我做错了什么?或者它应该这样做?

macos cocoa crop

14
推荐指数
2
解决办法
9939
查看次数

如何在UIImage中裁剪中心广场?

对这个问题感到抱歉,但我在SO搜索了很多帖子,但我一无所获.

问题是:如何在UIImage中裁剪中心广场?

我尝试了下面的代码,但没有成功.裁剪发生,但在左上角.

-(UIImage*)imageCrop:(UIImage*)original
{
    UIImage *ret = nil;

    // This calculates the crop area.

    float originalWidth  = original.size.width;
    float originalHeight = original.size.height;

    float edge = fminf(originalWidth, originalHeight);

    float posX = (originalWidth   - edge) / 2.0f;
    float posY = (originalHeight  - edge) / 2.0f;


    CGRect cropSquare = CGRectMake(posX, posY,
                                   edge, edge);


    // This performs the image cropping.

    CGImageRef imageRef = CGImageCreateWithImageInRect([original CGImage], cropSquare);

    ret = [UIImage imageWithCGImage:imageRef
                              scale:original.scale
                        orientation:original.imageOrientation];

    CGImageRelease(imageRef);

    return ret;
}
Run Code Online (Sandbox Code Playgroud)

crop uiimage ios

14
推荐指数
1
解决办法
6622
查看次数

使用python/PIL自动裁剪图像

任何人都可以帮我弄清楚我的图像自动裁剪脚本中发生了什么?我有一个带有大透明区域/空间的png图像.我希望能够自动裁剪出那个空间并留下必需品.原始图像有一个方形的画布,最好是矩形,只包含分子.

这是原始图片: 原始图像

做一些谷歌搜索我遇到了报告工作的PIL/python代码,但是在我手中,运行下面的代码过度裁剪图像.

import Image
import sys

image=Image.open('L_2d.png')
image.load()

imageSize = image.size
imageBox = image.getbbox()

imageComponents = image.split()

rgbImage = Image.new("RGB", imageSize, (0,0,0))
rgbImage.paste(image, mask=imageComponents[3])
croppedBox = rgbImage.getbbox()
print imageBox
print croppedBox
if imageBox != croppedBox:
    cropped=image.crop(croppedBox)
    print 'L_2d.png:', "Size:", imageSize, "New Size:",croppedBox
    cropped.save('L_2d_cropped.png')
Run Code Online (Sandbox Code Playgroud)

输出是这样的:脚本的输出

任何更熟悉图像处理/ PLI的人都可以帮我解决这个问题吗?

python image crop image-processing python-imaging-library

14
推荐指数
4
解决办法
3万
查看次数

我如何在PHP中使用imagick?(调整大小和裁剪)

我使用imagick作为缩略图裁剪,但有时裁剪的缩略图缺少图像的顶部(头发,眼睛).

我想要调整图像大小然后裁剪它.另外,我需要保持图像大小比例.

下面是我用于裁剪的php脚本:

$im = new imagick( "img/20130815233205-8.jpg" );
$im->cropThumbnailImage( 80, 80 );
$im->writeImage( "thumb/th_80x80_test.jpg" );
echo '<img src="thumb/th_80x80_test.jpg">';
Run Code Online (Sandbox Code Playgroud)

谢谢..

php resize crop imagick

14
推荐指数
2
解决办法
3万
查看次数

如何在使用Jcrop进行裁剪时获得可变宽度和高度,并使用PHP GD保存

我有一个应用程序,必须裁剪宽度和高度可变的图像.但我不知道如何使用php gd(Createimagefromjpeg)函数执行此操作

在我的代码我有:

$targ_w = 400;
$targ_h = 400;
Run Code Online (Sandbox Code Playgroud)

这意味着裁剪后的图像将始终获得此宽度和高度.那不是我想要的.我希望,以某种方式裁剪图像并裁剪它,就像我在裁剪区域选择它一样,如下图所示:

裁剪图像

现在,当我裁剪图像时,就像在图片中我得到的那样:

方形图像创建

这是一个方形图像,因为我必须给出宽度和高度.但在我裁剪的每一张图片中,尺寸都不同.

有没有办法(变量,id等..)这样做?

感谢:D

编辑:我的代码来创建裁剪图像:

<!DOCTYPE>
<html>
<head>
    <title>Cropped Image</title>
</head>
<body>

<?php
SESSION_start();
if ($_SERVER['REQUEST_METHOD'] == 'POST')
{
$targ_w = 400;
$targ_h = 400;
$jpeg_quality = 100;

$src = $_SESSION['target_path'];
$img_r = imagecreatefromjpeg($src);
$dst_r = ImageCreateTrueColor( $targ_w, $targ_h );

imagecopyresampled($dst_r,$img_r,0,0,$_POST['x'],$_POST['y'],
$targ_w,$targ_h,$_POST['w'],$_POST['h']);

header('Content-type: image/jpeg');
imagejpeg($dst_r, 'data/uploads/' . basename($src));
header('Location:'.$src);
exit;
}

?>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

我上传图片的代码:

<!DOCTYPE>
<html>

<head>
    <title>Het Vergeet-mij-nietje</title>
    <link href="style/default.css" REL="stylesheet" TYPE="text/css">
    <script type="text/javascript" src="js/showfunctie.js"></script>
    <script src="js/jquery.min.js"></script>
    <script …
Run Code Online (Sandbox Code Playgroud)

php gd image crop jcrop

13
推荐指数
1
解决办法
2471
查看次数

在客户端裁剪和上传图像而不涉及服务器端代码

正如标题所说.要求是能够在将裁剪后的图像上传到服务器之前裁剪图像.所有工作都应该在客户端完成.我听说过在服务器上裁剪图像并完全保存的方法.

但是因为我使用Parse.com服务.服务器端不支持图像处理,因此我需要在本地处理它并将完成的图像直接上传到Parse.com服务.

示例代码非常有用.谢谢.

javascript crop client-side parse-platform

13
推荐指数
1
解决办法
9282
查看次数

Android裁剪图像像camscanner

我正在开发一个项目,需要像camscanner android应用程序一样的图像裁剪功能,当拍摄照片时,当用户点击裁剪按钮时,矩形覆盖应该显示在camscanner中.矩形路径可以拉伸到任何角度,并可以执行crop.please帮助我解决方案.

我指的是https://github.com/edmodo/cropper.但这只是4个点的矩形覆盖.请帮助我,如果任何人有一个链接或解决方案!

android image crop draw

13
推荐指数
1
解决办法
2万
查看次数

在Swift中裁剪UIImage的问题

我正在编写一个带有图像的应用程序,除了图像中心的矩形外,还可以裁剪掉所有内容.(SWIFT)我无法让裁剪功能起作用.这就是我现在拥有的:

func cropImageToBars(image: UIImage) -> UIImage {
     let crop = CGRectMake(0, 200, image.size.width, 50)

     let cgImage = CGImageCreateWithImageInRect(image.CGImage, crop)
     let result: UIImage = UIImage(CGImage: cgImage!, scale: 0, orientation: image.imageOrientation)

     UIImageWriteToSavedPhotosAlbum(result, self, nil, nil)

     return result
  }
Run Code Online (Sandbox Code Playgroud)

我看了很多不同的指南,但似乎没有一个对我有用.有时图像旋转90度,我不知道它为什么这样做.

crop uiimage ios swift

13
推荐指数
1
解决办法
1万
查看次数

如何在android中实现徒手图像裁剪?

我该如何实现徒手剪裁Imageview.

使用下面的代码,我能够绘制手绘路径,并能够裁剪图像,但我面临一些其他问题

现在到目前为止我已经尝试过了

这是我的代码

使用画布裁剪图像的代码

public class SomeView extends View implements View.OnTouchListener {
    private Paint paint;

    int DIST = 2;
    boolean flgPathDraw = true;

    Point mfirstpoint = null;
    boolean bfirstpoint = false;

    Point mlastpoint = null;

    Bitmap bitmap;

    Context mContext;

    public SomeView(Context c, Bitmap bitmap) {
        super(c);

        mContext = c;
        this.bitmap = bitmap;

        setFocusable(true);
        setFocusableInTouchMode(true);

        paint = new Paint(Paint.ANTI_ALIAS_FLAG);
        paint.setStyle(Paint.Style.STROKE);
        paint.setPathEffect(new DashPathEffect(new float[]{10, 20}, 0));
        paint.setStrokeWidth(5);
        paint.setColor(Color.RED);
        paint.setStrokeJoin(Paint.Join.ROUND);
        paint.setStrokeCap(Paint.Cap.ROUND);

        this.setOnTouchListener(this);
        points = new ArrayList<Point>();

        bfirstpoint = false;
    } …
Run Code Online (Sandbox Code Playgroud)

java android crop android-imageview

13
推荐指数
1
解决办法
1758
查看次数

裁剪/调整心形/框架中的图像

我正在尝试按照心形裁剪或调整图像.用户可以根据心形调整图像,并将图像设置为心形.

目前,我正在使用Github项目库将图像裁剪为正方形并设置为心形.但是所有的图像都是从心脏弯曲的顶端切割出来的.所以,我希望允许用户按照心脏边界裁剪图像,然后设置用户想要的方式.但是没有任何我可以自定义或使用的库.

这是我从github项目上面使用的当前代码.

  1. 要打开相机和图库:

    CropImage.activity().setGuidelines(CropImageView.Guidelines.ON).start(this);

  2. 获取裁剪图像并设置为ImageHeart视图.

    CropImage.ActivityResult result = CropImage.getActivityResult(data);
    picUri = result.getUri();
    bitmap = MediaStore.Images.Media.getBitmap(this.getContentResolver(),picUri);
    imvHeartRed.setImageBitmap(位图);

这是我使用方形裁剪裁剪玻璃的图像,但设置全玻璃图像时不会出现.但是如果用户使用心形来裁剪它,那么将显示全玻璃,因为用户将知道图像的哪个部分将被裁剪.

在此输入图像描述

任何帮助,参考将非常感谢.

我不想直接在心里设置图像,但用户可以通过触摸/移动来调整心脏图像

android crop imageview android-view

12
推荐指数
2
解决办法
1817
查看次数