Return-Path: X-Original-To: apmail-cordova-issues-archive@minotaur.apache.org Delivered-To: apmail-cordova-issues-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 842F6F688 for ; Thu, 21 Mar 2013 04:17:16 +0000 (UTC) Received: (qmail 29136 invoked by uid 500); 21 Mar 2013 04:17:16 -0000 Delivered-To: apmail-cordova-issues-archive@cordova.apache.org Received: (qmail 29008 invoked by uid 500); 21 Mar 2013 04:17:15 -0000 Mailing-List: contact issues-help@cordova.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cordova.apache.org Delivered-To: mailing list issues@cordova.apache.org Received: (qmail 28932 invoked by uid 99); 21 Mar 2013 04:17:15 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 21 Mar 2013 04:17:15 +0000 Date: Thu, 21 Mar 2013 04:17:15 +0000 (UTC) From: "Dimitri Adamou (JIRA)" To: issues@cordova.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Created] (CB-2737) Camera.getPicture(); aspect ratio resize. Camera.cs MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 Dimitri Adamou created CB-2737: ---------------------------------- Summary: Camera.getPicture(); aspect ratio resize. Camera.cs Key: CB-2737 URL: https://issues.apache.org/jira/browse/CB-2737 Project: Apache Cordova Issue Type: Improvement Components: CordovaJS Affects Versions: 2.5.0 Environment: Windows8. Camera.cs Reporter: Dimitri Adamou Assignee: Filip Maj Hey there, noticed windows8 phone proj. was missing aspect ratio resize so added it in (Essentially copied iOS code) --- private struct ResizeDimension { public int width; public int height; } private ResizeDimension ResizeAspectRatio(int oWidth, int oHeight, int tWidth, int tHeight) { ResizeDimension tgt; float widthFactor = (float)tWidth / (float)oWidth; float heightFactor = (float)tHeight / (float)oHeight; float scaleFactor; if (widthFactor > heightFactor) scaleFactor = heightFactor; else scaleFactor = widthFactor; tgt.width = (int)Math.Min((float)oWidth * scaleFactor, tWidth); tgt.height= (int)Math.Min((float)oHeight * scaleFactor, tHeight); return tgt; } --- and works via ResizeDimension rd = ResizeAspectRatio(image.PixelWidth, image.PixelHeight, cameraOptions.TargetWidth, cameraOptions.TargetHeight); image.SaveJpeg(stream, rd.width, rd.height, 0, cameraOptions.Quality); Cheers, Dim -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira