{"id":29831,"date":"2024-05-07T12:10:02","date_gmt":"2024-05-07T19:10:02","guid":{"rendered":"https:\/\/cloudinary.com\/blog\/?p=29831"},"modified":"2025-10-20T16:13:21","modified_gmt":"2025-10-20T23:13:21","slug":"generative-fill-ai-powered-outpainting","status":"publish","type":"post","link":"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting","title":{"rendered":"Generative Fill AI | Expanding Images With Cloudinary\u2019s AI-Powered Outpainting"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Introduction<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>In this article:<\/strong><br><br><a href=\"#introduction\">Introduction<\/a><\/li>\n\n\n\n<li><a href=\"#how_generative_fill_works\">How Generative Fill Works<\/a><\/li>\n\n\n\n<li><a href=\"#padding_crop_modes\">Padding Crop Modes<\/a><\/li>\n\n\n\n<li><a href=\"#examples_with_crop_modes\">Examples With Crop Modes<\/a>\n<ul class=\"wp-block-list\">\n<li><a href=\"#standard_padding_c_pad_\">Standard Padding (c_pad)<\/a><\/li>\n\n\n\n<li><a href=\"#limit_pad_c_lpad_\">Limit Pad (c_lpad)<\/a><\/li>\n\n\n\n<li><a href=\"#minimum_pad_c_mpad_\">Minimum Pad (c_mpad)<\/a><\/li>\n\n\n\n<li><a href=\"#fill_pad_c_fill_pad_\">Fill Pad (c_fill_pad)<\/a><\/li>\n\n\n\n<li><a href=\"#behind_the_scenes\">Behind the Scenes<\/a><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><a href=\"#use_cases\">Use Cases<\/a><\/li>\n\n\n\n<li><a href=\"#conclusion\">Conclusion<\/a><\/li>\n\n\n\n<li><a href=\"#frequently_asked_questions\">Frequently Asked Questions<\/a><\/li>\n<\/ul>\n\n\n\n<p>AI Generative Fill with Outpainting is perfect for those who need their images to fit different formats or for anyone looking to add a bit of magic to their visuals. It\u2019s designed to keep the storytelling intact while making your images ready for any platform or layout.<\/p>\n\n\n\n<p>At its core, this technology taps into advanced AI algorithms to predict and generate pixels that extend beyond an image&#8217;s original borders. It\u2019s more than just stretching and filling out your photos; it\u2019s understanding the context of your original picture and crafting pixels that match its style and setting. This means that the transition looks natural, whether you\u2019re converting a portrait to a landscape or adding more sky to your beach sunset photo.<\/p>\n\n\n\n<p><strong>Cloudinary Generative Fill<\/strong> builds on the Generative Remove and\u00a0<a href=\"https:\/\/cloudinary.com\/documentation\/effects_and_artistic_enhancements#generative_replace\">Generative Replace<\/a>\u00a0capabilities, Generative Fill also leverages AI to expand and extend original images. This feature is especially valuable when transforming images from vertical to horizontal orientations by seamlessly blending the new AI-generated background with the existing content, which can satisfy many practical use cases.<\/p>\n\n\n\n<p>Like all of the features of Cloudinary&#8217;s broad AI offerings, Generative Fill allows you to achieve creative possibilities programmatically, significantly, and at scale, reducing workflow time and increasing your content velocity. If you have multiple images or would like to programmatically adapt generative fill to your website with AI, this feature has been built for you!<\/p>\n\n\n\n<p>Generative Fill is perfect for those who need their images to fit different formats or for anyone looking to add a bit of magic to their visuals. It&#8217;s designed to keep the storytelling intact while making your images ready for any platform or layout.<\/p>\n\n\n\n<p>Try out Generative Fill and other cutting-edge features at our new&nbsp;<a href=\"http:\/\/ai.cloudinary.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">Generative AI Playground<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Generative Fill in Action<\/h2>\n\n\n\n<p>Check out this video in order to see how generative AI works with <a href=\"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting#examples_with_crop_modes\">real examples<\/a>. Cloudinary\u2019s API uses a process called <em>outpainting<\/em> that enables the expansion of images by only modifying the URL.<\/p>\n\n\n<cld-video-player\n      cloud-name='demo'\n      public-id='v1687556499\/ai\/fill_m_pad_example'\n      js-config='{\"playbackRates\":[0.5,1,1.5,2]}'\n      style='max-width: ;'\n      class='c-video-player'\n      \n      core-version='2.12.3'\n      player-version='1.7.0'\n      >\n      <video\n        id='_video-player69d04f11defa6'\n        data-cld-big-play-button='init'\n        data-cld-source-types='[\"hls\",\"webm\\\/vp9\",\"mp4\\\/h265\",\"mp4\"]'\n        controls\n        muted\n        class='cld-video-player cld-fluid wp-block-cloudinary-video-player  cld-video-player-skin-dark'\n      ><\/video>\n    <\/cld-video-player>\n\n\n<p><a href=\"https:\/\/cloudinary.com\/users\/register_free\">Sign up for free and try it yourself!<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How Generative Fill Works<\/h2>\n\n\n\n<p>Generative Fill works with Cloudinary&#8217;s padding crop modes and leverages the new <code>gen_fill<\/code> option for backgrounds (or <code>b_gen_fill<\/code> for the URL API). Combining these options allows users to achieve a visually pleasing fill that seamlessly matches the original image.&nbsp;<\/p>\n\n\n\n<p>Moreover, Generative Fill allows users to add a natural language prompt to the <code>gen_fill<\/code> command, enhancing creative control over the generated background.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Padding Crop Modes<\/h3>\n\n\n\n<p>The padding crop modes that work with generative fill backgrounds are:<\/p>\n\n\n\n<p><strong>Pad.<\/strong> Resizes asset with optional padding, maintaining aspect ratio and visibility.<\/p>\n\n\n\n<p><strong>Limit Pad.<\/strong> Scales down an asset with padding if larger than the specified limit, maintaining aspect ratio and visibility.<\/p>\n\n\n\n<p><strong>Minimum Pad<\/strong>. Adds padding to a smaller image to achieve a minimum width\/height without scaling, maintaining the aspect ratio of the original.<\/p>\n\n\n\n<p><strong>Fill Pad. <\/strong>Prevents &#8220;bad crop&#8221; by using fill mode and adding padding if needed, must be used in conjunction with g_auto.<\/p>\n\n\n<div class='c-callout  c-callout--inline-title c-callout--note'><strong class='c-callout__title'>Note:<\/strong> <p>For more information, check out the <a href=\"https:\/\/cloudinary.com\/documentation\/transformation_reference#b_gen_fill\">documentation<\/a> or try the <a href=\"https:\/\/ai.cloudinary.com\/demos\/fill\">demo<\/a>.<\/p>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">Examples With Crop Modes<\/h3>\n\n\n\n<p>Below are some real examples of Generative Fill using our various padding crop modes. We\u2019ll be using the same portrait\/vertical image of a&nbsp; model with a width of 600 and a height of 900 to illustrate the differences between the modes when <code>b_gen_fill<\/code> is used:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/demo\/image\/upload\/v1688051275\/ai\/original.jpg\" alt=\"Image of a woman standing in a garden with palm trees which will be the starting point for the AI fill image project\"\/><figcaption class=\"wp-element-caption\">Original image, 600&#215;900<\/figcaption><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Standard Padding (c_pad)<\/h4>\n\n\n\n<p class=\"has-text-align-left\">Resizes assets with optional padding, maintaining aspect ratio and visibility of the original with the new areas generatively filled in. For this example, we\u2019ve padded the original to a <a href=\"https:\/\/cloudinary.com\/glossary\/11-aspect-ratio\">1:1 aspect ratio<\/a>:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/demo\/image\/upload\/v1688051275\/ai\/c_pad.jpg\" alt=\"Image of a woman standing in a garden with palm trees with AI fill image padding to expand the aspect ratio\"\/><\/figure>\n\n\n<cld-code-widget\n      class=\"wp-block-cloudinary-transformation-widget c-code-widget\"\n      snippets=\"[{&quot;sdkId&quot;:&quot;nodejs&quot;,&quot;framework&quot;:&quot;nodejs&quot;,&quot;language&quot;:&quot;nodejs&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image(\\&quot;ai\\\/woman_model.jpg\\&quot;, {background: \\&quot;gen_fill\\&quot;, aspect_ratio: \\&quot;1:1\\&quot;, crop: \\&quot;pad\\&quot;})&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image(\\&quot;ai\\\/woman_model.jpg\\&quot;, {background: \\&quot;gen_fill\\&quot;, aspect_ratio: \\&quot;1:1\\&quot;, crop: \\&quot;pad\\&quot;})&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Node.js&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;react_2&quot;,&quot;framework&quot;:&quot;react_2&quot;,&quot;language&quot;:&quot;react&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    pad()\\n      .aspectRatio(ar1X1())\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    pad()\\n      .aspectRatio(ar1X1())\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;React&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/react&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;react&quot;,&quot;framework&quot;:&quot;react&quot;,&quot;language&quot;:&quot;react&quot;,&quot;rawCodeSnippet&quot;:&quot;&lt;Image publicId=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt; &lt;Transformation background=\\&quot;gen_fill\\&quot; aspectRatio=\\&quot;1:1\\&quot; crop=\\&quot;pad\\&quot; \\\/&gt; &lt;\\\/Image&gt;&quot;,&quot;codeSnippet&quot;:&quot;&lt;Image publicId=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt;\\n\\t&lt;Transformation background=\\&quot;gen_fill\\&quot; aspectRatio=\\&quot;1:1\\&quot; crop=\\&quot;pad\\&quot; \\\/&gt;\\n&lt;\\\/Image&gt;&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;React&quot;,&quot;packageName&quot;:&quot;cloudinary-react&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;vue_2&quot;,&quot;framework&quot;:&quot;vue_2&quot;,&quot;language&quot;:&quot;vue&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    pad()\\n      .aspectRatio(ar1X1())\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    pad()\\n      .aspectRatio(ar1X1())\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Vue.js&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/vue&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;vue&quot;,&quot;framework&quot;:&quot;vue&quot;,&quot;language&quot;:&quot;vue&quot;,&quot;rawCodeSnippet&quot;:&quot;&lt;cld-image public-id=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt; &lt;cld-transformation background=\\&quot;gen_fill\\&quot; aspect-ratio=\\&quot;1:1\\&quot; crop=\\&quot;pad\\&quot; \\\/&gt; &lt;\\\/cld-image&gt;&quot;,&quot;codeSnippet&quot;:&quot;&lt;cld-image public-id=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt;\\n\\t&lt;cld-transformation background=\\&quot;gen_fill\\&quot; aspect-ratio=\\&quot;1:1\\&quot; crop=\\&quot;pad\\&quot; \\\/&gt;\\n&lt;\\\/cld-image&gt;&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Vue.js&quot;,&quot;packageName&quot;:&quot;cloudinary-vue&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;angular_2&quot;,&quot;framework&quot;:&quot;angular_2&quot;,&quot;language&quot;:&quot;angular&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    pad()\\n      .aspectRatio(ar1X1())\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    pad()\\n      .aspectRatio(ar1X1())\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Angular&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/ng&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;angular&quot;,&quot;framework&quot;:&quot;angular&quot;,&quot;language&quot;:&quot;angular&quot;,&quot;rawCodeSnippet&quot;:&quot;&lt;cl-image public-id=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt; &lt;cl-transformation background=\\&quot;gen_fill\\&quot; aspect-ratio=\\&quot;1:1\\&quot; crop=\\&quot;pad\\&quot;&gt; &lt;\\\/cl-transformation&gt; &lt;\\\/cl-image&gt;&quot;,&quot;codeSnippet&quot;:&quot;&lt;cl-image public-id=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt;\\n\\t&lt;cl-transformation background=\\&quot;gen_fill\\&quot; aspect-ratio=\\&quot;1:1\\&quot; crop=\\&quot;pad\\&quot;&gt;\\n\\t&lt;\\\/cl-transformation&gt;\\n&lt;\\\/cl-image&gt;&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Angular&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/angular-5.x&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;js_2&quot;,&quot;framework&quot;:&quot;js_2&quot;,&quot;language&quot;:&quot;js&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    pad()\\n      .aspectRatio(ar1X1())\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    pad()\\n      .aspectRatio(ar1X1())\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;JS&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/url-gen&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;js&quot;,&quot;framework&quot;:&quot;js&quot;,&quot;language&quot;:&quot;js&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.imageTag(&#039;ai\\\/woman_model.jpg&#039;, {background: \\&quot;gen_fill\\&quot;, aspectRatio: \\&quot;1:1\\&quot;, crop: \\&quot;pad\\&quot;}).toHtml();&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.imageTag(&#039;ai\\\/woman_model.jpg&#039;, {background: \\&quot;gen_fill\\&quot;, aspectRatio: \\&quot;1:1\\&quot;, crop: \\&quot;pad\\&quot;}).toHtml();&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;JS&quot;,&quot;packageName&quot;:&quot;cloudinary-core&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;python&quot;,&quot;framework&quot;:&quot;python&quot;,&quot;language&quot;:&quot;python&quot;,&quot;rawCodeSnippet&quot;:&quot;CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;).image(background=\\&quot;gen_fill\\&quot;, aspect_ratio=\\&quot;1:1\\&quot;, crop=\\&quot;pad\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;).image(background=\\&quot;gen_fill\\&quot;, aspect_ratio=\\&quot;1:1\\&quot;, crop=\\&quot;pad\\&quot;)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Python&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;php_2&quot;,&quot;framework&quot;:&quot;php_2&quot;,&quot;language&quot;:&quot;php&quot;,&quot;rawCodeSnippet&quot;:&quot;(new ImageTag(&#039;ai\\\/woman_model.jpg&#039;))\\n\\t-&gt;resize(Resize::pad()\\n\\t-&gt;aspectRatio(\\n\\tAspectRatio::ar1X1())\\n\\t-&gt;background(\\n\\tBackground::generativeFill())\\n\\t)\\n\\t-&gt;version(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;(new ImageTag(&#039;ai\\\/woman_model.jpg&#039;))\\n\\t-&gt;resize(Resize::pad()\\n\\t-&gt;aspectRatio(\\n\\tAspectRatio::ar1X1())\\n\\t-&gt;background(\\n\\tBackground::generativeFill())\\n\\t)\\n\\t-&gt;version(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;PHP&quot;,&quot;packageName&quot;:&quot;cloudinary_php&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;3.x&quot;},{&quot;sdkId&quot;:&quot;php&quot;,&quot;framework&quot;:&quot;php&quot;,&quot;language&quot;:&quot;php&quot;,&quot;rawCodeSnippet&quot;:&quot;cl_image_tag(\\&quot;ai\\\/woman_model.jpg\\&quot;, array(\\&quot;background\\&quot;=&gt;\\&quot;gen_fill\\&quot;, \\&quot;aspect_ratio\\&quot;=&gt;\\&quot;1:1\\&quot;, \\&quot;crop\\&quot;=&gt;\\&quot;pad\\&quot;))&quot;,&quot;codeSnippet&quot;:&quot;cl_image_tag(\\&quot;ai\\\/woman_model.jpg\\&quot;, array(\\&quot;background\\&quot;=&gt;\\&quot;gen_fill\\&quot;, \\&quot;aspect_ratio\\&quot;=&gt;\\&quot;1:1\\&quot;, \\&quot;crop\\&quot;=&gt;\\&quot;pad\\&quot;))&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;PHP&quot;,&quot;packageName&quot;:&quot;cloudinary_php&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;java&quot;,&quot;framework&quot;:&quot;java&quot;,&quot;language&quot;:&quot;java&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.url().transformation(new Transformation().background(\\&quot;gen_fill\\&quot;).aspectRatio(\\&quot;1:1\\&quot;).crop(\\&quot;pad\\&quot;)).imageTag(\\&quot;ai\\\/woman_model.jpg\\&quot;);&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.url().transformation(new Transformation().background(\\&quot;gen_fill\\&quot;).aspectRatio(\\&quot;1:1\\&quot;).crop(\\&quot;pad\\&quot;)).imageTag(\\&quot;ai\\\/woman_model.jpg\\&quot;);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Java&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;ruby&quot;,&quot;framework&quot;:&quot;ruby&quot;,&quot;language&quot;:&quot;ruby&quot;,&quot;rawCodeSnippet&quot;:&quot;cl_image_tag(\\&quot;ai\\\/woman_model.jpg\\&quot;, background: \\&quot;gen_fill\\&quot;, aspect_ratio: \\&quot;1:1\\&quot;, crop: \\&quot;pad\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;cl_image_tag(\\&quot;ai\\\/woman_model.jpg\\&quot;, background: \\&quot;gen_fill\\&quot;, aspect_ratio: \\&quot;1:1\\&quot;, crop: \\&quot;pad\\&quot;)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Ruby&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;csharp&quot;,&quot;framework&quot;:&quot;csharp&quot;,&quot;language&quot;:&quot;csharp&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.Api.UrlImgUp.Transform(new Transformation().Background(\\&quot;gen_fill\\&quot;).AspectRatio(\\&quot;1:1\\&quot;).Crop(\\&quot;pad\\&quot;)).BuildImageTag(\\&quot;ai\\\/woman_model.jpg\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.Api.UrlImgUp.Transform(new Transformation().Background(\\&quot;gen_fill\\&quot;).AspectRatio(\\&quot;1:1\\&quot;).Crop(\\&quot;pad\\&quot;)).BuildImageTag(\\&quot;ai\\\/woman_model.jpg\\&quot;)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;.NET&quot;,&quot;packageName&quot;:&quot;CloudinaryDotNet&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;dart&quot;,&quot;framework&quot;:&quot;dart&quot;,&quot;language&quot;:&quot;dart&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image(&#039;ai\\\/woman_model.jpg&#039;).transformation(Transformation()\\n\\t.resize(Resize.pad()\\n\\t.aspectRatio(\\n\\tAspectRatio.ar1X1())\\n\\t.background(\\n\\tBackground.generativeFill())\\n\\t)\\n\\t.version(1687525630));&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image(&#039;ai\\\/woman_model.jpg&#039;).transformation(Transformation()\\n\\t.resize(Resize.pad()\\n\\t.aspectRatio(\\n\\tAspectRatio.ar1X1())\\n\\t.background(\\n\\tBackground.generativeFill())\\n\\t)\\n\\t.version(1687525630));&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Dart&quot;,&quot;packageName&quot;:&quot;cloudinary_dart&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;swift&quot;,&quot;framework&quot;:&quot;swift&quot;,&quot;language&quot;:&quot;swift&quot;,&quot;rawCodeSnippet&quot;:&quot;imageView.cldSetImage(cloudinary.createUrl().setTransformation(CLDTransformation().setBackground(\\&quot;gen_fill\\&quot;).setAspectRatio(\\&quot;1:1\\&quot;).setCrop(\\&quot;pad\\&quot;)).generate(\\&quot;ai\\\/woman_model.jpg\\&quot;)!, cloudinary: cloudinary)&quot;,&quot;codeSnippet&quot;:&quot;imageView.cldSetImage(cloudinary.createUrl().setTransformation(CLDTransformation().setBackground(\\&quot;gen_fill\\&quot;).setAspectRatio(\\&quot;1:1\\&quot;).setCrop(\\&quot;pad\\&quot;)).generate(\\&quot;ai\\\/woman_model.jpg\\&quot;)!, cloudinary: cloudinary)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;iOS&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;5.x&quot;},{&quot;sdkId&quot;:&quot;android&quot;,&quot;framework&quot;:&quot;android&quot;,&quot;language&quot;:&quot;android&quot;,&quot;rawCodeSnippet&quot;:&quot;MediaManager.get().url().transformation(new Transformation().background(\\&quot;gen_fill\\&quot;).aspectRatio(\\&quot;1:1\\&quot;).crop(\\&quot;pad\\&quot;)).generate(\\&quot;ai\\\/woman_model.jpg\\&quot;);&quot;,&quot;codeSnippet&quot;:&quot;MediaManager.get().url().transformation(new Transformation().background(\\&quot;gen_fill\\&quot;).aspectRatio(\\&quot;1:1\\&quot;).crop(\\&quot;pad\\&quot;)).generate(\\&quot;ai\\\/woman_model.jpg\\&quot;);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Android&quot;,&quot;packageName&quot;:&quot;cloudinary-android&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;3.x&quot;},{&quot;sdkId&quot;:&quot;flutter&quot;,&quot;framework&quot;:&quot;flutter&quot;,&quot;language&quot;:&quot;flutter&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image(&#039;ai\\\/woman_model.jpg&#039;).transformation(Transformation()\\n\\t.resize(Resize.pad()\\n\\t.aspectRatio(\\n\\tAspectRatio.ar1X1())\\n\\t.background(\\n\\tBackground.generativeFill())\\n\\t)\\n\\t.version(1687525630));&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image(&#039;ai\\\/woman_model.jpg&#039;).transformation(Transformation()\\n\\t.resize(Resize.pad()\\n\\t.aspectRatio(\\n\\tAspectRatio.ar1X1())\\n\\t.background(\\n\\tBackground.generativeFill())\\n\\t)\\n\\t.version(1687525630));&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Flutter&quot;,&quot;packageName&quot;:&quot;cloudinary_flutter&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;kotlin&quot;,&quot;framework&quot;:&quot;kotlin&quot;,&quot;language&quot;:&quot;kotlin&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image {\\n\\tpublicId(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n\\t resize(Resize.pad() {\\n\\t aspectRatio(\\n\\tAspectRatio.ar1X1())\\n\\t background(\\n\\tBackground.generativeFill())\\n\\t })\\n\\t version(1687525630) \\n}.generate()&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image {\\n\\tpublicId(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n\\t resize(Resize.pad() {\\n\\t aspectRatio(\\n\\tAspectRatio.ar1X1())\\n\\t background(\\n\\tBackground.generativeFill())\\n\\t })\\n\\t version(1687525630) \\n}.generate()&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Kotlin&quot;,&quot;packageName&quot;:&quot;kotlin-url-gen&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;jquery&quot;,&quot;framework&quot;:&quot;jquery&quot;,&quot;language&quot;:&quot;jquery&quot;,&quot;rawCodeSnippet&quot;:&quot;$.cloudinary.image(\\&quot;ai\\\/woman_model.jpg\\&quot;, {background: \\&quot;gen_fill\\&quot;, aspect_ratio: \\&quot;1:1\\&quot;, crop: \\&quot;pad\\&quot;})&quot;,&quot;codeSnippet&quot;:&quot;$.cloudinary.image(\\&quot;ai\\\/woman_model.jpg\\&quot;, {background: \\&quot;gen_fill\\&quot;, aspect_ratio: \\&quot;1:1\\&quot;, crop: \\&quot;pad\\&quot;})&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;jQuery&quot;,&quot;packageName&quot;:&quot;cloudinary-jquery&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;react_native&quot;,&quot;framework&quot;:&quot;react_native&quot;,&quot;language&quot;:&quot;react_native&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    pad()\\n      .aspectRatio(ar1X1())\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    pad()\\n      .aspectRatio(ar1X1())\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;React Native&quot;,&quot;packageName&quot;:&quot;cloudinary-react-native&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;}]\"\n      parsed-url=\"{&quot;url&quot;:&quot;https:\\\/\\\/res.cloudinary.com\\\/demo\\\/image\\\/upload\\\/b_gen_fill,c_pad,ar_1:1\\\/v1687525630\\\/ai\\\/woman_model.jpg&quot;,&quot;cloud_name&quot;:&quot;demo&quot;,&quot;host&quot;:&quot;res.cloudinary.com&quot;,&quot;type&quot;:&quot;upload&quot;,&quot;resource_type&quot;:&quot;image&quot;,&quot;transformation&quot;:[{&quot;background&quot;:&quot;gen_fill&quot;,&quot;crop_mode&quot;:&quot;pad&quot;,&quot;aspect_ratio&quot;:&quot;1:1&quot;}],&quot;transformation_string&quot;:&quot;b_gen_fill,c_pad,ar_1:1&quot;,&quot;url_suffix&quot;:&quot;&quot;,&quot;version&quot;:&quot;1687525630&quot;,&quot;secure&quot;:true,&quot;public_id&quot;:&quot;ai\\\/woman_model.jpg&quot;,&quot;extension&quot;:&quot;jpg&quot;,&quot;format&quot;:&quot;jpg&quot;,&quot;format_code&quot;:true,&quot;url_code&quot;:false,&quot;signature&quot;:&quot;&quot;,&quot;private_cdn&quot;:false,&quot;result_asset_type&quot;:&quot;image&quot;}\"\n      with-url=\"true\"\n    >\n      <span class=\"u-visually-hidden\">Loading code examples<\/span>\n    <\/cld-code-widget>\n\n\n<h4 class=\"wp-block-heading\">Limit Pad (c_lpad)<\/h4>\n\n\n\n<p>Scales down an asset with padding if larger than the specified width\/height limit, maintaining aspect ratio and visibility. The new areas will be generated around the scaled image as needed. Here we\u2019ve created a 400&#215;800 image from the original \u2013 the original is shrunk to fit, and new imagery is inserted, including feet!<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/demo\/image\/upload\/v1688051275\/ai\/c_lpad.jpg\" alt=\"Image of a woman standing in a garden with palm trees with AI generative fill used to add imagery to the top and bottom, including adding feet to the woman\"\/><\/figure>\n\n\n<cld-code-widget\n      class=\"wp-block-cloudinary-transformation-widget c-code-widget\"\n      snippets=\"[{&quot;sdkId&quot;:&quot;nodejs&quot;,&quot;framework&quot;:&quot;nodejs&quot;,&quot;language&quot;:&quot;nodejs&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image(\\&quot;ai\\\/woman_model.jpg\\&quot;, {height: 800, width: 400, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;lpad\\&quot;})&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image(\\&quot;ai\\\/woman_model.jpg\\&quot;, {height: 800, width: 400, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;lpad\\&quot;})&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Node.js&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;react_2&quot;,&quot;framework&quot;:&quot;react_2&quot;,&quot;language&quot;:&quot;react&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    limitPad()\\n      .width(400)\\n      .height(800)\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    limitPad()\\n      .width(400)\\n      .height(800)\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;React&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/react&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;react&quot;,&quot;framework&quot;:&quot;react&quot;,&quot;language&quot;:&quot;react&quot;,&quot;rawCodeSnippet&quot;:&quot;&lt;Image publicId=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt; &lt;Transformation height=\\&quot;800\\&quot; width=\\&quot;400\\&quot; background=\\&quot;gen_fill\\&quot; crop=\\&quot;lpad\\&quot; \\\/&gt; &lt;\\\/Image&gt;&quot;,&quot;codeSnippet&quot;:&quot;&lt;Image publicId=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt;\\n\\t&lt;Transformation height=\\&quot;800\\&quot; width=\\&quot;400\\&quot; background=\\&quot;gen_fill\\&quot; crop=\\&quot;lpad\\&quot; \\\/&gt;\\n&lt;\\\/Image&gt;&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;React&quot;,&quot;packageName&quot;:&quot;cloudinary-react&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;vue_2&quot;,&quot;framework&quot;:&quot;vue_2&quot;,&quot;language&quot;:&quot;vue&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    limitPad()\\n      .width(400)\\n      .height(800)\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    limitPad()\\n      .width(400)\\n      .height(800)\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Vue.js&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/vue&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;vue&quot;,&quot;framework&quot;:&quot;vue&quot;,&quot;language&quot;:&quot;vue&quot;,&quot;rawCodeSnippet&quot;:&quot;&lt;cld-image public-id=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt; &lt;cld-transformation height=\\&quot;800\\&quot; width=\\&quot;400\\&quot; background=\\&quot;gen_fill\\&quot; crop=\\&quot;lpad\\&quot; \\\/&gt; &lt;\\\/cld-image&gt;&quot;,&quot;codeSnippet&quot;:&quot;&lt;cld-image public-id=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt;\\n\\t&lt;cld-transformation height=\\&quot;800\\&quot; width=\\&quot;400\\&quot; background=\\&quot;gen_fill\\&quot; crop=\\&quot;lpad\\&quot; \\\/&gt;\\n&lt;\\\/cld-image&gt;&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Vue.js&quot;,&quot;packageName&quot;:&quot;cloudinary-vue&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;angular_2&quot;,&quot;framework&quot;:&quot;angular_2&quot;,&quot;language&quot;:&quot;angular&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    limitPad()\\n      .width(400)\\n      .height(800)\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    limitPad()\\n      .width(400)\\n      .height(800)\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Angular&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/ng&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;angular&quot;,&quot;framework&quot;:&quot;angular&quot;,&quot;language&quot;:&quot;angular&quot;,&quot;rawCodeSnippet&quot;:&quot;&lt;cl-image public-id=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt; &lt;cl-transformation height=\\&quot;800\\&quot; width=\\&quot;400\\&quot; background=\\&quot;gen_fill\\&quot; crop=\\&quot;lpad\\&quot;&gt; &lt;\\\/cl-transformation&gt; &lt;\\\/cl-image&gt;&quot;,&quot;codeSnippet&quot;:&quot;&lt;cl-image public-id=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt;\\n\\t&lt;cl-transformation height=\\&quot;800\\&quot; width=\\&quot;400\\&quot; background=\\&quot;gen_fill\\&quot; crop=\\&quot;lpad\\&quot;&gt;\\n\\t&lt;\\\/cl-transformation&gt;\\n&lt;\\\/cl-image&gt;&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Angular&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/angular-5.x&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;js_2&quot;,&quot;framework&quot;:&quot;js_2&quot;,&quot;language&quot;:&quot;js&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    limitPad()\\n      .width(400)\\n      .height(800)\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    limitPad()\\n      .width(400)\\n      .height(800)\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;JS&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/url-gen&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;js&quot;,&quot;framework&quot;:&quot;js&quot;,&quot;language&quot;:&quot;js&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.imageTag(&#039;ai\\\/woman_model.jpg&#039;, {height: 800, width: 400, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;lpad\\&quot;}).toHtml();&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.imageTag(&#039;ai\\\/woman_model.jpg&#039;, {height: 800, width: 400, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;lpad\\&quot;}).toHtml();&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;JS&quot;,&quot;packageName&quot;:&quot;cloudinary-core&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;python&quot;,&quot;framework&quot;:&quot;python&quot;,&quot;language&quot;:&quot;python&quot;,&quot;rawCodeSnippet&quot;:&quot;CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;).image(height=800, width=400, background=\\&quot;gen_fill\\&quot;, crop=\\&quot;lpad\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;).image(height=800, width=400, background=\\&quot;gen_fill\\&quot;, crop=\\&quot;lpad\\&quot;)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Python&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;php_2&quot;,&quot;framework&quot;:&quot;php_2&quot;,&quot;language&quot;:&quot;php&quot;,&quot;rawCodeSnippet&quot;:&quot;(new ImageTag(&#039;ai\\\/woman_model.jpg&#039;))\\n\\t-&gt;resize(Resize::limitPad()-&gt;width(400)\\n-&gt;height(800)\\n\\t-&gt;background(\\n\\tBackground::generativeFill())\\n\\t)\\n\\t-&gt;version(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;(new ImageTag(&#039;ai\\\/woman_model.jpg&#039;))\\n\\t-&gt;resize(Resize::limitPad()-&gt;width(400)\\n-&gt;height(800)\\n\\t-&gt;background(\\n\\tBackground::generativeFill())\\n\\t)\\n\\t-&gt;version(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;PHP&quot;,&quot;packageName&quot;:&quot;cloudinary_php&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;3.x&quot;},{&quot;sdkId&quot;:&quot;php&quot;,&quot;framework&quot;:&quot;php&quot;,&quot;language&quot;:&quot;php&quot;,&quot;rawCodeSnippet&quot;:&quot;cl_image_tag(\\&quot;ai\\\/woman_model.jpg\\&quot;, array(\\&quot;height\\&quot;=&gt;800, \\&quot;width\\&quot;=&gt;400, \\&quot;background\\&quot;=&gt;\\&quot;gen_fill\\&quot;, \\&quot;crop\\&quot;=&gt;\\&quot;lpad\\&quot;))&quot;,&quot;codeSnippet&quot;:&quot;cl_image_tag(\\&quot;ai\\\/woman_model.jpg\\&quot;, array(\\&quot;height\\&quot;=&gt;800, \\&quot;width\\&quot;=&gt;400, \\&quot;background\\&quot;=&gt;\\&quot;gen_fill\\&quot;, \\&quot;crop\\&quot;=&gt;\\&quot;lpad\\&quot;))&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;PHP&quot;,&quot;packageName&quot;:&quot;cloudinary_php&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;java&quot;,&quot;framework&quot;:&quot;java&quot;,&quot;language&quot;:&quot;java&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.url().transformation(new Transformation().height(800).width(400).background(\\&quot;gen_fill\\&quot;).crop(\\&quot;lpad\\&quot;)).imageTag(\\&quot;ai\\\/woman_model.jpg\\&quot;);&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.url().transformation(new Transformation().height(800).width(400).background(\\&quot;gen_fill\\&quot;).crop(\\&quot;lpad\\&quot;)).imageTag(\\&quot;ai\\\/woman_model.jpg\\&quot;);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Java&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;ruby&quot;,&quot;framework&quot;:&quot;ruby&quot;,&quot;language&quot;:&quot;ruby&quot;,&quot;rawCodeSnippet&quot;:&quot;cl_image_tag(\\&quot;ai\\\/woman_model.jpg\\&quot;, height: 800, width: 400, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;lpad\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;cl_image_tag(\\&quot;ai\\\/woman_model.jpg\\&quot;, height: 800, width: 400, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;lpad\\&quot;)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Ruby&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;csharp&quot;,&quot;framework&quot;:&quot;csharp&quot;,&quot;language&quot;:&quot;csharp&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.Api.UrlImgUp.Transform(new Transformation().Height(800).Width(400).Background(\\&quot;gen_fill\\&quot;).Crop(\\&quot;lpad\\&quot;)).BuildImageTag(\\&quot;ai\\\/woman_model.jpg\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.Api.UrlImgUp.Transform(new Transformation().Height(800).Width(400).Background(\\&quot;gen_fill\\&quot;).Crop(\\&quot;lpad\\&quot;)).BuildImageTag(\\&quot;ai\\\/woman_model.jpg\\&quot;)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;.NET&quot;,&quot;packageName&quot;:&quot;CloudinaryDotNet&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;dart&quot;,&quot;framework&quot;:&quot;dart&quot;,&quot;language&quot;:&quot;dart&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image(&#039;ai\\\/woman_model.jpg&#039;).transformation(Transformation()\\n\\t.resize(Resize.limitPad().width(400)\\n.height(800)\\n\\t.background(\\n\\tBackground.generativeFill())\\n\\t)\\n\\t.version(1687525630));&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image(&#039;ai\\\/woman_model.jpg&#039;).transformation(Transformation()\\n\\t.resize(Resize.limitPad().width(400)\\n.height(800)\\n\\t.background(\\n\\tBackground.generativeFill())\\n\\t)\\n\\t.version(1687525630));&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Dart&quot;,&quot;packageName&quot;:&quot;cloudinary_dart&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;swift&quot;,&quot;framework&quot;:&quot;swift&quot;,&quot;language&quot;:&quot;swift&quot;,&quot;rawCodeSnippet&quot;:&quot;imageView.cldSetImage(cloudinary.createUrl().setTransformation(CLDTransformation().setHeight(800).setWidth(400).setBackground(\\&quot;gen_fill\\&quot;).setCrop(\\&quot;lpad\\&quot;)).generate(\\&quot;ai\\\/woman_model.jpg\\&quot;)!, cloudinary: cloudinary)&quot;,&quot;codeSnippet&quot;:&quot;imageView.cldSetImage(cloudinary.createUrl().setTransformation(CLDTransformation().setHeight(800).setWidth(400).setBackground(\\&quot;gen_fill\\&quot;).setCrop(\\&quot;lpad\\&quot;)).generate(\\&quot;ai\\\/woman_model.jpg\\&quot;)!, cloudinary: cloudinary)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;iOS&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;5.x&quot;},{&quot;sdkId&quot;:&quot;android&quot;,&quot;framework&quot;:&quot;android&quot;,&quot;language&quot;:&quot;android&quot;,&quot;rawCodeSnippet&quot;:&quot;MediaManager.get().url().transformation(new Transformation().height(800).width(400).background(\\&quot;gen_fill\\&quot;).crop(\\&quot;lpad\\&quot;)).generate(\\&quot;ai\\\/woman_model.jpg\\&quot;);&quot;,&quot;codeSnippet&quot;:&quot;MediaManager.get().url().transformation(new Transformation().height(800).width(400).background(\\&quot;gen_fill\\&quot;).crop(\\&quot;lpad\\&quot;)).generate(\\&quot;ai\\\/woman_model.jpg\\&quot;);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Android&quot;,&quot;packageName&quot;:&quot;cloudinary-android&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;3.x&quot;},{&quot;sdkId&quot;:&quot;flutter&quot;,&quot;framework&quot;:&quot;flutter&quot;,&quot;language&quot;:&quot;flutter&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image(&#039;ai\\\/woman_model.jpg&#039;).transformation(Transformation()\\n\\t.resize(Resize.limitPad().width(400)\\n.height(800)\\n\\t.background(\\n\\tBackground.generativeFill())\\n\\t)\\n\\t.version(1687525630));&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image(&#039;ai\\\/woman_model.jpg&#039;).transformation(Transformation()\\n\\t.resize(Resize.limitPad().width(400)\\n.height(800)\\n\\t.background(\\n\\tBackground.generativeFill())\\n\\t)\\n\\t.version(1687525630));&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Flutter&quot;,&quot;packageName&quot;:&quot;cloudinary_flutter&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;kotlin&quot;,&quot;framework&quot;:&quot;kotlin&quot;,&quot;language&quot;:&quot;kotlin&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image {\\n\\tpublicId(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n\\t resize(Resize.limitPad() { width(400)\\n height(800)\\n\\t background(\\n\\tBackground.generativeFill())\\n\\t })\\n\\t version(1687525630) \\n}.generate()&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image {\\n\\tpublicId(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n\\t resize(Resize.limitPad() { width(400)\\n height(800)\\n\\t background(\\n\\tBackground.generativeFill())\\n\\t })\\n\\t version(1687525630) \\n}.generate()&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Kotlin&quot;,&quot;packageName&quot;:&quot;kotlin-url-gen&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;jquery&quot;,&quot;framework&quot;:&quot;jquery&quot;,&quot;language&quot;:&quot;jquery&quot;,&quot;rawCodeSnippet&quot;:&quot;$.cloudinary.image(\\&quot;ai\\\/woman_model.jpg\\&quot;, {height: 800, width: 400, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;lpad\\&quot;})&quot;,&quot;codeSnippet&quot;:&quot;$.cloudinary.image(\\&quot;ai\\\/woman_model.jpg\\&quot;, {height: 800, width: 400, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;lpad\\&quot;})&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;jQuery&quot;,&quot;packageName&quot;:&quot;cloudinary-jquery&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;react_native&quot;,&quot;framework&quot;:&quot;react_native&quot;,&quot;language&quot;:&quot;react_native&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    limitPad()\\n      .width(400)\\n      .height(800)\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    limitPad()\\n      .width(400)\\n      .height(800)\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;React Native&quot;,&quot;packageName&quot;:&quot;cloudinary-react-native&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;}]\"\n      parsed-url=\"{&quot;url&quot;:&quot;https:\\\/\\\/res.cloudinary.com\\\/demo\\\/image\\\/upload\\\/c_lpad,h_800,w_400,b_gen_fill\\\/v1687525630\\\/ai\\\/woman_model.jpg&quot;,&quot;cloud_name&quot;:&quot;demo&quot;,&quot;host&quot;:&quot;res.cloudinary.com&quot;,&quot;type&quot;:&quot;upload&quot;,&quot;resource_type&quot;:&quot;image&quot;,&quot;transformation&quot;:[{&quot;crop_mode&quot;:&quot;lpad&quot;,&quot;height&quot;:&quot;800&quot;,&quot;width&quot;:&quot;400&quot;,&quot;background&quot;:&quot;gen_fill&quot;}],&quot;transformation_string&quot;:&quot;c_lpad,h_800,w_400,b_gen_fill&quot;,&quot;url_suffix&quot;:&quot;&quot;,&quot;version&quot;:&quot;1687525630&quot;,&quot;secure&quot;:true,&quot;public_id&quot;:&quot;ai\\\/woman_model.jpg&quot;,&quot;extension&quot;:&quot;jpg&quot;,&quot;format&quot;:&quot;jpg&quot;,&quot;format_code&quot;:true,&quot;url_code&quot;:false,&quot;signature&quot;:&quot;&quot;,&quot;private_cdn&quot;:false,&quot;result_asset_type&quot;:&quot;image&quot;}\"\n      with-url=\"true\"\n    >\n      <span class=\"u-visually-hidden\">Loading code examples<\/span>\n    <\/cld-code-widget>\n\n\n<h4 class=\"wp-block-heading\">Minimum Pad (c_mpad)<\/h4>\n\n\n\n<p>Adds padding to an image if the image\u2019s width <strong>or<\/strong> height is smaller than the specified dimensions than the original to achieve a minimum width\/height without scaling, maintaining the aspect ratio of the original. Here, we\u2019ve maintained the height of the original (900px) but increased the width to 1100px. The new areas to the left and right of the original have been created using Generative Fill.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/demo\/image\/upload\/v1688051275\/ai\/c_mpad.jpg\" alt=\"Image of a woman standing in a garden with palm trees with AI generative fill used to add imagery to left and right to maintain the original image height while widening it at the same time\"\/><\/figure>\n\n\n<cld-code-widget\n      class=\"wp-block-cloudinary-transformation-widget c-code-widget\"\n      snippets=\"[{&quot;sdkId&quot;:&quot;nodejs&quot;,&quot;framework&quot;:&quot;nodejs&quot;,&quot;language&quot;:&quot;nodejs&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image(\\&quot;ai\\\/woman_model.jpg\\&quot;, {height: 900, width: 1100, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;mpad\\&quot;})&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image(\\&quot;ai\\\/woman_model.jpg\\&quot;, {height: 900, width: 1100, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;mpad\\&quot;})&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Node.js&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;react_2&quot;,&quot;framework&quot;:&quot;react_2&quot;,&quot;language&quot;:&quot;react&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    minimumPad()\\n      .width(1100)\\n      .height(900)\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    minimumPad()\\n      .width(1100)\\n      .height(900)\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;React&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/react&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;react&quot;,&quot;framework&quot;:&quot;react&quot;,&quot;language&quot;:&quot;react&quot;,&quot;rawCodeSnippet&quot;:&quot;&lt;Image publicId=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt; &lt;Transformation height=\\&quot;900\\&quot; width=\\&quot;1100\\&quot; background=\\&quot;gen_fill\\&quot; crop=\\&quot;mpad\\&quot; \\\/&gt; &lt;\\\/Image&gt;&quot;,&quot;codeSnippet&quot;:&quot;&lt;Image publicId=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt;\\n\\t&lt;Transformation height=\\&quot;900\\&quot; width=\\&quot;1100\\&quot; background=\\&quot;gen_fill\\&quot; crop=\\&quot;mpad\\&quot; \\\/&gt;\\n&lt;\\\/Image&gt;&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;React&quot;,&quot;packageName&quot;:&quot;cloudinary-react&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;vue_2&quot;,&quot;framework&quot;:&quot;vue_2&quot;,&quot;language&quot;:&quot;vue&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    minimumPad()\\n      .width(1100)\\n      .height(900)\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    minimumPad()\\n      .width(1100)\\n      .height(900)\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Vue.js&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/vue&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;vue&quot;,&quot;framework&quot;:&quot;vue&quot;,&quot;language&quot;:&quot;vue&quot;,&quot;rawCodeSnippet&quot;:&quot;&lt;cld-image public-id=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt; &lt;cld-transformation height=\\&quot;900\\&quot; width=\\&quot;1100\\&quot; background=\\&quot;gen_fill\\&quot; crop=\\&quot;mpad\\&quot; \\\/&gt; &lt;\\\/cld-image&gt;&quot;,&quot;codeSnippet&quot;:&quot;&lt;cld-image public-id=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt;\\n\\t&lt;cld-transformation height=\\&quot;900\\&quot; width=\\&quot;1100\\&quot; background=\\&quot;gen_fill\\&quot; crop=\\&quot;mpad\\&quot; \\\/&gt;\\n&lt;\\\/cld-image&gt;&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Vue.js&quot;,&quot;packageName&quot;:&quot;cloudinary-vue&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;angular_2&quot;,&quot;framework&quot;:&quot;angular_2&quot;,&quot;language&quot;:&quot;angular&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    minimumPad()\\n      .width(1100)\\n      .height(900)\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    minimumPad()\\n      .width(1100)\\n      .height(900)\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Angular&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/ng&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;angular&quot;,&quot;framework&quot;:&quot;angular&quot;,&quot;language&quot;:&quot;angular&quot;,&quot;rawCodeSnippet&quot;:&quot;&lt;cl-image public-id=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt; &lt;cl-transformation height=\\&quot;900\\&quot; width=\\&quot;1100\\&quot; background=\\&quot;gen_fill\\&quot; crop=\\&quot;mpad\\&quot;&gt; &lt;\\\/cl-transformation&gt; &lt;\\\/cl-image&gt;&quot;,&quot;codeSnippet&quot;:&quot;&lt;cl-image public-id=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt;\\n\\t&lt;cl-transformation height=\\&quot;900\\&quot; width=\\&quot;1100\\&quot; background=\\&quot;gen_fill\\&quot; crop=\\&quot;mpad\\&quot;&gt;\\n\\t&lt;\\\/cl-transformation&gt;\\n&lt;\\\/cl-image&gt;&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Angular&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/angular-5.x&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;js_2&quot;,&quot;framework&quot;:&quot;js_2&quot;,&quot;language&quot;:&quot;js&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    minimumPad()\\n      .width(1100)\\n      .height(900)\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    minimumPad()\\n      .width(1100)\\n      .height(900)\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;JS&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/url-gen&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;js&quot;,&quot;framework&quot;:&quot;js&quot;,&quot;language&quot;:&quot;js&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.imageTag(&#039;ai\\\/woman_model.jpg&#039;, {height: 900, width: 1100, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;mpad\\&quot;}).toHtml();&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.imageTag(&#039;ai\\\/woman_model.jpg&#039;, {height: 900, width: 1100, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;mpad\\&quot;}).toHtml();&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;JS&quot;,&quot;packageName&quot;:&quot;cloudinary-core&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;python&quot;,&quot;framework&quot;:&quot;python&quot;,&quot;language&quot;:&quot;python&quot;,&quot;rawCodeSnippet&quot;:&quot;CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;).image(height=900, width=1100, background=\\&quot;gen_fill\\&quot;, crop=\\&quot;mpad\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;).image(height=900, width=1100, background=\\&quot;gen_fill\\&quot;, crop=\\&quot;mpad\\&quot;)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Python&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;php_2&quot;,&quot;framework&quot;:&quot;php_2&quot;,&quot;language&quot;:&quot;php&quot;,&quot;rawCodeSnippet&quot;:&quot;(new ImageTag(&#039;ai\\\/woman_model.jpg&#039;))\\n\\t-&gt;resize(Resize::minimumPad()-&gt;width(1100)\\n-&gt;height(900)\\n\\t-&gt;background(\\n\\tBackground::generativeFill())\\n\\t)\\n\\t-&gt;version(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;(new ImageTag(&#039;ai\\\/woman_model.jpg&#039;))\\n\\t-&gt;resize(Resize::minimumPad()-&gt;width(1100)\\n-&gt;height(900)\\n\\t-&gt;background(\\n\\tBackground::generativeFill())\\n\\t)\\n\\t-&gt;version(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;PHP&quot;,&quot;packageName&quot;:&quot;cloudinary_php&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;3.x&quot;},{&quot;sdkId&quot;:&quot;php&quot;,&quot;framework&quot;:&quot;php&quot;,&quot;language&quot;:&quot;php&quot;,&quot;rawCodeSnippet&quot;:&quot;cl_image_tag(\\&quot;ai\\\/woman_model.jpg\\&quot;, array(\\&quot;height\\&quot;=&gt;900, \\&quot;width\\&quot;=&gt;1100, \\&quot;background\\&quot;=&gt;\\&quot;gen_fill\\&quot;, \\&quot;crop\\&quot;=&gt;\\&quot;mpad\\&quot;))&quot;,&quot;codeSnippet&quot;:&quot;cl_image_tag(\\&quot;ai\\\/woman_model.jpg\\&quot;, array(\\&quot;height\\&quot;=&gt;900, \\&quot;width\\&quot;=&gt;1100, \\&quot;background\\&quot;=&gt;\\&quot;gen_fill\\&quot;, \\&quot;crop\\&quot;=&gt;\\&quot;mpad\\&quot;))&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;PHP&quot;,&quot;packageName&quot;:&quot;cloudinary_php&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;java&quot;,&quot;framework&quot;:&quot;java&quot;,&quot;language&quot;:&quot;java&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.url().transformation(new Transformation().height(900).width(1100).background(\\&quot;gen_fill\\&quot;).crop(\\&quot;mpad\\&quot;)).imageTag(\\&quot;ai\\\/woman_model.jpg\\&quot;);&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.url().transformation(new Transformation().height(900).width(1100).background(\\&quot;gen_fill\\&quot;).crop(\\&quot;mpad\\&quot;)).imageTag(\\&quot;ai\\\/woman_model.jpg\\&quot;);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Java&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;ruby&quot;,&quot;framework&quot;:&quot;ruby&quot;,&quot;language&quot;:&quot;ruby&quot;,&quot;rawCodeSnippet&quot;:&quot;cl_image_tag(\\&quot;ai\\\/woman_model.jpg\\&quot;, height: 900, width: 1100, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;mpad\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;cl_image_tag(\\&quot;ai\\\/woman_model.jpg\\&quot;, height: 900, width: 1100, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;mpad\\&quot;)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Ruby&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;csharp&quot;,&quot;framework&quot;:&quot;csharp&quot;,&quot;language&quot;:&quot;csharp&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.Api.UrlImgUp.Transform(new Transformation().Height(900).Width(1100).Background(\\&quot;gen_fill\\&quot;).Crop(\\&quot;mpad\\&quot;)).BuildImageTag(\\&quot;ai\\\/woman_model.jpg\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.Api.UrlImgUp.Transform(new Transformation().Height(900).Width(1100).Background(\\&quot;gen_fill\\&quot;).Crop(\\&quot;mpad\\&quot;)).BuildImageTag(\\&quot;ai\\\/woman_model.jpg\\&quot;)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;.NET&quot;,&quot;packageName&quot;:&quot;CloudinaryDotNet&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;dart&quot;,&quot;framework&quot;:&quot;dart&quot;,&quot;language&quot;:&quot;dart&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image(&#039;ai\\\/woman_model.jpg&#039;).transformation(Transformation()\\n\\t.resize(Resize.minimumPad().width(1100)\\n.height(900)\\n\\t.background(\\n\\tBackground.generativeFill())\\n\\t)\\n\\t.version(1687525630));&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image(&#039;ai\\\/woman_model.jpg&#039;).transformation(Transformation()\\n\\t.resize(Resize.minimumPad().width(1100)\\n.height(900)\\n\\t.background(\\n\\tBackground.generativeFill())\\n\\t)\\n\\t.version(1687525630));&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Dart&quot;,&quot;packageName&quot;:&quot;cloudinary_dart&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;swift&quot;,&quot;framework&quot;:&quot;swift&quot;,&quot;language&quot;:&quot;swift&quot;,&quot;rawCodeSnippet&quot;:&quot;imageView.cldSetImage(cloudinary.createUrl().setTransformation(CLDTransformation().setHeight(900).setWidth(1100).setBackground(\\&quot;gen_fill\\&quot;).setCrop(\\&quot;mpad\\&quot;)).generate(\\&quot;ai\\\/woman_model.jpg\\&quot;)!, cloudinary: cloudinary)&quot;,&quot;codeSnippet&quot;:&quot;imageView.cldSetImage(cloudinary.createUrl().setTransformation(CLDTransformation().setHeight(900).setWidth(1100).setBackground(\\&quot;gen_fill\\&quot;).setCrop(\\&quot;mpad\\&quot;)).generate(\\&quot;ai\\\/woman_model.jpg\\&quot;)!, cloudinary: cloudinary)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;iOS&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;5.x&quot;},{&quot;sdkId&quot;:&quot;android&quot;,&quot;framework&quot;:&quot;android&quot;,&quot;language&quot;:&quot;android&quot;,&quot;rawCodeSnippet&quot;:&quot;MediaManager.get().url().transformation(new Transformation().height(900).width(1100).background(\\&quot;gen_fill\\&quot;).crop(\\&quot;mpad\\&quot;)).generate(\\&quot;ai\\\/woman_model.jpg\\&quot;);&quot;,&quot;codeSnippet&quot;:&quot;MediaManager.get().url().transformation(new Transformation().height(900).width(1100).background(\\&quot;gen_fill\\&quot;).crop(\\&quot;mpad\\&quot;)).generate(\\&quot;ai\\\/woman_model.jpg\\&quot;);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Android&quot;,&quot;packageName&quot;:&quot;cloudinary-android&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;3.x&quot;},{&quot;sdkId&quot;:&quot;flutter&quot;,&quot;framework&quot;:&quot;flutter&quot;,&quot;language&quot;:&quot;flutter&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image(&#039;ai\\\/woman_model.jpg&#039;).transformation(Transformation()\\n\\t.resize(Resize.minimumPad().width(1100)\\n.height(900)\\n\\t.background(\\n\\tBackground.generativeFill())\\n\\t)\\n\\t.version(1687525630));&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image(&#039;ai\\\/woman_model.jpg&#039;).transformation(Transformation()\\n\\t.resize(Resize.minimumPad().width(1100)\\n.height(900)\\n\\t.background(\\n\\tBackground.generativeFill())\\n\\t)\\n\\t.version(1687525630));&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Flutter&quot;,&quot;packageName&quot;:&quot;cloudinary_flutter&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;kotlin&quot;,&quot;framework&quot;:&quot;kotlin&quot;,&quot;language&quot;:&quot;kotlin&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image {\\n\\tpublicId(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n\\t resize(Resize.minimumPad() { width(1100)\\n height(900)\\n\\t background(\\n\\tBackground.generativeFill())\\n\\t })\\n\\t version(1687525630) \\n}.generate()&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image {\\n\\tpublicId(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n\\t resize(Resize.minimumPad() { width(1100)\\n height(900)\\n\\t background(\\n\\tBackground.generativeFill())\\n\\t })\\n\\t version(1687525630) \\n}.generate()&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Kotlin&quot;,&quot;packageName&quot;:&quot;kotlin-url-gen&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;jquery&quot;,&quot;framework&quot;:&quot;jquery&quot;,&quot;language&quot;:&quot;jquery&quot;,&quot;rawCodeSnippet&quot;:&quot;$.cloudinary.image(\\&quot;ai\\\/woman_model.jpg\\&quot;, {height: 900, width: 1100, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;mpad\\&quot;})&quot;,&quot;codeSnippet&quot;:&quot;$.cloudinary.image(\\&quot;ai\\\/woman_model.jpg\\&quot;, {height: 900, width: 1100, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;mpad\\&quot;})&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;jQuery&quot;,&quot;packageName&quot;:&quot;cloudinary-jquery&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;react_native&quot;,&quot;framework&quot;:&quot;react_native&quot;,&quot;language&quot;:&quot;react_native&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    minimumPad()\\n      .width(1100)\\n      .height(900)\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    minimumPad()\\n      .width(1100)\\n      .height(900)\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;React Native&quot;,&quot;packageName&quot;:&quot;cloudinary-react-native&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;}]\"\n      parsed-url=\"{&quot;url&quot;:&quot;https:\\\/\\\/res.cloudinary.com\\\/demo\\\/image\\\/upload\\\/c_mpad,h_900,w_1100,b_gen_fill\\\/v1687525630\\\/ai\\\/woman_model.jpg&quot;,&quot;cloud_name&quot;:&quot;demo&quot;,&quot;host&quot;:&quot;res.cloudinary.com&quot;,&quot;type&quot;:&quot;upload&quot;,&quot;resource_type&quot;:&quot;image&quot;,&quot;transformation&quot;:[{&quot;crop_mode&quot;:&quot;mpad&quot;,&quot;height&quot;:&quot;900&quot;,&quot;width&quot;:&quot;1100&quot;,&quot;background&quot;:&quot;gen_fill&quot;}],&quot;transformation_string&quot;:&quot;c_mpad,h_900,w_1100,b_gen_fill&quot;,&quot;url_suffix&quot;:&quot;&quot;,&quot;version&quot;:&quot;1687525630&quot;,&quot;secure&quot;:true,&quot;public_id&quot;:&quot;ai\\\/woman_model.jpg&quot;,&quot;extension&quot;:&quot;jpg&quot;,&quot;format&quot;:&quot;jpg&quot;,&quot;format_code&quot;:true,&quot;url_code&quot;:false,&quot;signature&quot;:&quot;&quot;,&quot;private_cdn&quot;:false,&quot;result_asset_type&quot;:&quot;image&quot;}\"\n      with-url=\"true\"\n    >\n      <span class=\"u-visually-hidden\">Loading code examples<\/span>\n    <\/cld-code-widget>\n\n\n<h4 class=\"wp-block-heading\">Fill Pad (c_fill_pad)<\/h4>\n\n\n\n<p>Used with <code>g_auto<\/code>, this mode will attempt to prevent a pad crop by considering auto gravity and applying some padding as needed. Here, we\u2019ve created a unique side banner crop of the image 500*1200 and applied g_auto. As you can see, the focus is on the woman and the trees; <code>b_gen_fill<\/code> adds lovely matching imagery to the top and bottom of the image to complete the crop.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/demo\/image\/upload\/v1688051275\/ai\/c_fill_pad.jpg\" alt=\"Image of a woman standing in a garden with palm trees with generative fill AI used to crop the horizontal and stretch the vertical.\"\/><\/figure>\n\n\n<cld-code-widget\n      class=\"wp-block-cloudinary-transformation-widget c-code-widget\"\n      snippets=\"[{&quot;sdkId&quot;:&quot;nodejs&quot;,&quot;framework&quot;:&quot;nodejs&quot;,&quot;language&quot;:&quot;nodejs&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image(\\&quot;ai\\\/woman_model.jpg\\&quot;, {width: 500, height: 1200, gravity: \\&quot;auto\\&quot;, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;fill_pad\\&quot;})&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image(\\&quot;ai\\\/woman_model.jpg\\&quot;, {width: 500, height: 1200, gravity: \\&quot;auto\\&quot;, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;fill_pad\\&quot;})&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Node.js&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;react_2&quot;,&quot;framework&quot;:&quot;react_2&quot;,&quot;language&quot;:&quot;react&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    fillPad()\\n      .width(500)\\n      .height(1200)\\n      .gravity(autoGravity())\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    fillPad()\\n      .width(500)\\n      .height(1200)\\n      .gravity(autoGravity())\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;React&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/react&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;react&quot;,&quot;framework&quot;:&quot;react&quot;,&quot;language&quot;:&quot;react&quot;,&quot;rawCodeSnippet&quot;:&quot;&lt;Image publicId=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt; &lt;Transformation width=\\&quot;500\\&quot; height=\\&quot;1200\\&quot; gravity=\\&quot;auto\\&quot; background=\\&quot;gen_fill\\&quot; crop=\\&quot;fill_pad\\&quot; \\\/&gt; &lt;\\\/Image&gt;&quot;,&quot;codeSnippet&quot;:&quot;&lt;Image publicId=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt;\\n\\t&lt;Transformation width=\\&quot;500\\&quot; height=\\&quot;1200\\&quot; gravity=\\&quot;auto\\&quot; background=\\&quot;gen_fill\\&quot; crop=\\&quot;fill_pad\\&quot; \\\/&gt;\\n&lt;\\\/Image&gt;&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;React&quot;,&quot;packageName&quot;:&quot;cloudinary-react&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;vue_2&quot;,&quot;framework&quot;:&quot;vue_2&quot;,&quot;language&quot;:&quot;vue&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    fillPad()\\n      .width(500)\\n      .height(1200)\\n      .gravity(autoGravity())\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    fillPad()\\n      .width(500)\\n      .height(1200)\\n      .gravity(autoGravity())\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Vue.js&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/vue&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;vue&quot;,&quot;framework&quot;:&quot;vue&quot;,&quot;language&quot;:&quot;vue&quot;,&quot;rawCodeSnippet&quot;:&quot;&lt;cld-image public-id=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt; &lt;cld-transformation width=\\&quot;500\\&quot; height=\\&quot;1200\\&quot; gravity=\\&quot;auto\\&quot; background=\\&quot;gen_fill\\&quot; crop=\\&quot;fill_pad\\&quot; \\\/&gt; &lt;\\\/cld-image&gt;&quot;,&quot;codeSnippet&quot;:&quot;&lt;cld-image public-id=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt;\\n\\t&lt;cld-transformation width=\\&quot;500\\&quot; height=\\&quot;1200\\&quot; gravity=\\&quot;auto\\&quot; background=\\&quot;gen_fill\\&quot; crop=\\&quot;fill_pad\\&quot; \\\/&gt;\\n&lt;\\\/cld-image&gt;&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Vue.js&quot;,&quot;packageName&quot;:&quot;cloudinary-vue&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;angular_2&quot;,&quot;framework&quot;:&quot;angular_2&quot;,&quot;language&quot;:&quot;angular&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    fillPad()\\n      .width(500)\\n      .height(1200)\\n      .gravity(autoGravity())\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    fillPad()\\n      .width(500)\\n      .height(1200)\\n      .gravity(autoGravity())\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Angular&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/ng&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;angular&quot;,&quot;framework&quot;:&quot;angular&quot;,&quot;language&quot;:&quot;angular&quot;,&quot;rawCodeSnippet&quot;:&quot;&lt;cl-image public-id=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt; &lt;cl-transformation width=\\&quot;500\\&quot; height=\\&quot;1200\\&quot; gravity=\\&quot;auto\\&quot; background=\\&quot;gen_fill\\&quot; crop=\\&quot;fill_pad\\&quot;&gt; &lt;\\\/cl-transformation&gt; &lt;\\\/cl-image&gt;&quot;,&quot;codeSnippet&quot;:&quot;&lt;cl-image public-id=\\&quot;ai\\\/woman_model.jpg\\&quot; &gt;\\n\\t&lt;cl-transformation width=\\&quot;500\\&quot; height=\\&quot;1200\\&quot; gravity=\\&quot;auto\\&quot; background=\\&quot;gen_fill\\&quot; crop=\\&quot;fill_pad\\&quot;&gt;\\n\\t&lt;\\\/cl-transformation&gt;\\n&lt;\\\/cl-image&gt;&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Angular&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/angular-5.x&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;js_2&quot;,&quot;framework&quot;:&quot;js_2&quot;,&quot;language&quot;:&quot;js&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    fillPad()\\n      .width(500)\\n      .height(1200)\\n      .gravity(autoGravity())\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    fillPad()\\n      .width(500)\\n      .height(1200)\\n      .gravity(autoGravity())\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;JS&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/url-gen&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;js&quot;,&quot;framework&quot;:&quot;js&quot;,&quot;language&quot;:&quot;js&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.imageTag(&#039;ai\\\/woman_model.jpg&#039;, {width: 500, height: 1200, gravity: \\&quot;auto\\&quot;, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;fill_pad\\&quot;}).toHtml();&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.imageTag(&#039;ai\\\/woman_model.jpg&#039;, {width: 500, height: 1200, gravity: \\&quot;auto\\&quot;, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;fill_pad\\&quot;}).toHtml();&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;JS&quot;,&quot;packageName&quot;:&quot;cloudinary-core&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;python&quot;,&quot;framework&quot;:&quot;python&quot;,&quot;language&quot;:&quot;python&quot;,&quot;rawCodeSnippet&quot;:&quot;CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;).image(width=500, height=1200, gravity=\\&quot;auto\\&quot;, background=\\&quot;gen_fill\\&quot;, crop=\\&quot;fill_pad\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;).image(width=500, height=1200, gravity=\\&quot;auto\\&quot;, background=\\&quot;gen_fill\\&quot;, crop=\\&quot;fill_pad\\&quot;)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Python&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;php_2&quot;,&quot;framework&quot;:&quot;php_2&quot;,&quot;language&quot;:&quot;php&quot;,&quot;rawCodeSnippet&quot;:&quot;(new ImageTag(&#039;ai\\\/woman_model.jpg&#039;))\\n\\t-&gt;resize(Resize::fillPad()-&gt;width(500)\\n-&gt;height(1200)\\n\\t-&gt;gravity(\\n\\tGravity::autoGravity())\\n\\t-&gt;background(\\n\\tBackground::generativeFill())\\n\\t)\\n\\t-&gt;version(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;(new ImageTag(&#039;ai\\\/woman_model.jpg&#039;))\\n\\t-&gt;resize(Resize::fillPad()-&gt;width(500)\\n-&gt;height(1200)\\n\\t-&gt;gravity(\\n\\tGravity::autoGravity())\\n\\t-&gt;background(\\n\\tBackground::generativeFill())\\n\\t)\\n\\t-&gt;version(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;PHP&quot;,&quot;packageName&quot;:&quot;cloudinary_php&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;3.x&quot;},{&quot;sdkId&quot;:&quot;php&quot;,&quot;framework&quot;:&quot;php&quot;,&quot;language&quot;:&quot;php&quot;,&quot;rawCodeSnippet&quot;:&quot;cl_image_tag(\\&quot;ai\\\/woman_model.jpg\\&quot;, array(\\&quot;width\\&quot;=&gt;500, \\&quot;height\\&quot;=&gt;1200, \\&quot;gravity\\&quot;=&gt;\\&quot;auto\\&quot;, \\&quot;background\\&quot;=&gt;\\&quot;gen_fill\\&quot;, \\&quot;crop\\&quot;=&gt;\\&quot;fill_pad\\&quot;))&quot;,&quot;codeSnippet&quot;:&quot;cl_image_tag(\\&quot;ai\\\/woman_model.jpg\\&quot;, array(\\&quot;width\\&quot;=&gt;500, \\&quot;height\\&quot;=&gt;1200, \\&quot;gravity\\&quot;=&gt;\\&quot;auto\\&quot;, \\&quot;background\\&quot;=&gt;\\&quot;gen_fill\\&quot;, \\&quot;crop\\&quot;=&gt;\\&quot;fill_pad\\&quot;))&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;PHP&quot;,&quot;packageName&quot;:&quot;cloudinary_php&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;java&quot;,&quot;framework&quot;:&quot;java&quot;,&quot;language&quot;:&quot;java&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.url().transformation(new Transformation().width(500).height(1200).gravity(\\&quot;auto\\&quot;).background(\\&quot;gen_fill\\&quot;).crop(\\&quot;fill_pad\\&quot;)).imageTag(\\&quot;ai\\\/woman_model.jpg\\&quot;);&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.url().transformation(new Transformation().width(500).height(1200).gravity(\\&quot;auto\\&quot;).background(\\&quot;gen_fill\\&quot;).crop(\\&quot;fill_pad\\&quot;)).imageTag(\\&quot;ai\\\/woman_model.jpg\\&quot;);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Java&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;ruby&quot;,&quot;framework&quot;:&quot;ruby&quot;,&quot;language&quot;:&quot;ruby&quot;,&quot;rawCodeSnippet&quot;:&quot;cl_image_tag(\\&quot;ai\\\/woman_model.jpg\\&quot;, width: 500, height: 1200, gravity: \\&quot;auto\\&quot;, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;fill_pad\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;cl_image_tag(\\&quot;ai\\\/woman_model.jpg\\&quot;, width: 500, height: 1200, gravity: \\&quot;auto\\&quot;, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;fill_pad\\&quot;)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Ruby&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;csharp&quot;,&quot;framework&quot;:&quot;csharp&quot;,&quot;language&quot;:&quot;csharp&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.Api.UrlImgUp.Transform(new Transformation().Width(500).Height(1200).Gravity(\\&quot;auto\\&quot;).Background(\\&quot;gen_fill\\&quot;).Crop(\\&quot;fill_pad\\&quot;)).BuildImageTag(\\&quot;ai\\\/woman_model.jpg\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.Api.UrlImgUp.Transform(new Transformation().Width(500).Height(1200).Gravity(\\&quot;auto\\&quot;).Background(\\&quot;gen_fill\\&quot;).Crop(\\&quot;fill_pad\\&quot;)).BuildImageTag(\\&quot;ai\\\/woman_model.jpg\\&quot;)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;.NET&quot;,&quot;packageName&quot;:&quot;CloudinaryDotNet&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;dart&quot;,&quot;framework&quot;:&quot;dart&quot;,&quot;language&quot;:&quot;dart&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image(&#039;ai\\\/woman_model.jpg&#039;).transformation(Transformation()\\n\\t.resize(Resize.fillPad().width(500)\\n.height(1200)\\n\\t.gravity(\\n\\tGravity.autoGravity())\\n\\t.background(\\n\\tBackground.generativeFill())\\n\\t)\\n\\t.version(1687525630));&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image(&#039;ai\\\/woman_model.jpg&#039;).transformation(Transformation()\\n\\t.resize(Resize.fillPad().width(500)\\n.height(1200)\\n\\t.gravity(\\n\\tGravity.autoGravity())\\n\\t.background(\\n\\tBackground.generativeFill())\\n\\t)\\n\\t.version(1687525630));&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Dart&quot;,&quot;packageName&quot;:&quot;cloudinary_dart&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;swift&quot;,&quot;framework&quot;:&quot;swift&quot;,&quot;language&quot;:&quot;swift&quot;,&quot;rawCodeSnippet&quot;:&quot;imageView.cldSetImage(cloudinary.createUrl().setTransformation(CLDTransformation().setWidth(500).setHeight(1200).setGravity(\\&quot;auto\\&quot;).setBackground(\\&quot;gen_fill\\&quot;).setCrop(\\&quot;fill_pad\\&quot;)).generate(\\&quot;ai\\\/woman_model.jpg\\&quot;)!, cloudinary: cloudinary)&quot;,&quot;codeSnippet&quot;:&quot;imageView.cldSetImage(cloudinary.createUrl().setTransformation(CLDTransformation().setWidth(500).setHeight(1200).setGravity(\\&quot;auto\\&quot;).setBackground(\\&quot;gen_fill\\&quot;).setCrop(\\&quot;fill_pad\\&quot;)).generate(\\&quot;ai\\\/woman_model.jpg\\&quot;)!, cloudinary: cloudinary)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;iOS&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;5.x&quot;},{&quot;sdkId&quot;:&quot;android&quot;,&quot;framework&quot;:&quot;android&quot;,&quot;language&quot;:&quot;android&quot;,&quot;rawCodeSnippet&quot;:&quot;MediaManager.get().url().transformation(new Transformation().width(500).height(1200).gravity(\\&quot;auto\\&quot;).background(\\&quot;gen_fill\\&quot;).crop(\\&quot;fill_pad\\&quot;)).generate(\\&quot;ai\\\/woman_model.jpg\\&quot;);&quot;,&quot;codeSnippet&quot;:&quot;MediaManager.get().url().transformation(new Transformation().width(500).height(1200).gravity(\\&quot;auto\\&quot;).background(\\&quot;gen_fill\\&quot;).crop(\\&quot;fill_pad\\&quot;)).generate(\\&quot;ai\\\/woman_model.jpg\\&quot;);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Android&quot;,&quot;packageName&quot;:&quot;cloudinary-android&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;3.x&quot;},{&quot;sdkId&quot;:&quot;flutter&quot;,&quot;framework&quot;:&quot;flutter&quot;,&quot;language&quot;:&quot;flutter&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image(&#039;ai\\\/woman_model.jpg&#039;).transformation(Transformation()\\n\\t.resize(Resize.fillPad().width(500)\\n.height(1200)\\n\\t.gravity(\\n\\tGravity.autoGravity())\\n\\t.background(\\n\\tBackground.generativeFill())\\n\\t)\\n\\t.version(1687525630));&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image(&#039;ai\\\/woman_model.jpg&#039;).transformation(Transformation()\\n\\t.resize(Resize.fillPad().width(500)\\n.height(1200)\\n\\t.gravity(\\n\\tGravity.autoGravity())\\n\\t.background(\\n\\tBackground.generativeFill())\\n\\t)\\n\\t.version(1687525630));&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Flutter&quot;,&quot;packageName&quot;:&quot;cloudinary_flutter&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;kotlin&quot;,&quot;framework&quot;:&quot;kotlin&quot;,&quot;language&quot;:&quot;kotlin&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image {\\n\\tpublicId(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n\\t resize(Resize.fillPad() { width(500)\\n height(1200)\\n\\t gravity(\\n\\tGravity.autoGravity())\\n\\t background(\\n\\tBackground.generativeFill())\\n\\t })\\n\\t version(1687525630) \\n}.generate()&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image {\\n\\tpublicId(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n\\t resize(Resize.fillPad() { width(500)\\n height(1200)\\n\\t gravity(\\n\\tGravity.autoGravity())\\n\\t background(\\n\\tBackground.generativeFill())\\n\\t })\\n\\t version(1687525630) \\n}.generate()&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Kotlin&quot;,&quot;packageName&quot;:&quot;kotlin-url-gen&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;jquery&quot;,&quot;framework&quot;:&quot;jquery&quot;,&quot;language&quot;:&quot;jquery&quot;,&quot;rawCodeSnippet&quot;:&quot;$.cloudinary.image(\\&quot;ai\\\/woman_model.jpg\\&quot;, {width: 500, height: 1200, gravity: \\&quot;auto\\&quot;, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;fill_pad\\&quot;})&quot;,&quot;codeSnippet&quot;:&quot;$.cloudinary.image(\\&quot;ai\\\/woman_model.jpg\\&quot;, {width: 500, height: 1200, gravity: \\&quot;auto\\&quot;, background: \\&quot;gen_fill\\&quot;, crop: \\&quot;fill_pad\\&quot;})&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;jQuery&quot;,&quot;packageName&quot;:&quot;cloudinary-jquery&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;react_native&quot;,&quot;framework&quot;:&quot;react_native&quot;,&quot;language&quot;:&quot;react_native&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    fillPad()\\n      .width(500)\\n      .height(1200)\\n      .gravity(autoGravity())\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;ai\\\/woman_model.jpg\\&quot;)\\n  .resize(\\n    fillPad()\\n      .width(500)\\n      .height(1200)\\n      .gravity(autoGravity())\\n      .background(generativeFill())\\n  )\\n  .setVersion(1687525630);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;React Native&quot;,&quot;packageName&quot;:&quot;cloudinary-react-native&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;}]\"\n      parsed-url=\"{&quot;url&quot;:&quot;https:\\\/\\\/res.cloudinary.com\\\/demo\\\/image\\\/upload\\\/c_fill_pad,w_500,h_1200,g_auto,b_gen_fill\\\/v1687525630\\\/ai\\\/woman_model.jpg&quot;,&quot;cloud_name&quot;:&quot;demo&quot;,&quot;host&quot;:&quot;res.cloudinary.com&quot;,&quot;type&quot;:&quot;upload&quot;,&quot;resource_type&quot;:&quot;image&quot;,&quot;transformation&quot;:[{&quot;crop_mode&quot;:&quot;fill_pad&quot;,&quot;width&quot;:&quot;500&quot;,&quot;height&quot;:&quot;1200&quot;,&quot;gravity&quot;:&quot;auto&quot;,&quot;background&quot;:&quot;gen_fill&quot;}],&quot;transformation_string&quot;:&quot;c_fill_pad,w_500,h_1200,g_auto,b_gen_fill&quot;,&quot;url_suffix&quot;:&quot;&quot;,&quot;version&quot;:&quot;1687525630&quot;,&quot;secure&quot;:true,&quot;public_id&quot;:&quot;ai\\\/woman_model.jpg&quot;,&quot;extension&quot;:&quot;jpg&quot;,&quot;format&quot;:&quot;jpg&quot;,&quot;format_code&quot;:true,&quot;url_code&quot;:false,&quot;signature&quot;:&quot;&quot;,&quot;private_cdn&quot;:false,&quot;result_asset_type&quot;:&quot;image&quot;}\"\n      with-url=\"true\"\n    >\n      <span class=\"u-visually-hidden\">Loading code examples<\/span>\n    <\/cld-code-widget>\n\n\n<p>For perspective, take a look at this short video which flows through the above examples to highlight how generative fill works with each of these padding modes:<\/p>\n\n\n<cld-video-player\n      cloud-name='demo'\n      public-id='v1687556499\/ai\/fill_m_pad_example'\n      js-config='{\"playbackRates\":[0.5,1,1.5,2]}'\n      style='max-width: ;'\n      class='c-video-player'\n      \n      core-version='2.12.3'\n      player-version='1.7.0'\n      >\n      <video\n        id='_video-player69d04f11e3b6c'\n        data-cld-big-play-button='init'\n        data-cld-source-types='[\"hls\",\"webm\\\/vp9\",\"mp4\\\/h265\",\"mp4\"]'\n        controls\n        muted\n        class='cld-video-player cld-fluid wp-block-cloudinary-video-player  cld-video-player-skin-dark'\n      ><\/video>\n    <\/cld-video-player>\n\n\n<h3 class=\"wp-block-heading\">Behind the Scenes<\/h3>\n\n\n\n<p>Generative Fill harnesses the power of Cloudinary&#8217;s powerful generative AI technology, which combines diffusion models with the platform&#8217;s versatile cropping capabilities.&nbsp;<\/p>\n\n\n\n<p>Generative Fill uses a process known as <strong><em>outpainting<\/em><\/strong>, which enables the expansion of images by adding content around the edges. This content smoothly blends with the existing picture, preserving the style and details of the original, resulting in a coherent and extended image.<\/p>\n\n\n\n<p>When a user provides a natural language prompt, the AI considers this and will generate extending pixels that match the original and take the instructions into account.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Use Cases<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>More appealing crops and padding.<\/strong> Users may include blank padding vertically or horizontally when an image is<a href=\"https:\/\/cloudinary.com\/blog\/smart-cropping-just-got-smarter\"> cropped to a specific aspect ratio<\/a>. Generative Fill fills these blank pixels intelligently, resulting in a visually pleasing result. Whether creating product images for e-commerce platforms or fitting images into various design layouts, Generative Fill ensures a cohesive and visually engaging presentation.<\/li>\n\n\n\n<li><strong>E-commerce.<\/strong> Extend product images horizontally or vertically to fit the dimensions of product detail or listing pages seamlessly. This transformation ensures that the products are displayed consistently across different devices and platforms. Generative Fill helps enhance the visual appeal of product catalogs and detail pages. Combined with Cloudinary&#8217;s powerful optimization features, this can improve the overall shopping experience and, most importantly, conversion rates.<\/li>\n\n\n\n<li><strong>Travel and hospitality.<\/strong> Create stunning wide banner images by extending the dimensions horizontally. Generative Fill enables the creation of captivating hero images that draw users&#8217; attention and showcase the beauty of travel destinations and resorts.&nbsp;<\/li>\n\n\n\n<li><strong>Use with other Generative features.<\/strong> Combining Generative Fill with Cloudinary\u2019s other generative features like Generative Replace and Generative Remove increases the creative possibilities. These features work harmoniously, enabling users to craft the perfect image from a near-perfect original. Whether removing unwanted objects, <a href=\"https:\/\/cloudinary.com\/blog\/generative-replace-object-replacement-with-ai\">replacing elements<\/a>, or extending the <a href=\"https:\/\/cloudinary.com\/background-remover\">image background<\/a>, the mix of generative features unlocks limitless creative possibilities through our powerful Image and Video platform.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p>Cloudinary\u2019s Generative Fill is a powerful feature that expands the possibilities of image manipulation and creativity. By utilizing the power of AI generative fill technology, users can seamlessly extend and develop images, creating visually appealing results that preserve the style and details of the original content. Whether for e-commerce, travel, or other industries, Generative Fill empowers users to take their visual storytelling to the next level through Programmable Media. With Cloudinary\u2019s suite of generative features, you can achieve automated creative possibilities that seemed impossible a short time ago.<\/p>\n\n\n\n<p>If you are interested in the feature Generative Fill, you can create your own <a href=\"https:\/\/cloudinary.com\/users\/register_free\">Cloudinary account for free<\/a> and get started today!<\/p>\n\n\n\n<style>\n    .faqs {padding: 30px 60px; margin-top: 40px;background: var(--color-background-offset);border-radius: 20px;}\n    #frequently_asked_questions {margin-bottom: 20px;}\n    .question {margin-bottom: 20px;}\n<\/style>\n\n\n<div class=\"faqs\">\n\n<h2>Frequently Asked Questions<\/h2>\n<div class=\"question\">\n<p><b>Can I create montage images using AI Generative Fill?<\/b><\/p>\nYes, you can create montage images with Generative Fill. This feature allows you to blend multiple images into a single composition by filling in and expanding the background areas. This is particularly useful for creating thematic or storytelling visuals where continuity and aesthetic unity are key.\n<\/div>\n<div class=\"question\">\n<p><b>How does AI Generative Fill ensure that the generated parts of an image match the original style?<\/b><\/p>\nAI models used for Generative Fill are trained on vast datasets of images, allowing them to learn and replicate various artistic styles and visual elements. When extending an image, the AI analyzes the original content&#8217;s context, colors, and textures, ensuring that the new sections are generated in a way that is consistent with the original image.\n<\/div>\n\n<div class=\"question\">\n<p><b>What are the limitations of AI in Generative Fill?<\/b><\/p>\nWhile AI in Generative Fill can produce impressive results, it has limitations, such as difficulty in accurately replicating extremely detailed or complex patterns found in the original image. Additionally, the AI might struggle with understanding abstract concepts without precise prompts, leading to less predictable outcomes.\n<\/div>\n\n<div class=\"question\">\n<p><b>How does Generative Fill AI handle images with multiple focal points?<\/b><\/p>\nGenerative Fill uses a feature called &#8216;auto gravity,&#8217; to determine the most important areas of an image. This ensures that when the image is extended, the AI focuses on these key elements, whether they are multiple focal points or a single subject, thereby preserving the image\u2019s narrative integrity.\n<\/div>\n\n<div class=\"question\">\n<p><b>Is Generative Fill AI suitable for all types of images?<\/b><\/p>\nGenerative Fill is particularly effective with images where the background or surrounding context can be logically extended. It is ideal for landscapes, abstract backgrounds, and simpler compositions. For highly detailed or specific imagery, such as close-up portraits or technical diagrams, the results may vary.\n<\/div>\n\n<div class=\"question\">\n<p><b>How does Generative Fill impact the resolution and quality of the extended image areas?<\/b><\/p>\nGenerative Fill is designed to maintain the highest possible resolution and quality in the extended areas of an image. The AI fill in image algorithms replicate the pixel quality and sharpness of the original image, ensuring that the new sections do not suffer from degradation. However, the ultimate quality can depend on the original image\u2019s resolution and the complexity of the area being filled.\n<\/div>\n\n<div class=\"question\">\n<p><b>Can Generative Fill be integrated with other AI tools for comprehensive image editing?<\/b><\/p>\nYes, this functionality can be seamlessly integrated with other AI tools provided by Cloudinary and other platforms. This integration allows for a comprehensive suite of image editing options, such as object removal, color correction, and style transfer. Combining these tools can transform an image far beyond simple cropping or resizing, enabling users to fully reimagine their visuals in creative and dynamic ways.\n<\/div>\n\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Introduction AI Generative Fill with Outpainting is perfect for those who need their images to fit different formats or for anyone looking to add a bit of magic to their visuals. It\u2019s designed to keep the storytelling intact while making your images ready for any platform or layout. At its core, this technology taps into [&hellip;]<\/p>\n","protected":false},"author":87,"featured_media":29832,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_cloudinary_featured_overwrite":false,"footnotes":""},"categories":[1],"tags":[336,426,409,165],"class_list":["post-29831","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-ai","tag-featured","tag-generative-ai","tag-image-transformation"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.6 (Yoast SEO v26.9) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Cloudinary Generative Fill AI: Transform Images with Outpainting<\/title>\n<meta name=\"description\" content=\"This article explores how AI Generative Fill from Cloudinary helps you seamlessly resize and transform images with AI using outpainting automatically.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Generative Fill AI | Expanding Images With Cloudinary\u2019s AI-Powered Outpainting\" \/>\n<meta property=\"og:description\" content=\"This article explores how AI Generative Fill from Cloudinary helps you seamlessly resize and transform images with AI using outpainting automatically.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting\" \/>\n<meta property=\"og:site_name\" content=\"Cloudinary Blog\" \/>\n<meta property=\"article:published_time\" content=\"2024-05-07T19:10:02+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-10-20T23:13:21+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1687555016\/Blog-generative-fill\/Blog-generative-fill.jpg?_i=AA\" \/>\n\t<meta property=\"og:image:width\" content=\"2000\" \/>\n\t<meta property=\"og:image:height\" content=\"1100\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"melindapham\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"NewsArticle\",\"@id\":\"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting#article\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting\"},\"author\":{\"name\":\"melindapham\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/0d5ad601e4c3b5be89245dfb14be42d9\"},\"headline\":\"Generative Fill AI | Expanding Images With Cloudinary\u2019s AI-Powered Outpainting\",\"datePublished\":\"2024-05-07T19:10:02+00:00\",\"dateModified\":\"2025-10-20T23:13:21+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting\"},\"wordCount\":1755,\"publisher\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1687555016\/Blog-generative-fill\/Blog-generative-fill.jpg?_i=AA\",\"keywords\":[\"AI\",\"Featured\",\"Generative AI\",\"Image Transformation\"],\"inLanguage\":\"en-US\",\"copyrightYear\":\"2024\",\"copyrightHolder\":{\"@id\":\"https:\/\/cloudinary.com\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting\",\"url\":\"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting\",\"name\":\"Cloudinary Generative Fill AI: Transform Images with Outpainting\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting#primaryimage\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1687555016\/Blog-generative-fill\/Blog-generative-fill.jpg?_i=AA\",\"datePublished\":\"2024-05-07T19:10:02+00:00\",\"dateModified\":\"2025-10-20T23:13:21+00:00\",\"description\":\"This article explores how AI Generative Fill from Cloudinary helps you seamlessly resize and transform images with AI using outpainting automatically.\",\"breadcrumb\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting#primaryimage\",\"url\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1687555016\/Blog-generative-fill\/Blog-generative-fill.jpg?_i=AA\",\"contentUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1687555016\/Blog-generative-fill\/Blog-generative-fill.jpg?_i=AA\",\"width\":2000,\"height\":1100,\"caption\":\"Image showing graphic example of a photo of a backpacker and resizing with automatic AI fill in image painted in.\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/cloudinary.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Generative Fill AI | Expanding Images With Cloudinary\u2019s AI-Powered Outpainting\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#website\",\"url\":\"https:\/\/cloudinary.com\/blog\/\",\"name\":\"Cloudinary Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/cloudinary.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\",\"name\":\"Cloudinary Blog\",\"url\":\"https:\/\/cloudinary.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA\",\"contentUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA\",\"width\":312,\"height\":60,\"caption\":\"Cloudinary Blog\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/0d5ad601e4c3b5be89245dfb14be42d9\",\"name\":\"melindapham\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/e6f989fa97fe94be61596259d8629c3df65aec4c7da5c0000f90d810f313d4f4?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/e6f989fa97fe94be61596259d8629c3df65aec4c7da5c0000f90d810f313d4f4?s=96&d=mm&r=g\",\"caption\":\"melindapham\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Cloudinary Generative Fill AI: Transform Images with Outpainting","description":"This article explores how AI Generative Fill from Cloudinary helps you seamlessly resize and transform images with AI using outpainting automatically.","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:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting","og_locale":"en_US","og_type":"article","og_title":"Generative Fill AI | Expanding Images With Cloudinary\u2019s AI-Powered Outpainting","og_description":"This article explores how AI Generative Fill from Cloudinary helps you seamlessly resize and transform images with AI using outpainting automatically.","og_url":"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting","og_site_name":"Cloudinary Blog","article_published_time":"2024-05-07T19:10:02+00:00","article_modified_time":"2025-10-20T23:13:21+00:00","og_image":[{"width":2000,"height":1100,"url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1687555016\/Blog-generative-fill\/Blog-generative-fill.jpg?_i=AA","type":"image\/jpeg"}],"author":"melindapham","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"NewsArticle","@id":"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting#article","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting"},"author":{"name":"melindapham","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/0d5ad601e4c3b5be89245dfb14be42d9"},"headline":"Generative Fill AI | Expanding Images With Cloudinary\u2019s AI-Powered Outpainting","datePublished":"2024-05-07T19:10:02+00:00","dateModified":"2025-10-20T23:13:21+00:00","mainEntityOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting"},"wordCount":1755,"publisher":{"@id":"https:\/\/cloudinary.com\/blog\/#organization"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1687555016\/Blog-generative-fill\/Blog-generative-fill.jpg?_i=AA","keywords":["AI","Featured","Generative AI","Image Transformation"],"inLanguage":"en-US","copyrightYear":"2024","copyrightHolder":{"@id":"https:\/\/cloudinary.com\/#organization"}},{"@type":"WebPage","@id":"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting","url":"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting","name":"Cloudinary Generative Fill AI: Transform Images with Outpainting","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting#primaryimage"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1687555016\/Blog-generative-fill\/Blog-generative-fill.jpg?_i=AA","datePublished":"2024-05-07T19:10:02+00:00","dateModified":"2025-10-20T23:13:21+00:00","description":"This article explores how AI Generative Fill from Cloudinary helps you seamlessly resize and transform images with AI using outpainting automatically.","breadcrumb":{"@id":"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting#primaryimage","url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1687555016\/Blog-generative-fill\/Blog-generative-fill.jpg?_i=AA","contentUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1687555016\/Blog-generative-fill\/Blog-generative-fill.jpg?_i=AA","width":2000,"height":1100,"caption":"Image showing graphic example of a photo of a backpacker and resizing with automatic AI fill in image painted in."},{"@type":"BreadcrumbList","@id":"https:\/\/cloudinary.com\/blog\/generative-fill-ai-powered-outpainting#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/cloudinary.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Generative Fill AI | Expanding Images With Cloudinary\u2019s AI-Powered Outpainting"}]},{"@type":"WebSite","@id":"https:\/\/cloudinary.com\/blog\/#website","url":"https:\/\/cloudinary.com\/blog\/","name":"Cloudinary Blog","description":"","publisher":{"@id":"https:\/\/cloudinary.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cloudinary.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/cloudinary.com\/blog\/#organization","name":"Cloudinary Blog","url":"https:\/\/cloudinary.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA","contentUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA","width":312,"height":60,"caption":"Cloudinary Blog"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/0d5ad601e4c3b5be89245dfb14be42d9","name":"melindapham","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/e6f989fa97fe94be61596259d8629c3df65aec4c7da5c0000f90d810f313d4f4?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/e6f989fa97fe94be61596259d8629c3df65aec4c7da5c0000f90d810f313d4f4?s=96&d=mm&r=g","caption":"melindapham"}}]}},"jetpack_featured_media_url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1687555016\/Blog-generative-fill\/Blog-generative-fill.jpg?_i=AA","_links":{"self":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/29831","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/users\/87"}],"replies":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/comments?post=29831"}],"version-history":[{"count":28,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/29831\/revisions"}],"predecessor-version":[{"id":38919,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/29831\/revisions\/38919"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media\/29832"}],"wp:attachment":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media?parent=29831"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/categories?post=29831"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/tags?post=29831"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}