{"id":2044,"date":"2026-10-29T09:13:00","date_gmt":"2026-10-29T13:13:00","guid":{"rendered":"https:\/\/www.xconvert.com\/blog\/?p=2044"},"modified":"2026-08-31T23:07:08","modified_gmt":"2026-09-01T03:07:08","slug":"resize-image-exact-dimensions-without-stretching","status":"publish","type":"post","link":"https:\/\/www.xconvert.com\/blog\/resize-image-exact-dimensions-without-stretching","title":{"rendered":"How to Resize an Image to Exact Dimensions Without Stretching"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">A form wants a photo at exactly 1200 \u00d7 628. You type both numbers into a resizer, hit go, and everyone in the picture comes back slightly wide and squat. Nothing malfunctioned \u2014 you asked a 4:3 photograph to become a 1.91:1 rectangle, and the only way to do that with two numbers is to squash it. This guide explains the mechanics behind that, which control to reach for when you need <em>one<\/em> dimension exact versus <em>both<\/em>, and the one step that gets you both numbers with no distortion at all.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p><strong>Quick answer:<\/strong> You can only hit <strong>both<\/strong> an exact width and an exact height without stretching if the target\u2019s aspect ratio matches your source\u2019s. On <a href=\"https:\/\/www.xconvert.com\/image-converter\">xconvert\u2019s image converter<\/a>, <strong>Width (Keep aspect ratio)<\/strong> and <strong>Height (Keep aspect ratio)<\/strong> pin one dimension and compute the other, so nothing distorts. <strong>Width x Height<\/strong> forces both numbers and <em>will<\/em> stretch the picture when the ratios differ \u2014 that mode sends libvips a <code>!<\/code> flag, which the libvips docs describe as forcing \u201cthe exact target size, breaking the aspect ratio\u201d. And <strong>Preset Resolutions sets the HEIGHT<\/strong>: picking <code>1080p<\/code> means 1080 pixels tall, not wide. To get both numbers honestly, <strong>crop to the target ratio first, then resize<\/strong>.<\/p><\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">Jump to a section<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"#why\">Why two numbers can\u2019t both be free<\/a><\/li><li><a href=\"#modes\">The six resize modes and what each one does<\/a><\/li><li><a href=\"#worked\">What you actually get: worked numbers<\/a><\/li><li><a href=\"#crop-first\">Crop first, then resize \u2014 the no-distortion route<\/a><\/li><li><a href=\"#tool\">Resize on xconvert<\/a><\/li><li><a href=\"#faq\">FAQ<\/a><\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"why\">Why two numbers can\u2019t both be free<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">An image has an <strong>aspect ratio<\/strong> \u2014 width divided by height. A 4000 \u00d7 3000 photo is 4:3, or 1.333. That ratio is a property of the picture, not of the file, and resizing cannot change it without changing the shape of everything inside the frame.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So when you specify a target, you are really choosing one of three things:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li><strong>One dimension exact, the other free.<\/strong> The resizer computes the second number from the ratio. Nothing distorts. This is what you want 90% of the time.<\/li><li><strong>Both dimensions exact, ratio ignored.<\/strong> The image is squeezed or stretched to fit. Circles become ellipses; faces get wide or narrow. This is almost never what you want, and it is what most \u201cjust type both numbers\u201d tools do silently.<\/li><li><strong>Both dimensions exact, ratio preserved.<\/strong> Only possible if you first <em>remove<\/em> some of the picture \u2014 crop to the target ratio, then scale. This is the correct answer whenever a platform demands specific pixel dimensions.<\/li><\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">The reason option 2 exists at all is that occasionally you genuinely need a fixed canvas and do not care about a few percent of distortion \u2014 a texture map, a UI asset, a placeholder. Knowing which mode you are in is the whole skill.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"modes\">The six resize modes and what each one does<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">xconvert\u2019s <strong>Image resolution<\/strong> group is on the page before you add anything, and offers six modes. They are not six flavours of the same thing:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"2400\" height=\"1184\" src=\"https:\/\/www.xconvert.com\/blog\/wp-content\/uploads\/2026\/08\/resize-modes.png\" alt=\"Comparison grid of the six image resize modes on xconvert \u2014 Resolution Percentage, Keep original, Preset Resolutions, Width, Height and Width x Height \u2014 showing what each sets, how the other dimension is derived, and which one breaks the aspect ratio\" class=\"wp-image-2042\" srcset=\"https:\/\/www.xconvert.com\/blog\/wp-content\/uploads\/2026\/08\/resize-modes.png 2400w, https:\/\/www.xconvert.com\/blog\/wp-content\/uploads\/2026\/08\/resize-modes-300x148.png 300w, https:\/\/www.xconvert.com\/blog\/wp-content\/uploads\/2026\/08\/resize-modes-1024x505.png 1024w, https:\/\/www.xconvert.com\/blog\/wp-content\/uploads\/2026\/08\/resize-modes-768x379.png 768w, https:\/\/www.xconvert.com\/blog\/wp-content\/uploads\/2026\/08\/resize-modes-1536x758.png 1536w, https:\/\/www.xconvert.com\/blog\/wp-content\/uploads\/2026\/08\/resize-modes-2048x1010.png 2048w\" sizes=\"auto, (max-width: 2400px) 100vw, 2400px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">A few specifics worth having in front of you:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Width (Keep aspect ratio)<\/strong> and <strong>Height (Keep aspect ratio)<\/strong> say so right in their labels. Pin one number; the other follows.<\/li><li><strong>Preset Resolutions<\/strong> offers a <code>Preset<\/code> dropdown of <code>4320p (8k)<\/code>, <code>2160p (4k)<\/code>, <code>1440p<\/code>, <code>1080p<\/code>, <code>768p<\/code>, <code>720p<\/code> and so on down to <code>16P<\/code>. The <code>p<\/code> is the giveaway: these are <strong>vertical<\/strong> line counts, exactly as in video. Choosing <code>1080p<\/code> gives you an image <strong>1080 pixels tall<\/strong> with whatever width the ratio produces. If you needed 1080 pixels <em>wide<\/em>, this is the wrong control \u2014 use Width instead.<\/li><li><strong>Resolution Percentage<\/strong> scales both dimensions by the same percentage, so it is aspect-safe by construction. Good for \u201cmake everything half size\u201d; useless for hitting a specific pixel number.<\/li><li><strong>Keep original<\/strong> is the default: it leaves the pixel dimensions exactly as they came in, which is what you want when you are only changing format or compression.<\/li><li><strong>Width x Height<\/strong> is the only mode with no \u201ckeep aspect ratio\u201d in its name, and that omission is the documentation. It forces both values.<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>The unit trap.<\/strong> The Width and Height fields have a unit dropdown alongside them offering <strong>Pixels<\/strong> and <strong>Percent (%)<\/strong> \u2014 and the field opens at <strong>75<\/strong> with <strong>Percent (%)<\/strong> preselected. Type <code>1200<\/code> without touching that dropdown and you have asked for 1200 <strong>percent<\/strong>, a twelvefold enlargement. Switch the unit to <strong>Pixels<\/strong> before you type the number. This is the single most common way an exact-dimensions resize goes wrong.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"worked\">What you actually get: worked numbers<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Take a 4000 \u00d7 3000 photo \u2014 an ordinary 4:3 camera or phone shot \u2014 and ask for each of these:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>What you want<\/th><th>Mode to use<\/th><th>What you get<\/th><\/tr><\/thead><tbody><tr><td>1200 px wide, undistorted<\/td><td><strong>Width (Keep aspect ratio)<\/strong> = 1200 Pixels<\/td><td>1200 \u00d7 900<\/td><\/tr><tr><td>1080 px tall, undistorted<\/td><td><strong>Height (Keep aspect ratio)<\/strong> = 1080 Pixels<\/td><td>1440 \u00d7 1080<\/td><\/tr><tr><td>\u201c1080p\u201d<\/td><td><strong>Preset Resolutions<\/strong> \u2192 <code>1080p<\/code><\/td><td>1440 \u00d7 1080 \u2014 the preset set the <em>height<\/em><\/td><\/tr><tr><td>Half size<\/td><td><strong>Resolution Percentage<\/strong> = 50<\/td><td>2000 \u00d7 1500<\/td><\/tr><tr><td>Exactly 1200 \u00d7 628<\/td><td><strong>Width x Height<\/strong> = 1200 \u00d7 628 Pixels<\/td><td>1200 \u00d7 628, <strong>visibly squashed<\/strong><\/td><\/tr><tr><td>Exactly 1200 \u00d7 628, undistorted<\/td><td>Crop to 1.91:1 first, then <strong>Width<\/strong> = 1200<\/td><td>1200 \u00d7 628, correct<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">And because the second number is always the ratio\u2019s decision, here is what different sources produce for the same request:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Source aspect ratio<\/th><th>Typical source<\/th><th>Height set to 1080 gives<\/th><th>Width set to 1200 gives<\/th><\/tr><\/thead><tbody><tr><td>1:1 (square)<\/td><td>2000 \u00d7 2000<\/td><td>1080 \u00d7 1080<\/td><td>1200 \u00d7 1200<\/td><\/tr><tr><td>4:3<\/td><td>4000 \u00d7 3000<\/td><td>1440 \u00d7 1080<\/td><td>1200 \u00d7 900<\/td><\/tr><tr><td>3:2 (most DSLRs)<\/td><td>6000 \u00d7 4000<\/td><td>1620 \u00d7 1080<\/td><td>1200 \u00d7 800<\/td><\/tr><tr><td>16:9<\/td><td>3840 \u00d7 2160<\/td><td>1920 \u00d7 1080<\/td><td>1200 \u00d7 675<\/td><\/tr><tr><td>9:16 (phone portrait)<\/td><td>1080 \u00d7 1920<\/td><td>608 \u00d7 1080<\/td><td>1200 \u00d7 2133<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Read the 9:16 row twice. Setting a width of 1200 on a portrait phone photo produces something 2133 pixels tall \u2014 larger than the original in one direction. If a size limit is what you are chasing, <a href=\"https:\/\/www.xconvert.com\/blog\/resize-an-image-for-the-web\/\">how to resize an image for the web<\/a> covers the dimensions-versus-file-size distinction properly.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"crop-first\">Crop first, then resize \u2014 the no-distortion route<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">When a platform insists on exact pixel dimensions, do it in two passes:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li><strong>Work out the target ratio.<\/strong> Divide the required width by the required height. 1200 \u00f7 628 = 1.91. 1080 \u00f7 1080 = 1.0. 1280 \u00f7 720 = 1.78.<\/li><li><strong>Crop the source to that ratio<\/strong> with <a href=\"https:\/\/www.xconvert.com\/crop-image\">xconvert\u2019s image cropper<\/a>, choosing which part of the picture to keep. This is the step that decides what gets sacrificed \u2014 and <em>you<\/em> should decide it, not an algorithm that squashes the whole frame instead.<\/li><li><strong>Resize the cropped file<\/strong> with <strong>Width (Keep aspect ratio)<\/strong> set to the required width in Pixels. Because the ratio now matches, the height lands on the required number automatically.<\/li><\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Two practical notes. <strong>Crop before you scale down<\/strong>, not after: cropping a 4000 px original leaves far more pixels to work with than cropping a 1200 px reduction. And <strong>don\u2019t upscale to hit a minimum<\/strong> \u2014 enlarging past the original resolution invents pixels and looks soft; if a portal demands 2000 px from a 1200 px source, re-shoot or re-export from the original rather than stretching. For the quality side of downscaling, see <a href=\"https:\/\/www.xconvert.com\/blog\/resize-image-without-losing-quality-windows-11\/\">how to resize an image without losing quality on Windows 11<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"tool\">Resize on xconvert<\/h2>\n\n\n\n<ol class=\"wp-block-list\"><li>Open <a href=\"https:\/\/www.xconvert.com\/image-converter\">xconvert.com\/image-converter<\/a> and click <strong>Upload<\/strong> to add your file \u2014 from your computer, Google Drive or Dropbox.<\/li><li>Scroll to the <strong>Image resolution<\/strong> group. It is rendered on the page from the start, so you can set it before or after the file goes up.<\/li><li>Choose your mode: <strong>Width (Keep aspect ratio)<\/strong> or <strong>Height (Keep aspect ratio)<\/strong> for one exact dimension, <strong>Preset Resolutions<\/strong> to pick a standard height, <strong>Resolution Percentage<\/strong> to scale proportionally, or <strong>Width x Height<\/strong> only when you deliberately want both numbers forced.<\/li><li><strong>Set the unit dropdown to <code>Pixels<\/code>.<\/strong> It opens on <strong>Percent (%)<\/strong> with a value of 75, so this is the step to do before typing anything.<\/li><li>Type your number. If you picked Width, leave the height alone \u2014 it is being computed for you.<\/li><li><strong>Check the output format.<\/strong> The <strong>Image File Extension<\/strong> dropdown at the top of the panel opens on <strong>JPG<\/strong>, so a PNG resized without touching it comes back as a JPEG \u2014 and with the transparency flattened. Set it to match your source unless you actually want the conversion.<\/li><li>If the file also needs to be smaller in bytes, use the separate <strong>Image Compression<\/strong> group, which on this converter offers two modes: <strong>Quality Preset<\/strong> and <strong>Specific file size<\/strong>.<\/li><li>Convert and download the result.<\/li><\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Your file uploads over an encrypted connection, is processed on our servers, and is deleted automatically a few hours later.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"faq\">FAQ<\/h2>\n\n\n\n<h5 class=\"wp-block-heading\">How do I resize an image to exact dimensions without stretching it?<\/h5>\n\n\n\n<p class=\"wp-block-paragraph\">Crop to the target aspect ratio first, then set just one dimension. Divide your required width by your required height to get the ratio, crop the source to that shape with the <a href=\"https:\/\/www.xconvert.com\/crop-image\">image cropper<\/a>, then use <strong>Width (Keep aspect ratio)<\/strong> in Pixels to set the width. The height lands on the required number by itself, because the ratio already matches. Typing both numbers into <strong>Width x Height<\/strong> will hit both figures but squash the picture.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\">Why does my image look squashed after resizing?<\/h5>\n\n\n\n<p class=\"wp-block-paragraph\">Because you used a mode that forces both dimensions. On xconvert that is <strong>Width x Height<\/strong>; the underlying resize sends libvips a size argument ending in <code>!<\/code>, which the libvips documentation describes as forcing \u201ca resize to the exact target size, breaking the aspect ratio\u201d. Switch to a single-dimension mode, or crop first.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\">What does \u201c1080p\u201d mean in the Preset Resolutions dropdown?<\/h5>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>1080 pixels of height.<\/strong> The presets use the video convention where the number is the vertical line count \u2014 <code>1080p<\/code>, <code>720p<\/code>, <code>480p<\/code> and so on. A 4:3 photo set to <code>1080p<\/code> comes out 1440 \u00d7 1080; a 16:9 photo comes out 1920 \u00d7 1080. If what you need is 1080 pixels across, use <strong>Width (Keep aspect ratio)<\/strong> and type 1080 instead.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\">I typed 1200 in the Width box and got a huge image. What happened?<\/h5>\n\n\n\n<p class=\"wp-block-paragraph\">The unit dropdown was still on <strong>Percent (%)<\/strong>, its default, so you asked for 1200% \u2014 twelve times the original width. The Width and Height fields open at a value of 75 with Percent selected, which is convenient for \u201cmake it three-quarters\u201d and a trap for exact pixel work. Change the unit to <strong>Pixels<\/strong> first, then type your number.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\">Should I set width or height when I only care about one of them?<\/h5>\n\n\n\n<p class=\"wp-block-paragraph\">Set the one your constraint actually names. Web layouts and content columns are usually width-constrained, so set <strong>Width<\/strong>. Video-adjacent and gallery contexts are usually height-constrained, so set <strong>Height<\/strong> \u2014 or use a preset, since those set height anyway. When a rule says \u201cno larger than 1200 \u00d7 1200\u201d, set whichever of your image\u2019s dimensions is <em>longer<\/em>; the other will come in under the limit automatically.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\">Does resizing to exact dimensions reduce the file size too?<\/h5>\n\n\n\n<p class=\"wp-block-paragraph\">Usually yes, because fewer pixels means less data \u2014 and the saving is quadratic, so halving both dimensions leaves roughly a quarter of the pixels. But dimensions and bytes are separate controls: the <strong>Image Compression<\/strong> group on the same page is what you use when a portal caps the file size in KB rather than the picture in pixels. On this converter it offers <strong>Quality Preset<\/strong> and <strong>Specific file size<\/strong> \u2014 type the cap straight into Specific file size. The two percentage-based modes (Target file size (%) and Image Quality (%)) are not shown here; they appear on the dedicated compressor pages such as <a href=\"https:\/\/www.xconvert.com\/compress-jpg\">Compress JPG<\/a> instead.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Sources<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Last verified 2026-08-31.<\/em><\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/www.libvips.org\/API\/current\/using-vipsthumbnail.html\">libvips \u2014 Using vipsthumbnail<\/a> \u2014 the <code>--size<\/code> behaviour behind the resize modes: <code>200x<\/code> \u201cwill resize to 200 pixels across, no matter what the height of the input image is\u201d, and \u201cYou can append <code>!<\/code> to force a resize to the exact target size, breaking the aspect ratio.\u201d<\/li><li><a href=\"https:\/\/www.xconvert.com\/image-converter\">xconvert Image Converter<\/a> \u2014 the live control names and defaults quoted here: the <strong>Upload<\/strong> button, the six <strong>Image resolution<\/strong> modes (Resolution Percentage, Keep original, Preset Resolutions, Width (Keep aspect ratio), Height (Keep aspect ratio), Width x Height), the Preset list, the two <strong>Image Compression<\/strong> modes shown on a convert page (Quality Preset and Specific file size), and the dimension field opening at 75 with <strong>Percent (%)<\/strong> preselected.<\/li><li><a href=\"https:\/\/www.xconvert.com\/crop-image\">xconvert Crop Image<\/a> \u2014 the crop-to-ratio step in the two-pass workflow.<\/li><\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Resize an image to exact dimensions without stretching: set one dimension to keep the ratio, and crop to the target ratio first when you need both.<\/p>\n","protected":false},"author":3,"featured_media":2041,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5,14],"tags":[],"class_list":["post-2044","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-how-to-guides","category-tools"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How to Resize an Image to Exact Dimensions Without Stretching<\/title>\n<meta name=\"description\" content=\"Resize an image to exact dimensions without stretching: set one dimension to keep the ratio, and crop to the target ratio first when you need both.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.xconvert.com\/blog\/resize-image-exact-dimensions-without-stretching\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Resize an Image to Exact Dimensions Without Stretching\" \/>\n<meta property=\"og:description\" content=\"Resize an image to exact dimensions without stretching: set one dimension to keep the ratio, and crop to the target ratio first when you need both.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.xconvert.com\/blog\/resize-image-exact-dimensions-without-stretching\" \/>\n<meta property=\"og:site_name\" content=\"XConvert Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/xconvertcom\" \/>\n<meta property=\"article:published_time\" content=\"2026-10-29T13:13:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.xconvert.com\/blog\/wp-content\/uploads\/2026\/08\/featured-44.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1600\" \/>\n\t<meta property=\"og:image:height\" content=\"840\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"James\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@xconvert_com\" \/>\n<meta name=\"twitter:site\" content=\"@xconvert_com\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"James\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/resize-image-exact-dimensions-without-stretching#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/resize-image-exact-dimensions-without-stretching\"},\"author\":{\"name\":\"James\",\"@id\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/#\\\/schema\\\/person\\\/3434db135e6a7f239ba8414244df9845\"},\"headline\":\"How to Resize an Image to Exact Dimensions Without Stretching\",\"datePublished\":\"2026-10-29T13:13:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/resize-image-exact-dimensions-without-stretching\"},\"wordCount\":1855,\"image\":{\"@id\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/resize-image-exact-dimensions-without-stretching#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/featured-44.png\",\"articleSection\":[\"How To Guides\",\"Tools\"],\"inLanguage\":\"en-CA\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/resize-image-exact-dimensions-without-stretching\",\"url\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/resize-image-exact-dimensions-without-stretching\",\"name\":\"How to Resize an Image to Exact Dimensions Without Stretching\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/resize-image-exact-dimensions-without-stretching#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/resize-image-exact-dimensions-without-stretching#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/featured-44.png\",\"datePublished\":\"2026-10-29T13:13:00+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/#\\\/schema\\\/person\\\/3434db135e6a7f239ba8414244df9845\"},\"description\":\"Resize an image to exact dimensions without stretching: set one dimension to keep the ratio, and crop to the target ratio first when you need both.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/resize-image-exact-dimensions-without-stretching#breadcrumb\"},\"inLanguage\":\"en-CA\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/resize-image-exact-dimensions-without-stretching\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-CA\",\"@id\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/resize-image-exact-dimensions-without-stretching#primaryimage\",\"url\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/featured-44.png\",\"contentUrl\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/featured-44.png\",\"width\":1600,\"height\":840,\"caption\":\"The xconvert image converter at \\\/image-converter with the Upload button highlighted - add a photo to resize it to an exact width or height\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/resize-image-exact-dimensions-without-stretching#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.xconvert.com\\\/blog\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to Resize an Image to Exact Dimensions Without Stretching\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/\",\"name\":\"XConvert Blog\",\"description\":\"Blog for XConvert file converter\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-CA\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/#\\\/schema\\\/person\\\/3434db135e6a7f239ba8414244df9845\",\"name\":\"James\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-CA\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/46be416a360dc6b95bffc4b116d86872c03f8d8e4c1047a3a08033742f03d04d?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/46be416a360dc6b95bffc4b116d86872c03f8d8e4c1047a3a08033742f03d04d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/46be416a360dc6b95bffc4b116d86872c03f8d8e4c1047a3a08033742f03d04d?s=96&d=mm&r=g\",\"caption\":\"James\"},\"url\":\"https:\\\/\\\/www.xconvert.com\\\/blog\\\/author\\\/james\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to Resize an Image to Exact Dimensions Without Stretching","description":"Resize an image to exact dimensions without stretching: set one dimension to keep the ratio, and crop to the target ratio first when you need both.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.xconvert.com\/blog\/resize-image-exact-dimensions-without-stretching","og_locale":"en_US","og_type":"article","og_title":"How to Resize an Image to Exact Dimensions Without Stretching","og_description":"Resize an image to exact dimensions without stretching: set one dimension to keep the ratio, and crop to the target ratio first when you need both.","og_url":"https:\/\/www.xconvert.com\/blog\/resize-image-exact-dimensions-without-stretching","og_site_name":"XConvert Blog","article_publisher":"https:\/\/www.facebook.com\/xconvertcom","article_published_time":"2026-10-29T13:13:00+00:00","og_image":[{"width":1600,"height":840,"url":"https:\/\/www.xconvert.com\/blog\/wp-content\/uploads\/2026\/08\/featured-44.png","type":"image\/png"}],"author":"James","twitter_card":"summary_large_image","twitter_creator":"@xconvert_com","twitter_site":"@xconvert_com","twitter_misc":{"Written by":"James","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.xconvert.com\/blog\/resize-image-exact-dimensions-without-stretching#article","isPartOf":{"@id":"https:\/\/www.xconvert.com\/blog\/resize-image-exact-dimensions-without-stretching"},"author":{"name":"James","@id":"https:\/\/www.xconvert.com\/blog\/#\/schema\/person\/3434db135e6a7f239ba8414244df9845"},"headline":"How to Resize an Image to Exact Dimensions Without Stretching","datePublished":"2026-10-29T13:13:00+00:00","mainEntityOfPage":{"@id":"https:\/\/www.xconvert.com\/blog\/resize-image-exact-dimensions-without-stretching"},"wordCount":1855,"image":{"@id":"https:\/\/www.xconvert.com\/blog\/resize-image-exact-dimensions-without-stretching#primaryimage"},"thumbnailUrl":"https:\/\/www.xconvert.com\/blog\/wp-content\/uploads\/2026\/08\/featured-44.png","articleSection":["How To Guides","Tools"],"inLanguage":"en-CA"},{"@type":"WebPage","@id":"https:\/\/www.xconvert.com\/blog\/resize-image-exact-dimensions-without-stretching","url":"https:\/\/www.xconvert.com\/blog\/resize-image-exact-dimensions-without-stretching","name":"How to Resize an Image to Exact Dimensions Without Stretching","isPartOf":{"@id":"https:\/\/www.xconvert.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.xconvert.com\/blog\/resize-image-exact-dimensions-without-stretching#primaryimage"},"image":{"@id":"https:\/\/www.xconvert.com\/blog\/resize-image-exact-dimensions-without-stretching#primaryimage"},"thumbnailUrl":"https:\/\/www.xconvert.com\/blog\/wp-content\/uploads\/2026\/08\/featured-44.png","datePublished":"2026-10-29T13:13:00+00:00","author":{"@id":"https:\/\/www.xconvert.com\/blog\/#\/schema\/person\/3434db135e6a7f239ba8414244df9845"},"description":"Resize an image to exact dimensions without stretching: set one dimension to keep the ratio, and crop to the target ratio first when you need both.","breadcrumb":{"@id":"https:\/\/www.xconvert.com\/blog\/resize-image-exact-dimensions-without-stretching#breadcrumb"},"inLanguage":"en-CA","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.xconvert.com\/blog\/resize-image-exact-dimensions-without-stretching"]}]},{"@type":"ImageObject","inLanguage":"en-CA","@id":"https:\/\/www.xconvert.com\/blog\/resize-image-exact-dimensions-without-stretching#primaryimage","url":"https:\/\/www.xconvert.com\/blog\/wp-content\/uploads\/2026\/08\/featured-44.png","contentUrl":"https:\/\/www.xconvert.com\/blog\/wp-content\/uploads\/2026\/08\/featured-44.png","width":1600,"height":840,"caption":"The xconvert image converter at \/image-converter with the Upload button highlighted - add a photo to resize it to an exact width or height"},{"@type":"BreadcrumbList","@id":"https:\/\/www.xconvert.com\/blog\/resize-image-exact-dimensions-without-stretching#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.xconvert.com\/blog"},{"@type":"ListItem","position":2,"name":"How to Resize an Image to Exact Dimensions Without Stretching"}]},{"@type":"WebSite","@id":"https:\/\/www.xconvert.com\/blog\/#website","url":"https:\/\/www.xconvert.com\/blog\/","name":"XConvert Blog","description":"Blog for XConvert file converter","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.xconvert.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-CA"},{"@type":"Person","@id":"https:\/\/www.xconvert.com\/blog\/#\/schema\/person\/3434db135e6a7f239ba8414244df9845","name":"James","image":{"@type":"ImageObject","inLanguage":"en-CA","@id":"https:\/\/secure.gravatar.com\/avatar\/46be416a360dc6b95bffc4b116d86872c03f8d8e4c1047a3a08033742f03d04d?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/46be416a360dc6b95bffc4b116d86872c03f8d8e4c1047a3a08033742f03d04d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/46be416a360dc6b95bffc4b116d86872c03f8d8e4c1047a3a08033742f03d04d?s=96&d=mm&r=g","caption":"James"},"url":"https:\/\/www.xconvert.com\/blog\/author\/james"}]}},"_links":{"self":[{"href":"https:\/\/www.xconvert.com\/blog\/wp-json\/wp\/v2\/posts\/2044","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.xconvert.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.xconvert.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.xconvert.com\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.xconvert.com\/blog\/wp-json\/wp\/v2\/comments?post=2044"}],"version-history":[{"count":1,"href":"https:\/\/www.xconvert.com\/blog\/wp-json\/wp\/v2\/posts\/2044\/revisions"}],"predecessor-version":[{"id":2045,"href":"https:\/\/www.xconvert.com\/blog\/wp-json\/wp\/v2\/posts\/2044\/revisions\/2045"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.xconvert.com\/blog\/wp-json\/wp\/v2\/media\/2041"}],"wp:attachment":[{"href":"https:\/\/www.xconvert.com\/blog\/wp-json\/wp\/v2\/media?parent=2044"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.xconvert.com\/blog\/wp-json\/wp\/v2\/categories?post=2044"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.xconvert.com\/blog\/wp-json\/wp\/v2\/tags?post=2044"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}