Copy link to clipboard
Copied
When I try to place a picture in photoshop CS6 either from drag&drop in the application window or from the place command, my image gets automatically resized based on the resolution (pixels per inch) of my document.
Example:
I create a new blank document, 1000*1000px @ 300ppi.
I have another image that I want to place in the document and this image measures 500*500px @ 100ppi.
I then go to File->Place and the image that appears is way too big. In the Info panel, it says that the image is 1500x1500 and the transform settings at the top indicate that the image hasen't been scaled because both width and height are at 100%
If I cahnge my document resolution (no resample) to 100ppi, the image has the right size when I place it.
So my question is: Is this normal? Because it has never done that with past versions of Photoshop. If it is normal, is there a way I can change this because placing an image based on it's physical (printed) size makes absolutely no sense. 1 pixel = 1 pixel.
Thank you for your help
Yes, it is normal to resize based on the physical dimensions -- this is because smart objects can work in different resolutions and need to go by the physical sizes.
Resize during place does not affect the scaling based on physical size - that needs to always happen.
And it sounds like what you really want is some command to get the pixel size of the child object to match the pixel size of the parent file, regardless of physical dimensions (resolution).
>> But it still doesn't explain why photoshop is resizing the image based on its resolution and not pixel size.
Because otherwise you couldn't use smart objects for placing FPO files, replacing content with higher resolution files.
And mixing documents of different resolutions would be a nightmare.
Photoshop honors the physical size you specified for your document.
Copy link to clipboard
Copied
I have never seen anything helpful from adobe representatives in any of these threads. All responses are always rude, unhelpful, and patronizing. How was this thread started in 2012 and still no resolve.... "moving this discussion elsewhere because this thread is full of photoshop n00bs trying to learn the basics of photoshop" LMAO /whAT? These are near photoshop professionals displaying a competent level of knowledge who are needing the bugs of this app to be sorted out that yall can't report to higher ups 10 YEARS LATER. People pay hundreds, thousands annually to have access to photoshop for their professional graphic designer teams. Adobe should be working overtime to make sure their product is up to par, bugs sorted, users HAPPY. I can't wait until a more sophisticated photoshop equivalent with a better equipped programing team comes along and blows adobe off the map. The clock is ticking.
Copy link to clipboard
Copied
How is still an issue?
I love how condecending some of the answers here are as well:
Photoshop resizing is not arbitrary however the way Photoshop works is very complex Pixel count doesn't always stay the same in fact sometimes there are two pixel resizing done. Therfore Photoshop behavior at first confuses its users and may seem to think its arbitrary. Its not arbitrary and once understood it no longer a problem.
It's very arbitrary when you're working in exact px size, I dont care at all what ppi the image has. Im never going to print them, I just need them to be the correct damn pixel size.
Or the ever helpful:
This is actually a very useful feature as Photoshop tries to match the resolution and image dimension to match your current canvas size.
Yeah for you maybe its a good thing but for me it randomly destroys images I import, very good feature /s
Are you corporate shills for Adobe because it seems like you're purposefully misinterpreting the issue.
Just give us an option to disable this very annoying ppi rescaling nonsense
Copy link to clipboard
Copied
Or provide a mechanism to re-size the pasted object/image independently of anything else?
Copy link to clipboard
Copied
Or provide a mechanism to re-size the pasted object/image independently of anything else?
By @AEKL
There is: copy/paste.
Everybody: this is how smart objects are designed to work. They honor the physical print sizes, not the pixel sizes. Effectively, it makes a raster/pixel image behave as if it was a vector object. That's the purpose of this.
And the reason is mainly for compatibility with vector applications like Illustrator. It's the only way it can work.
If you don't want this behavior, don't use smart objects. Just copy/paste instead, which will honor the pixel sizes.
Note this preference. Also note that the option to "resize during place" is just to limit the size to the current canvas, to prevent oversizing:
Copy link to clipboard
Copied
How on earth is there still no fix or anything for this. Do y'all want to be unprofessional on purpose (cursing removed)?
Copy link to clipboard
Copied
nevermind.. sorry
somehow didnt see the last posts.
There's on top of that also the option to keep resizing active and when needed right clicking on the smart object and choosing "Reset Transformation" which is the best way to go with imo.
Copy link to clipboard
Copied
It's just as relevant for me. I don't work for physical media, I make graphics that will never leave the digital environment. Dear dev team, please add the checkbox "Ignore PPI for placed images".
Copy link to clipboard
Copied
It already exists: copy/paste.
Copy link to clipboard
Copied
I'm sorry, are you suggesting that industry professional artists that have to actually pay for this program somehow don't understand copy and paste? You think that's what this is about? You think that this UNENDING PROBLEM is somehow not a problem? It is. IT IS. We're TELLING YOU it is. Adobe repeatedly acting like this is good and expected behavior when people tell them it's not, just mindlessly stating something like "that's copy and paste" without reading anything? You think that's a good way of handling anything?
Even if you were somehow right, then obviously this isn't messaged properly in any way, shape or form, huh?
The audacity of going up to someone and replying with impatience and rudeness to a DECADE OLD PROBLEM sums up everything wrong with Photoshop and Adobe. Ask an artist. Ask any digital painter you know. Ask them. I dare you.
I cannot believe this. You guys think you have a monopoly but let me tell you, it's shrinking. Fewer and fewer people on the art team need to use Photoshop. Even with a multi-million dollar company behind it, this is the response we get? YOU JUST GOT BETTER BRUSHES. How on EARTH can you think you know better and know how artists use your program?
Meanwhile, EVERY update to CSP, my coworkers will be talking EXCITEDLY about new features. We pay attention to the release dates! Absolutely appalling. Do better. FIX THIS.
Copy link to clipboard
Copied
@victoriana – you are not directly addressing Adobe or an Adobe Employee here, we are all just industry professionals such as yourself. It has been explained how the place command has been designed to work, if that doesn't suit, then the legacy alternative solution is copy/paste which has it's own set of requirements that may be misunderstood by some users.
This topic is a discussion, between end users, it is not a feature request "idea" nor is it a bug report:
Copy link to clipboard
Copied
What does "adobe community PROFESSIONAL" mean?
Copy link to clipboard
Copied
@victoriana wrote:
What does "adobe community PROFESSIONAL" mean?
Not the same thing as "Employee" – that's for sure :]
The Adobe Community Professionals Program consists of teachers, creatives, freelancers, authors, publishers, bloggers, hobbyists, and industry influencers from among our customer base who use their experience and expertise to educate and inspire their fellow users on the Adobe Support Community and other platforms.
I personally wouldn't think that I could "speak on behalf of Adobe" though.
Copy link to clipboard
Copied
A new topic idea/feature request has been created:
You can vote on the main topic (upvotes on individual comments/replies don't directly count in Adobe's decision-making).
Copy link to clipboard
Copied
@victoriana - I don't like scaling any more than you do. I too work in pixels, think in pixels, and always consider the native pixel size of any element in Photoshop. We're basically on the same page regarding that.
But as long as smart objects exist, it has to be consistent. There has to be rules. Not only within Photoshop, but also across applications. A large part of the raison d'etre of smart objects is to bring vector artwork from Illustrator into Photoshop. The only way to make it all behave consistently, is to use the ppi number to make raster elemets honor physical size measurements like a vector element does. The other way around isn't possible.
There are two basic ways to deal with this. One is to make sure your two Photoshop documents have the same ppi value assigned. If they do, they will always align pixel to pixel.
The other is to copy/paste instead of place. If you still want it to be a smart object, do that after the paste. I have a custom shortcut that converts to smart object (I use ctrl+B for that, and shift+ctrl+B to rasterize), so it's done in an instant.
That was the long answer. The short answer is use copy/paste. Yeah, I know, short answers are often perceived as rude. I get that. But the long version was two posts up, so the context was already there.
Copy link to clipboard
Copied
So the priority is to make it work with Illustrator instead of how PS users actually use the product? That's the priority/"expected behavior" being catered to?
Copy link to clipboard
Copied
You're missing the big picture. People use Photoshop in a million ways, not just your way or mine. It has to work consistently - or I can promise you the noise level from a much larger number of users would be deafening.
Can I ask why you need it to come in as a smart object if you're not going to scale it? Is it linked or embedded? Just so we know exactly what we're discussing here.
Copy link to clipboard
Copied
@D Fosse wrote:The other is to copy/paste instead of place. If you still want it to be a smart object, do that after the paste. I have a custom shortcut that converts to smart object (I use ctrl+B for that, and shift+ctrl+B to rasterize), so it's done in an instant.
One can use the following "faux" pixel place script as a workaround:
/*
Faux Place Embedded Retaining Pixel Size.jsx
v1.0 - 12th June 2022, Stephen Marsh
*/
#target photoshop
// Set the target doc
var targetDoc = activeDocument;
// Open menu to select the file instead of place embedded
var idopen = stringIDToTypeID( "open" );
executeAction(idopen, undefined, DialogModes.NO);
// Set the source doc
var sourceDoc = activeDocument;
// Set the source doc name
var sourceName = sourceDoc.name.replace(/\.[^\.]+$/, '');
// Select All
sourceDoc.selection.selectAll();
// Copy
sourceDoc.activeLayer.copy();
// Set the target doc
activeDocument = targetDoc;
// Paste
targetDoc.paste();
// Close the source doc
sourceDoc.close(SaveOptions.DONOTSAVECHANGES);
// Rename the layer
targetDoc.activeLayer.name = sourceName;
// Convert to smart object
var idnewPlacedLayer = stringIDToTypeID( "newPlacedLayer" );
executeAction(idnewPlacedLayer, undefined, DialogModes.NO);
https://prepression.blogspot.com/2017/11/downloading-and-installing-adobe-scripts.html
Copy link to clipboard
Copied
This script uses the standard place embedded command, however, it uses pixel sizing rather than resolution/dimensions:
/*
Place Embedded Retaining Pixel Size.jsx
v1.0 - 13th June 2022, Stephen Marsh
*/
#target photoshop
function main() {
// Conditionally activate "Skip Transform When Placing" General Preference
var ref = new ActionReference();
ref.putEnumerated(charIDToTypeID("capp"), charIDToTypeID("Ordn"), charIDToTypeID("Trgt"));
var applicationDesc = executeActionGet(ref);
var skipTransformPref = applicationDesc.getObjectValue(stringIDToTypeID("generalPreferences")).getBoolean(stringIDToTypeID("skipTransformSOFromLibrary"));
if (skipTransformPref === false) {
skipTransform(true);
}
// Conditionally deactivate "Resize During Place" General Preference
var aref = new ActionReference();
aref.putEnumerated(charIDToTypeID("capp"), charIDToTypeID("Ordn"), charIDToTypeID("Trgt"));
var appDesc = executeActionGet(aref);
var resizePlacePref = appDesc.getObjectValue(stringIDToTypeID("generalPreferences")).getBoolean(stringIDToTypeID("resizePastePlace"));
if (resizePlacePref === true) {
resizeDuringPlace(false);
}
// Call the place embedded dialog
placeEmbedded();
// Reset the SO transform
var idplacedLayerResetTransforms = stringIDToTypeID("placedLayerResetTransforms");
executeAction(idplacedLayerResetTransforms, undefined, DialogModes.NO);
// Optionally handle oversized content
if (confirm("Convert Background to layer & reveal all content?", true)) {
// Select the Background layer if it exists (silently fails if there is no such layer)
try {
app.activeDocument.activeLayer = app.activeDocument.backgroundLayer;
} catch (error) { }
// Convert the Background layer to a normal layer
if (activeDocument.activeLayer.isBackgroundLayer) {
activeDocument.activeLayer.isBackgroundLayer = false;
activeDocument.activeLayer.name = "Background";
}
activeDocument.revealAll();
}
// Reset General Preferences back to their original state
skipTransform(skipTransformPref);
resizeDuringPlace(resizePlacePref);
}
app.activeDocument.suspendHistory("Place Embedded Retaining Pixel Size.jsx", "main()");
// Functions
function placeEmbedded() {
var s2t = function (s) {
return app.stringIDToTypeID(s);
};
var descriptor = new ActionDescriptor();
var reference = new ActionReference();
reference.putEnumerated(s2t("menuItemClass"), s2t("menuItemType"), s2t("placeEnum"));
descriptor.putReference(s2t("null"), reference);
executeAction(s2t("select"), descriptor, DialogModes.ALL);
}
/*
Preference functions based on:
https://community.adobe.com/t5/photoshop-ecosystem-discussions/how-change-photoshop-preferences-by-script-resize-image-during-place/m-p/12544913
https://community.adobe.com/t5/photoshop-ecosystem-discussions/can-you-also-read-a-photoshop-preference-like-quot-resize-image-during-place-quot/m-p/12752645
*/
function skipTransform(setBoolean) {
sTT = stringIDToTypeID;
(ref = new ActionReference()).putProperty(
sTT("property"),
(gP = sTT("generalPreferences"))
);
ref.putClass(sTT("application"));
(dsc1 = new ActionDescriptor()).putReference(sTT("null"), ref);
(dsc2 = new ActionDescriptor()).putBoolean(sTT("skipTransformSOFromLibrary"), setBoolean);
dsc1.putObject(sTT("to"), gP, dsc2), executeAction(sTT("set"), dsc1);
}
function resizeDuringPlace(setBoolean) {
sIDtID = stringIDToTypeID;
(aref = new ActionReference()).putProperty(
sIDtID("property"),
(genPref = sIDtID("generalPreferences"))
);
aref.putClass(sIDtID("application"));
(adsc1 = new ActionDescriptor()).putReference(sIDtID("null"), aref);
(adsc2 = new ActionDescriptor()).putBoolean(sIDtID("resizePastePlace"), setBoolean);
adsc1.putObject(sIDtID("to"), genPref, adsc2), executeAction(sIDtID("set"), adsc1);
}
Copy link to clipboard
Copied
Is there a way i can import many files with this script? it only seems to import one at a time.
Copy link to clipboard
Copied
Is there a way i can import many files with this script? it only seems to import one at a time.
By @Peter Carlson
Which script, I posted 2 of them?
They were designed to place one by one.
How do you currently place multiple images at once?
Copy link to clipboard
Copied
In absolute AWE that this is still a problem in 2024. At least make it an option to ignore the ppi.
Yes, you can open the file as a separate document then copy and paste in, but:
Do Adobe developers not use Photoshop themselves and think "hm this is kind of annoying" literally every time they use the program?
Copy link to clipboard
Copied
Yes, you can open the file as a separate document then copy and paste in
By @ThioJoe
Simpler to just drag it over. From inside Photoshop, that does not create a smart object.
The thing is - this is fundamental to the whole smart object paradigm. This is by definition how smart objects behave. It's not a "bug" or a "problem". It's how it's designed to work.
Smart objects were in large part invented for compatibility with vector data (e.g. from Illustrator), and this is the only way to achieve that. A vector object doesn't know what a pixel is. The only way to connect the two, is through the ppi number.
So you can like or dislike it, but this is how it has to be.
For my own work, I don't like this any more than you do. So knowing how this works, I don't make smart objects until the image is in the file. Then I have a keyboard shortcut. This is a problem that is really easy to avoid.
Copy link to clipboard
Copied
I'm not talking about smart objects at all, I'm talking about importing a raster image from a file. Like dragging a file from Windows file explorer into the photoshop document window and playing the lottery on whether it will show up as 500% scale or 10% scale compared to the true resolution.
I don't want to import everything as a smart object because sometimes if I import a very large graphic, I do want to shrink it down before turning it into a smart object to save on the psd file size. On the other hand, if I import a graphic that is smaller than I want, I want to be able to see the native resolution of that image compared to the document so I can get a better idea of how much I can expand it. And many times I want to do nearest neighbor scaling which has to be done before it's a smart object. The only way to actually see the 'real' size of a graphic is to open it as a separate document first.
All that is besides the point though. There should be an option to directly import a raster image into a document at its native pixel resolution compared to the rest of the document, and it makes absolutely zero sense that it's not possible.
Copy link to clipboard
Copied
Every year this doesn't get fixed makes the notifications I get for this more and more enraging and hilarious. The repeated insistence that this is fine and good despite no one wanting it to work this way is incredible. Anyway, Stuart Semple is working on a suite called "Abode". Hopefully, this will be the replacement we've been longing for and won't have this issue that Adobe has refused to fix for over a decade now.
Copy link to clipboard
Copied
@ThioJoe That is making smart objects.
If it's not a smart object, it goes by pixels. Pixel for pixel.
If it is a smart object, it goes by physical sizes, as defined by the ppi number.
It's one or the other.
@victoriana There is nothing to fix, because it's working as designed. You can dislike it, but you'll make life much easier if you just work with reality instead of banging your head against it.
This is very easy to avoid. Just don't make smart objects.