{"id":23257,"date":"2025-11-02T15:49:23","date_gmt":"2025-11-02T23:49:23","guid":{"rendered":"http:\/\/jnack.com\/blog\/?p=23257"},"modified":"2025-11-02T15:49:54","modified_gmt":"2025-11-02T23:49:54","slug":"a-cool-new-photoshop-feature-thats-still-kinda-dumb","status":"publish","type":"post","link":"http:\/\/jnack.com\/blog\/2025\/11\/02\/a-cool-new-photoshop-feature-thats-still-kinda-dumb\/","title":{"rendered":"A cool new Photoshop feature (that&#8217;s still kinda dumb)"},"content":{"rendered":"\n<p>I&#8217;m pleased to see that as <a href=\"http:\/\/jnack.com\/blog\/category\/typography\/\">promised<\/a> back in May, Photoshop has added a &#8220;Dynamic Text&#8221; toggle that automatically resizes the size of the letters in each line to produce a visually &#8220;packed&#8221; look:<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-9-16 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Photosop Beta 2025 New Feature - The new Dynamic Text Tool #ducthangds\" width=\"510\" height=\"906\" src=\"https:\/\/www.youtube.com\/embed\/TAwXyT7k-t0?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>Results can be really cool, but because the model has no knowledge of the <em>meaning and importance<\/em> of each word, they can sometimes look pretty dumb. Here&#8217;s my canonical example, which visually emphasizes exactly the wrong thing:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"http:\/\/jnack.com\/blog\/wp-content\/uploads\/2025\/11\/Trip2Napa.jpg\"><img decoding=\"async\" loading=\"lazy\" src=\"http:\/\/jnack.com\/blog\/wp-content\/uploads\/2025\/11\/Trip2Napa.jpg\" alt=\"\" class=\"wp-image-23259\" width=\"296\" height=\"305\" srcset=\"http:\/\/jnack.com\/blog\/wp-content\/uploads\/2025\/11\/Trip2Napa.jpg 800w, http:\/\/jnack.com\/blog\/wp-content\/uploads\/2025\/11\/Trip2Napa-291x300.jpg 291w, http:\/\/jnack.com\/blog\/wp-content\/uploads\/2025\/11\/Trip2Napa-768x793.jpg 768w\" sizes=\"(max-width: 296px) 100vw, 296px\" \/><\/a><\/figure><\/div>\n\n\n<p><\/p>\n\n\n\n<p>I continue to want to see the best of both worlds, with a layout engine taking into account the meaning &amp; thus visual importance of words\u2014like\u00a0<a href=\"http:\/\/jnack.com\/blog\/2024\/12\/04\/ive-shipped-my-first-feature-at-microsoft\/\">what my team shipped last year<\/a>:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"http:\/\/jnack.com\/blog\/wp-content\/uploads\/2024\/12\/S1-2048x988.jpg\" alt=\"\"\/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>I&#8217;m absolutely confident that this can be done. I mean, just look at the kind of <a href=\"https:\/\/www.pinterest.com\/johnnack\/designer-inspiration\/generative-type\/\">complex layouts<\/a> I was knocking out in Ideogram a year ago.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"http:\/\/jnack.com\/blog\/wp-content\/uploads\/2025\/11\/Generative-type.jpg\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"632\" src=\"http:\/\/jnack.com\/blog\/wp-content\/uploads\/2025\/11\/Generative-type-1024x632.jpg\" alt=\"\" class=\"wp-image-23260\" srcset=\"http:\/\/jnack.com\/blog\/wp-content\/uploads\/2025\/11\/Generative-type-1024x632.jpg 1024w, http:\/\/jnack.com\/blog\/wp-content\/uploads\/2025\/11\/Generative-type-300x185.jpg 300w, http:\/\/jnack.com\/blog\/wp-content\/uploads\/2025\/11\/Generative-type-768x474.jpg 768w, http:\/\/jnack.com\/blog\/wp-content\/uploads\/2025\/11\/Generative-type.jpg 1202w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>The missing ingredient is just the link between image layouts &amp; editability\u2014provided either by bitmap->native conversion (often hard, but doable in some cases), or by in-place editing (e.g. change &#8220;Merry Christmas&#8221; to &#8220;Happy New Year&#8221; on a sign, then regenerate the image using the same style &amp; dimensions)\u2014or both.<\/p>\n\n\n\n<p>Bonus points go to the app &amp; model that enable generation with transparency (for easy compositing), or conversion to vectors\u2014or, again, \u00bf<em>porque no los dos?<\/em> \ud83d\ude42<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;m pleased to see that as promised back in May, Photoshop has added a &#8220;Dynamic Text&#8221; toggle that automatically resizes the size of the letters in each line to produce a visually &#8220;packed&#8221; look: Results can be really cool, but because the model has no knowledge of the meaning and importance of each word, they [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":[],"categories":[9],"tags":[],"_links":{"self":[{"href":"http:\/\/jnack.com\/blog\/wp-json\/wp\/v2\/posts\/23257"}],"collection":[{"href":"http:\/\/jnack.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/jnack.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/jnack.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/jnack.com\/blog\/wp-json\/wp\/v2\/comments?post=23257"}],"version-history":[{"count":3,"href":"http:\/\/jnack.com\/blog\/wp-json\/wp\/v2\/posts\/23257\/revisions"}],"predecessor-version":[{"id":23262,"href":"http:\/\/jnack.com\/blog\/wp-json\/wp\/v2\/posts\/23257\/revisions\/23262"}],"wp:attachment":[{"href":"http:\/\/jnack.com\/blog\/wp-json\/wp\/v2\/media?parent=23257"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/jnack.com\/blog\/wp-json\/wp\/v2\/categories?post=23257"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/jnack.com\/blog\/wp-json\/wp\/v2\/tags?post=23257"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}