Center image on canvas
Hi,
the following code scales an image (srcImage) to a maximum size (maxSize).
My aim is to center this image on a square canvas of maxSize.
The existing code so far:
public BufferedImage fitImage(BufferedImage srcImage, int maxSize)
// determine scaling factor for optimal fitting
double scaleX = (double) maxSize/srcImage.getWidth();
double scaleY = (double) maxSize/srcImage.getHeight();
double scale = Math.min(scaleX, scaleY);
// blur image
if (scale <= 0.5)
int radius = (int) Math.floor(1 / scale);
srcImage = blur(srcImage, radius);
// create new image buffer
int newWidth = (int) (srcImage.getWidth() * scale);
int newHeight = (int) (srcImage.getHeight() * scale);
WritableRaster dstRaster = srcImage.getRaster().createCompatibleWritableRaster(newWidth, newHeight);
BufferedImage dstImage = new BufferedImage(srcImage.getColorModel(), dstRaster, false, new Hashtable());
// scale image
AffineTransformOp op = new AffineTransformOp(AffineTransform.getScaleInstance(scale, scale), AffineTransformOp.TYPE_BILINEAR);
op.filter(srcImage, dstImage);
return dstImage;
}Any hints how to do this?
Cheers
Jonny
Hi Darryl,
Thanks for your great help.
I think we partitially talked at cross-purposes, because of my bad description of the problem. My bad!
My aim was to first proportionally scale down an image to either x or y in maxSize.
Then draw it on a (white) canvas with size x: maxSize, y: maxsize.
For now I solved it this way:
public BufferedImage fitImage(BufferedImage srcImage, int maxSize)
// determine scaling factor for optimal fitting
double scaleX = (double) maxSize/srcImage.getWidth();
double scaleY = (double) maxSize/srcImage.getHeight();
double scale = Math.min(scaleX, scaleY);
// blur image
if (scale <= 0.5)
int radius = (int) Math.floor(1 / scale);
srcImage = blur(srcImage, radius);
// create new image buffer
int newWidth = (int) (srcImage.getWidth() * scale);
int newHeight = (int) (srcImage.getHeight() * scale);
WritableRaster dstRaster = srcImage.getRaster().createCompatibleWritableRaster(newWidth, newHeight);
BufferedImage dstImage = new BufferedImage(srcImage.getColorModel(), dstRaster, false, new Hashtable());
// scale image
AffineTransformOp op = new AffineTransformOp(AffineTransform.getScaleInstance(scale, scale), AffineTransformOp.TYPE_BILINEAR);
op.filter(srcImage, dstImage);
BufferedImage canvasImage = new BufferedImage(maxSize, maxSize, srcImage.getType());
Graphics2D g2 = canvasImage.createGraphics();
g2.setColor(Color.WHITE);
g2.fillRect( 0, 0, maxSize, maxSize );
g2.drawImage( dstImage,
( maxSize - dstImage.getWidth( null ) ) / 2,
( maxSize - dstImage.getHeight( null ) ) / 2,
null );
return canvasImage;
}If someone has a better way (I bet there is one) feel free to tell me.
Cheers
Jonny
Similar Messages
-
How to get transparency scroll bar to view background image of canvas.
HI,
How to get transparency to path in canvas to view background image in canvas using scroll bar control.?
This is my present output:
My Xaml Code:
<Grid Height="auto" Name="grid1">
<TabControl Background="Bisque">
<TabItem Header="Tools">
<Grid Height="1000" Width="1000" Name="grid">
<Border BorderThickness="0.2" BorderBrush="Black" Height="820" Width="820" ClipToBounds="True" Margin="90,99,90,81"></Border>
<Grid>
<Button Content="Original Size" Height="23" Name="btn_Original" Width="75" Click="btnOriginalSizePosition" Margin="4,4,921,973" />
<TextBox Height="20" HorizontalAlignment="Left" Margin="62,49,0,0" x:Name="txtNoOfZones" VerticalAlignment="Top" Width="49"
MaxLength="2" PreviewTextInput="txtNoOfZones_PreviewTextInput"/>
<TextBox Height="20" HorizontalAlignment="Right" Margin="0,71,890,0" x:Name="txtSec" VerticalAlignment="Top" Width="49" PreviewTextInput="txtSec_PreviewTextInput" MaxLength="3"/>
<Button Content="OK" Height="32" HorizontalAlignment="Left" Margin="117,59,0,0" Name="btnNoOfZones" VerticalAlignment="Top" Width="39" Click="btnNoOfZones_Click" />
<Label Content="Zone Number selected :" Height="28" HorizontalAlignment="Right" Margin="0,0,451,0" Name="lblZone" VerticalAlignment="Top" />
<Label Content="Sector Number in selected Zone :" Height="28" HorizontalAlignment="Right" Margin="364,22,451,0" Name="lblSector" VerticalAlignment="Top" />
<Label Content="Filled Color applied in selected sector :" Height="28" HorizontalAlignment="Right" Margin="336,44,451,0" Name="lblColor" VerticalAlignment="Top" />
<Label HorizontalAlignment="Left" Margin="569,0,0,0" Name="lblZoneNumber" Height="28" VerticalAlignment="Top" />
<Label Height="28" HorizontalAlignment="Left" Margin="569,22,0,0" Name="lblSectorNumber" VerticalAlignment="Top" />
<Label Height="30" HorizontalAlignment="Left" Margin="569,44,0,0" Name="lblFillColor" VerticalAlignment="Top" FontWeight="Bold"/>
<Label Content="Sectors :" Height="28" HorizontalAlignment="Left" Margin="7,67,0,905" Width="69" />
<Label Content="Zones :" HorizontalAlignment="Left" Margin="13,44,0,928"/>
<TextBlock Height="23" HorizontalAlignment="Left" Margin="4,32,0,0" Text="Change No.of Zones, sectors below and click OK button" VerticalAlignment="Top" Width="294" FontFamily="Cambria" FontSize="12" FontStyle="Italic" FontWeight="Bold" />
<RadioButton Content="Single Sector" Height="16" HorizontalAlignment="Left" Margin="744,24,0,0" Name="rBtnSingleSector" VerticalAlignment="Top" GroupName="Selection"/>
<RadioButton Content="Sector Zone" Height="16" HorizontalAlignment="Left" Margin="744,44,0,0" Name="rBtnSectorZone" VerticalAlignment="Top" GroupName="Selection"/>
<RadioButton Content="Circular Zone" Height="16" HorizontalAlignment="Left" Margin="744,64,0,0" Name="rBtnCircularZone" VerticalAlignment="Top" GroupName="Selection"/>
<RadioButton Content="Panning" Height="24" HorizontalAlignment="Left" Margin="744,4,0,0" Name="rBtnPanning" VerticalAlignment="Top" Width="74" GroupName="Selection"/>
<Border x:Name="clipBorder" BorderBrush="Black" BorderThickness="0" ClipToBounds="True" Height="810" Width="810" Margin="95,104,95,86" CornerRadius="10">
<Canvas x:Name="CanvasPanel" Height="800" Width="800" Background="Transparent" ClipToBounds="True"></Canvas>
</Border>
<RadioButton Content="Random Color" HorizontalAlignment="Left" Margin="868,5,0,979" Name="rdBtnRandomColor" GroupName="rdbtnGroupFillColor"/>
<RadioButton Content="Red Color" Height="16" HorizontalAlignment="Left" Margin="868,24,0,0" Name="rdBtnRedColor" VerticalAlignment="Top" GroupName="rdbtnGroupFillColor" Foreground="#FFF81010" FontWeight="Bold" />
<RadioButton Content="Green Color" Height="16" HorizontalAlignment="Left" Margin="868,44,0,0" Name="rdBtnGreenColor" VerticalAlignment="Top" GroupName="rdbtnGroupFillColor" Foreground="#FF175F17" FontWeight="Bold" />
<RadioButton Content="Adjacent" Height="16" HorizontalAlignment="Left" Margin="435,81,0,0" Name="rdBtnAdjacent" VerticalAlignment="Top" GroupName="Selection" />
</Grid>
</Grid>
</TabItem>
<TabItem Header="Change Background">
<Grid Height="1000" VerticalAlignment="Top" Background="Bisque">
<Button Height="70" Width="70" Margin="6,1,892,929" Name="btnBrowseImage" Click="btnAll">
<Image x:Name="browseIcon" Source="D:\WPF\Projects\TabControlVRI_18_12_2014\Images\img.png" MouseLeftButtonDown="Image_MouseLeftButtonDown_1"/>
</Button>
<Button Height="70" Width="70" Margin="92,1,806,929" Name="btnCenterPoint" Click="btnAll">
<Image x:Name="centerIcon" Source="D:\WPF\Projects\TabControlVRI_18_12_2014\Images\center.jpg" Width="54" Height="48" />
</Button>
<Button Height="70" Width="70" Margin="179,1,719,929" Click="btnAll">
<Image x:Name="boundaryIcon" Source="D:\WPF\Projects\TabControlVRI_18_12_2014\Images\Path_Simple.png" Height="44" Width="49" />
</Button>
<Image Name="imgBackground" Height="800" Width="800" MouseLeftButtonDown="imgBackground_MouseLeftButtonDown">
</Image>
</Grid>
</TabItem>
</TabControl>
</Grid>
C# code:
OpenFileDialog op = new OpenFileDialog();
ImageBrush ib = new ImageBrush();
private void Image_MouseLeftButtonDown_1(object sender, RoutedEventArgs e)
op.Title = "Select a picture";
op.Filter = "All supported graphics|*.jpg;*.jpeg;*.png|" +
"JPEG (*.jpg;*.jpeg)|*.jpg;*.jpeg|" +
"Portable Network Graphic (*.png)|*.png";
if (op.ShowDialog() == true)
ib.ImageSource = new BitmapImage(new Uri(op.FileName));
imgBackground.Source = new BitmapImage(new Uri(op.FileName));
CanvasPanel.Background = ib;
Please help me out to get transparency for path in canvas to view background image in canvas.
The complete code is in below link:
https://onedrive.live.com/redir?resid=876CFAE94C306176!112&authkey=!AC1sQIYwyoRYT_o&ithint=file%2crar
Regards,
Viswa.Hi ViswAmmu,
>>Please help me out to get transparency for path in canvas to view background image in canvas.
If I'm not misunderstanding, I think you just need to loop through all Canvas.Children and set Opacity property for them:
private void Image_MouseLeftButtonDown_1(object sender, RoutedEventArgs e)
//Loop through all children items
foreach(UIElement v in CanvasPanel.Children)
v.Opacity = 0;
op.Title = "Select a picture";
op.Filter = "All supported graphics|*.jpg;*.jpeg;*.png|" +
"JPEG (*.jpg;*.jpeg)|*.jpg;*.jpeg|" +
"Portable Network Graphic (*.png)|*.png";
if (op.ShowDialog() == true)
ib.ImageSource = new BitmapImage(new Uri(op.FileName));
imgBackground.Source = new BitmapImage(new Uri(op.FileName));
CanvasPanel.Background = ib;
Screenshot:
We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
Click
HERE to participate the survey. -
Hi.
I am trying to place image on canvas.
However the image doesn't show!!!!!!!!!!!!! :(
no error and compiles well....
private void AddTile(String image, int startx, int starty, int endx, int endy)
try{
tiles = ImageIO.read(new File(image));
catch(Exception e)
System.out.println("Image not Found");
Graphics2D a =(Graphics2D)tiles.getGraphics();
a.drawImage(tiles, 20,20,20,20,TileCanvas);
if the above function is called the image should be placed on canvas right?
TileCanvas is a canvas, and tiles is BufferedImage.
just in case I'll put my source code followed by this
* MapEditor.java
* Created on 2006�� 7�� 20�� (��), ���� 11:48
import java.awt.*;
import java.awt.event.*;
import java.awt.image.*;
import javax.swing.*;
import javax.swing.event.*;
import javax.imageio.*;
import java.io.*;
* @author SeiKwon
public class EditorComponent extends javax.swing.JFrame
private java.awt.Button AddTile;
private java.awt.Button DeleteTile;
private javax.swing.JMenu FileMenu;
private javax.swing.JMenuItem LoadFile;
private javax.swing.JPanel ManageTilePanel;
private java.awt.Canvas MapCanvas;
private javax.swing.JMenuBar MenuBar;
private javax.swing.JMenuItem SaveFile;
private javax.swing.JScrollPane ShowMapScroll;
private java.awt.Canvas TileCanvas;
private javax.swing.JScrollPane TileScroll;
private BufferedImage tiles;
private int tilecount = 0;
/** Creates new form MapEditor */
public EditorComponent()
initComponents();
AddTile("test.jpg", 0, 0, 10, 10);
private void initComponents()
ManageTilePanel = new javax.swing.JPanel();
TileScroll = new javax.swing.JScrollPane();
TileCanvas = new java.awt.Canvas();
AddTile = new java.awt.Button();
DeleteTile = new java.awt.Button();
ShowMapScroll = new javax.swing.JScrollPane();
MapCanvas = new java.awt.Canvas();
MenuBar = new javax.swing.JMenuBar();
FileMenu = new javax.swing.JMenu();
SaveFile = new javax.swing.JMenuItem();
LoadFile = new javax.swing.JMenuItem();
getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
ManageTilePanel.setLayout(null);
ManageTilePanel.setBorder(new javax.swing.border.TitledBorder("Tiles"));
TileCanvas.setBackground(new java.awt.Color(255, 255, 255));
TileScroll.setViewportView(TileCanvas);
ManageTilePanel.add(TileScroll);
TileScroll.setBounds(10, 22, 100, 230);
AddTile.setLabel("Add");
ManageTilePanel.add(AddTile);
AddTile.setBounds(10, 260, 50, 26);
DeleteTile.setLabel("Delete");
ManageTilePanel.add(DeleteTile);
DeleteTile.setBounds(60, 260, 50, 26);
getContentPane().add(ManageTilePanel, new org.netbeans.lib.awtextra.AbsoluteConstraints(310, 10, 119, 290));
ManageTilePanel.getAccessibleContext().setAccessibleName("TilesPanel");
MapCanvas.setBackground(new java.awt.Color(255, 255, 255));
MapCanvas.addMouseListener(new java.awt.event.MouseAdapter()
public void mouseEntered(java.awt.event.MouseEvent evt)
MapCanvasMouseEntered(evt);
ShowMapScroll.setViewportView(MapCanvas);
getContentPane().add(ShowMapScroll, new org.netbeans.lib.awtextra.AbsoluteConstraints(12, 10, 290, 290));
FileMenu.setText("File");
FileMenu.setContentAreaFilled(false);
SaveFile.setIcon(new javax.swing.ImageIcon("D:\\java\\MapEditor\\Image\\Save16.gif"));
SaveFile.setText("Save");
SaveFile.addActionListener(new java.awt.event.ActionListener()
public void actionPerformed(java.awt.event.ActionEvent evt)
SaveFileActionPerformed(evt);
FileMenu.add(SaveFile);
LoadFile.setIcon(new javax.swing.ImageIcon("D:\\java\\MapEditor\\Image\\Open16.gif"));
LoadFile.setText("Load");
LoadFile.addActionListener(new java.awt.event.ActionListener()
public void actionPerformed(java.awt.event.ActionEvent evt)
LoadFileActionPerformed(evt);
FileMenu.add(LoadFile);
MenuBar.add(FileMenu);
setJMenuBar(MenuBar);
pack();
private void MapCanvasMouseEntered(java.awt.event.MouseEvent evt)
Cursor cursorshape = MapCanvas.getCursor();
MapCanvas.setCursor(cursorshape.getPredefinedCursor(CROSSHAIR_CURSOR));
private void AddTile(String image, int startx, int starty, int endx, int endy)
try{
tiles = ImageIO.read(new File(image));
catch(Exception e)
System.out.println("Image not Found");
Graphics2D a =(Graphics2D)tiles.getGraphics();
a.drawImage(tiles, 20,20,20,20,TileCanvas);
private void LoadFileActionPerformed(java.awt.event.ActionEvent evt)
FileDialog fd = new FileDialog(this, "Open", FileDialog.LOAD);
//fd.setFile("*.map");
fd.setDirectory(".");
fd.setVisible(true);
String filename = fd.getFile();
System.out.println(filename);
private void SaveFileActionPerformed(java.awt.event.ActionEvent evt)
FileDialog fd = new FileDialog(this, "Save", FileDialog.SAVE);
//fd.setFile("*.map");
//fd.setFilenameFilter("*.map"); // HOW TO USE?????????????
fd.setDirectory(".");
fd.setVisible(true);
String filename = fd.getFile();
System.out.println(filename);
public static void main(String args[])
java.awt.EventQueue.invokeLater(new Runnable()
public void run()
new EditorComponent().setVisible(true);
}You have at least two problems.
1) You are mixing AWT and Swing. Instead of using a Canvas you should use either a JComponent or a JPanel.
2) In Swing, drawing such are you are doing should be done within the paintComponent(Graphics g) method using the Graphics provided as an argument to the method.
P.S. I can't test you code because for some reason you feal the need to use a NetBeans specific layout manager. -
OutOf Memory Error while saving image of canvas
Hi,
I am facing a weired problem while saving the image of the graphics in Canvas. It's giving me OutOfMemory error. Here is snippet of code:
if(cmd.equals(C.ACTION_SAVE)){
try {
FileDialog fd = new FileDialog(frame, "Save ProcessInstance as JPEG", FileDialog.SAVE);
fd.setFile(processInstance.getProcessDefinition().getName() +processInstance.getProcessOwner() +processInstance.getProcessOwnerId() +".jpeg");
fd.show();
String name = fd.getDirectory()+fd.getFile();
int w = canvas.getWidth(), h = canvas.getHeight();
BufferedImage image = new BufferedImage(w, h,
BufferedImage.TYPE_INT_RGB);
Graphics2D g2 = image.createGraphics();
canvas.paint(g2);
g2.dispose();
ImageIO.write(image, "jpeg", new File(name));
} catch (IOException e) {
System.err.println(e);
}Hi,
I tried to run garbage collector for the same and now its working fine. I want to know is there any drawback of using this approach. I am new to java and waiting for ur expert comments. I added following lines in the above code just below ImageIO.write(image, "jpeg", new File(name));:
image = null;
Runtime r = Runtime.getRuntime();
r.gc(); -
How to save an image from canvas to jpeg2000 format?
good day! i would like some help about jj2000. i wish to save an image from canvas to a jpeg2000 format file. how will i do it using the jj2000? i just need to save it to a file.
please help!!!
thank you in advance!
lrdsI am not familiar with Jpeg2000, but the easiest way I've found to go from Java to a JPeg file is with Java Adavanced Imaging (JAI) package from Sun. Take a look at it and see if it meets your requirements.
-
Displaying images in canvas one after another
Hi all,
I have a problem displaying images in canvas one after another. I am using for loop and when i run the application, all images run back in the and only finally only the last image gets displayed in the emulator. I also used thread.sleep(). But it din't work.
Here is my code:
// A canvas that illustrates image drawing
class DrawImageCanvas extends Canvas
Image image;
public void paint(Graphics g)
int width = getWidth();
int height = getHeight();
g.setColor(0);
g.fillRect(0, 0, width, height);
String images[]={"paint_2.PNG","radha.PNG","cute.png","design.png","flowers.png"};
for(int i=0;i<images.length;i++)
image = null;
System.out.println("/"+images);
try
image = Image.createImage("/"+images[i]);
catch (IOException ex)
System.out.println(ex);
g.setColor(0xffffff);
g.drawString("Failed to load image!", 0, 0, Graphics.TOP | Graphics.LEFT);
return;
if (image != null)
g.drawImage(image, width/2, height/2, Graphics.VCENTER | Graphics.HCENTER);
try
Thread.sleep(5000);
catch(Exception ex)
System.out.println("the exception is.."+ex);
Help me and Thanks in advance.See the code below : prefer the use of a Timer and a TimerTask instead of Thread.sleep().
showNotify (from Canvas) is used to launch the timer.
import java.io.IOException;
import java.util.Timer;
import java.util.TimerTask;
import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
public class DrawImage extends Canvas {
Image image;
String images[] = {"img1.png", "img2.png", "img3.png", "img4.png", "img5.png",
"img6.png", "img7.png"};
Image[] tabImage;
int imageCounter = 0;
public DrawImage(){
try {
tabImage = new Image[images.length];
for (int i = 0; i < images.length; i++)
tabImage[i] = Image.createImage("/" + images);
} catch (IOException ex) {
ex.printStackTrace();
public void paint(Graphics g) {
int width = getWidth();
int height = getHeight();
g.setColor(0);
g.fillRect(0, 0, width, height);
image = tabImage[imageCounter];
if (image != null)
g.drawImage(image, width / 2, height / 2, Graphics.VCENTER | Graphics.HCENTER);
else{
System.out.println("null");
g.setColor(0xffffff);
g.drawString("Failed to load image!", 0, 0, Graphics.TOP | Graphics.LEFT);
protected void showNotify(){
Timer t = new Timer();
t.schedule(new PhotoSwitcher(), 5000, 5000);
private class PhotoSwitcher extends TimerTask{
public void run() {
if (imageCounter < images.length - 1)
imageCounter++;
else
imageCounter = 0;
repaint();
I hope this will help you !
fetchy.
Edited by: fetchy on 14 ao�t 2008 09:48 -
Can anyone explain me how to scale the image in canvas in flash builder 4.6
Can anyone explain me how to scale the image in canvas in flash builder 4.6, Scaling of image in component , can i get some examples .. it should set almost all size screen
-
Dropping image on canvas causes image to jump.
When I drop an image on a canvas in AIR the image "jumps" a few pixels to several from the current mouse location.
So if the mouse is at location (12, 12) and I drop the image it may appear at (10, 14), or (15, 20), or whatever. It doesn't appear to be a consistent offset like I would expect if this were caused by using global to local mouse position thing (but I'm not ruling that out anyway).
Secondly, when I then drag to move the image on the canvas the drag proxy will again jump many pixels from the mouse cursor.
Here is my mouse down handler:
private function dragBegin(event:MouseEvent):void
var dragInitiator:Image = Image(event.currentTarget);
var ds:DragSource = new DragSource();
ds.addData(dragInitiator, "img");
var dragProxy:Image = new Image();
dragProxy.source = event.currentTarget.source;
DragManager.doDrag(dragInitiator, ds, event, dragProxy);
And the drop handler:
private function dragDropHandler(event:DragEvent):void
var image:Image = Image(event.dragSource.dataForFormat("img"));
image.x = event.localX;
image.y = event.localY;
UIComponent(event.currentTarget).addChild(device);
What am I doing wrong that is causing this jumping?
Thanks,
-MarkHi,
I think the only way to do this is to use a jsp with a servlet, where the servlet would create the image and send it over as a stream, while the jsp would call on the link of the servlet and display that image using the HTML <IMG> tag.
So, if you have a servlet, lets call it PictureServlet.
This is what you would do in your servet:
// create that image and send it over from the doPost/doGet method of the servlet
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("image/jpg"); // set the stream to be a JPEG image
ServletOutputStream sos = response.getOutputStream(); // create the output stream
BufferedImage bImg = createImage(); // this is where you write on your image using canvas and return it as a Bufferedimage
ImageIO.write(bImg,"JPG",sos); // write the image to the stream as JPEG
sos.close(); // close the output stream
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
} This is how you would get that image and display it in your JSP.
<img src="../servlet/PictureServlet" name="pic">Note the path might be different, depending on the hierarchy of where jsps and servlets are stored on the server.
I hope this helps,
Val. -
How to fit image inside canvas Container?
Hi All,
I want to fit an image inside a canvas.
Making x and y to 0 of image is not working.
My problem is I am rotating image at 90 and I want to save that image. If i save normally it is not taking rotation.
So I am adding that image in a canvas and saving that canvas with rotated image.
Somehow some portion of canvas still remains empty after adding image to it.
Any idea how to perfectly fit image inside canvas?
Or How to rotate image bitmap data with maintainig aspect ratio?
Thank in advanceMx component don't handle rotation very well. Spark Group should handle it
better.
You may need to set the y to the height of the rotated image (its original
width). -
Photoshop CS4 Printer Controls will not center images
I have two Epson Printers-The Stylus Pro 4000 and the Stylus Photo 1280, both several years old. I have downloaded and installed the most recent drivers for each. When printing from CS4 to either printer, and using the "center image" choice, I cannot get the print to be centered with equal margins on opposing sides. I have read various articles on how to do this, but nothing seems to work. Any suggestions?
Thank you Jeff for your response. I have tried the approach of the
custom paper size, but it does not seem to work right on my
configuration. I will keep trying. Do any of your books deal with
another problem which i am having relative to my switch from PC
Windows XP to OSX relative to a concurrent switch from CS3 to CS4.
The color ICC printer profiles for my Epson 4000 have not been
recognized by CS4 printer dialog box, though Lightroom 2 does find
them. They still exist in a file in the Library. I am not sure
whether the OSX operating system and CS4 require a different format
for the profiles (ie. some connection with the Colorsync utiltity?)
In any event, I note your new book on CS4 is out. Would that deal
with this issue?
Dick Davidson
[email protected]
1140 Brantley Estates Drive
Altamonte Springs, Florida 32714 -
Image on canvas prob...
Is there any way to know that whether an image is present at particular location on canvas or not?
Actually, i have written a code that draws image on canvas and moving it randomly. I have to keep checking how many times the image passes through a rect area at particular location.....
...........Its a part of my project ..Plz help me out!Make a Rectangle with width and height equal to the moving image dimensions. Move/position the rectangle from your event code and draw the image at its origin (x,y). Then it is a simple matter to check for intersection between this moving rectangle and the target rectangle.
-
How to clear the image on canvas? I have a big image span the whole screen and I want to put another smaller image now. There is no "clear" method to be called! What I can do is to draw a rectangle. Any suggestion?
Thanks!The following should clear your screen.
// Clear the whole screen.
g.setColor(255, 255, 255);
g.fillRect(0, 0, getWidth(), getHeight()); -
Right click top bar to open Image Size/Canvas Size/Info?
I've just upgraded from PS 5 to PS CC. In previous versions I was able to just right click on the top image bar to bring up a dialog box allowing me to access the Image Size, Canvas Size, Image Info, etc... That does not seem to be the case with PS CC, or am I missing a prefence setting that will allow this?
Thanks!I tried your suggestion but still cannot access that info by right-clicking the bar. I've gone through my preference settings, primarily under the Interface section and enabled and disabled several options but still no luck. It's just habit from many years use and nice to be able to access several common settings I might adjust.
The keyboard shortcuts are fine also, but again habit and if my hand is already on the mouse it's just...or was just a simple click. (Me being lazy)
Thanks for the help and suggestions. If anyone else a suggestion, great! -
I did something wrong then i can't see the image in canvas when i'm not playing the video in timeline. It's very hard to edit without viewing changes in canvas. Im a beginner, I need your help.
Thank You
AdolfoHello
At first, image diapeared, canvas was white; after i commit my second error because i tried using toggling channels, image went sepia or red
Thank you
Adolfo -
How do you put a guide on the center of the canvas?
Hi all!
In earlier versions of Photoshop, you would snap at the center of any canvas while dragging a guide. In CS3, that behavior appears to be gone. Or is it?
Mike Witherell in Silver Spring, MDHow often do you have the need for center-snapped guidelines, Mike?
If only occasionally, how tough is it to use the technique I first mentioned?
If a lot, remember that it can be made into a custom Photoshop Action.
You're whining about something extremely minor, something that only takes about 5 seconds when done manually. Better you should complain about something important.
Maybe you are looking for
-
Why are Unicode Characters not displaying properly anymore ?
Hi, I've just update my firefox Mac version 19.0 to 20.0. The big problem is I cannot see our Burmese Unicode character anymore. I can see burmese character at ( www.facebook.com/futurewayeducation ) with 19.0 without doing any setting but with 20.0,
-
Aysnch Proxy calling from Inbound Proxy
Hello Experts, My scenario:- Legacy sending File to Inbound proxy and from Inbound proxy I am calling the outbound proxy method to send the data back to Legacy system. Its like File request -Inbound Proxy- Outbound Proxy Response- File. FileRequest-I
-
Dear Experts, Currently our scenario is as below. We are using XML for all outputs. once IDOC is generated it is passed to XML port and print is issued. To reprint IDOC we have a customised program where in we can enter idoc number and print output.
-
I want to get the max storage expansion possible for my macbook air 11-inch, Mid 2012
macbook details: Processor 1.7 GHz Intel Core i5 Memory 4 GB 1600 MHz DDR3 Graphics Intel HD Graphics 4000 1024 MB Macbook identifier MacBookAir5,1 i am not sure what would be better for me the 1tb aura or the 480 aura pro??
-
Sound preference pane no scroll bar
On both my intel Macs running 10.5.4, the sound preference pane has no scroll bar for the alert sounds so that it appears that there are only 4 alerts whereas the full complement IS actually there but you sort of have to drag on one of the highlighte