Today’s Question: How can I copy just a portion of the pixels in an image to a new layer in Photoshop, so I can then move those pixels into another area of the image?
Tim’s Quick Answer: You can duplicate selected pixels from an image layer in Photoshop by selecting the pixels you want to duplicate, making sure the applicable layer is active on the Layers panel, and then choosing Layer > New > Layer Via Copy from the menu.
More Detail: Duplicating selected pixels can be very helpful for creating a composite image that combines duplicated elements from the same image, for performing image cleanup work to hide a blemish, or for a variety of different purposes.
The first step is to select the pixels you want to duplicate. In general I recommend selecting an area larger than the actual pixels you want to duplicate, both to make it easier to create the selection and so you have a bit of flexibility in how you blend the duplicated pixels into the surrounding area. For example, you could simply use the Lasso tool to create a selection that is a little larger than the area of pixels you actually want to duplicate.
After creating the selection you can choose Layer > New > Layer Via Copy (or hold the Ctrl/Command key on the keyboard while pressing the letter “J”) to duplicate the selected pixels to a new layer.
At this point you can add a layer mask to the new layer containing the duplicated pixels, so that you can hide the pixels on the outer edge of the area you selected in order to provide better blending for those pixels. Click the “Add Layer Mask” button (the circle inside a rectangle icon) at the bottom of the Layers panel to add a layer mask. Then paint with black to hide pixels from this image layer and white to reveal pixels that had been hidden.
You can also use the Move tool to move the pixels around to the desired area, and of course use the various Transform commands to resize or reshape this layer as well.