Windoze-like printing headaches with OSX10.5.7 upgrade

I expect this from Windoze, but that's why I moved to Mac!
Since I upgraded to 10.5.7, I've had a number of problems, with the latest being with printing. When I try to print, I get this error:
"The application Pages quit unexpectedly. The problem may have been caused by the SWWordProcessing plug-in"
I can print from MS Word, but not Pages. I can't even create a pdf in pages. Any ideas??

Sorry -- found it is a Pages issue, and not OSX or printing. I've moved it to the other forum.

Similar Messages

  • How can i print only with black cartridge, from any wireless device: like phones and tablets.

    HI,
      I have an HP LaserJet CM415fnw.
      I would like to print only with the black cartridge even if I want to print from a phone or tablet, or for anyone that wants to use the printer and doesn't know how to set up the printer to print only in black.
    Thank you.

    PrintnShare will work with 3G/4G
    http://i1224.photobucket.com/albums/ee374/Diavonex/Album%201/f4277cd6a23630c765c 3156e3efb2a63.jpg
    http://itunes.apple.com/sg/app/print-n-share-for-documents/id301656026?mt=8&ls=1

  • Each time I connect to my IBM computer it crashes with blue screen error message pops up. Apple say that it's my printer/camera drivers. The problem is with iTunes, it likes to play with all the ports on my comp and conflicts with prnt drivers. How to fix

    Does anyone know how to fix this problem without disabling my printer. It's very frustrating. It's either I have my iPad or my printer. iTunes likes to play with the ports on my computer thereby causing a conflict with my printer drivers. Apple should fix this problem, I'm so annoyed.

    When this problem first happened, I searched for threads and found a few.  See be;ow links:
    http://support.apple.com/kb/TS1502
    Apple say that its a driver problem, but I've never had this problem before so I am not convinced. Another thread, which I can't seem to find, suggests that it is an apple problem - itunes plays with the ports on the company causing conflicts with existing drivers. I isolated the conflict to my new Samsung printer. I uninstalled the Samsung printer driver and then can successfully connect my ipad without the blue screen appearing.
    It's not a windows problem. Windows is working fine. Only happens when Ipad is connected. Actually, this first happened after I installed the new version of itunes. I reget installing the new itunes version, but don't know how to reinstall the previous itunes version.

  • I use "element 12" and want  like in the old PS version due Automating and Contact  II upload multiple filesand print them with any columns and rows on the same page . How does it work?

    I use "element 12" and want  like in the old PS version due Automating and Contact  II upload multiple filesand print them with any columns and rows on the same page . How does it work?

    Can you supply a link?

  • What drivers do I need to install for my MG6360 printer to work with a Mac with OSX10.8.5?

    I have a PIXMA MG6360 printer that needs its software updating to return its full features but the Canon support line in Australia has prescribed several different options with no two alike and none providing the full features I once enjoyed.  'Phone and email support responses are all uniformly poor and I cannot get a straight story from any of the technicians I've encountered so far.  Currently, they've stopped responding altogether!
    I know where to download the latest software, but I'm not clear about which packages I should install and in what sequence and I cannot locate a definitive answer in the knowledge base.
    Can someone tell me which drivers etc I need and the sequence in which I should load them.
    I'm assuming that I have to uninstall the existing software and printer from the Mac (MacBook Pro 15", Late 2012 with OSX 10.8.5) first.  That's about the only thing the techs agree on so far!
    Also, does Canon update its software periodically and provide either automatic downloads or email warnings to update its users?
    All help gratefully recieved.

    With reference to this article from Apple that lists the models of printer drivers available from Apple for Lion and Snow Leopard, there are a couple of HP Photosmart 55xx printer drivers in the list. So if all was well with your  iMac then the driver should be downloaded and installed when you connect to the printer. With this not happening you can try installing this HP Driver update. It contains all the HP models in that driver list - that's why its over 500MB - and it may be just what you need to get this printer connected.

  • Printing problem with Photoshop CS 6 extended and HP printer

    Hi all, long time browser, first time poster.
    This is a weird issue, it should be noted from the first that I only have weird computer issues. I work at a technical High School where we have the whole Adobe CS6 Extended suite installed. We are running it under a fully patched version of Windows 7 and all the CS6 updates have been applied on 25 machines that all have the same issue. The problem is that when the students go to print to our HP Color Laser jet CP6015DN, the job can been seen loading into the queue, it races up to about 45MB, then sort of strolls to load the rest of the document, usually about 59 to 75 MB's in size. Then I watch the message go to processing, the front panel of the printer says processing, then the print job disappears from the printer queue and the printer and there is no print out. I printed out the usage job log and it shows none of the failed attempts to print and I check the event log page which does not show the errors either.
    Looks like a bad printer driver, right? So I download the new HP Universal printer driver, I normally do not do the Universal driver route as so many of my older printers have problems with it, but the CP6015DN seems to have trouble accessing the extended tray 5 with the specific drivers, but I have the same printing issue with the new Universal driver and the PS driver. So I wander through the HP manual and it suggests using profiles to print to the printer and move the color handling from Printer Manages Colors to Photoshop manages colors and I track down the ICC profiles for the printer on the HP site as the link in the book is dead, so try the CP6015srgb_d50.icc, CP6015_cmyk_d50.icc and CP6015.icc, I try all of these profiles with the newest PS printer driver and the same error, goes to the printer and into the bit bucket. Still no printout or error message.
    Strange thing is that if I do a test print, it prints fine, if I open a tif file in Photoshop, it prints fine, now the teacher says if they print to the Xeorx 7760 in the next room, it also prints out fine. It should be noted that we had so many issues with configuring the Xerox and adjusting controls it was the reason we purchased a HP proofing printer in the first place. But the next door lab is all Apple, which doesn't seem to have this issue. So I open the test document and save it as a PDF file instead the native Photoshop format, and it prints fine, which from what I've been reading on the internet may be the preferred way of printing proofs, I don't know, I've never really used Photoshop, but the teacher says this isn't an acceptable fix and the students should be expected to manage a number of revisions saved to PDF format, me I just go up a number at the end of the file name for every correction when editing documents.
    Any suggestions you have would be appreciated.
    Windows 7 X64
    Photoshop version 13.0.1 x64
    HP Color Laserjet CP6015 DN model number Q3932A
    Dell Optiplex 980 i5-650,  3.2Ghz, 8 GB RAM.

    Yes, Photoshop is up to date at Version 13.0.6.  I have even gone so far as to uninstall CS 6 and put CS 5 back on and still the same thing.  This is really frustrating, the people at Canon try to be helpful but wind up saying it's an Adobe problem and of course you can't talk to real people anymore about CS 6.  My research on the Internet has turned up nothing so I'm stuck.

  • Print JTable with Multiple pages and rows

    I took the printing example at http://java.sun.com/developer/onlineTraining/Programming/JDCBook/advprint.html#pe and modified it a bit to include the following:
    1) To Print Multiple pages
    2) To wrap lines that is too long for the column
    3) To print with a more proffesional style, so that it doesn't look like a screen capture is printed
    4) To align the numbers to the right and center column headings
    import javax.swing.*;
    import javax.swing.table.*;
    import java.awt.print.*;
    import java.util.*;
    import java.awt.*;
    import java.awt.event.*;
    import java.awt.geom.*;
    import java.awt.Dimension;
    import javax.print.*;
    import javax.print.attribute.*;
    import javax.print.attribute.standard.*;
    import java.text.*;
    public class Report implements Printable
         private final int LEFT_ALIGN = -1;
         private final int CENTER_ALIGN = 0;
         private final int RIGHT_ALIGN = 1;
         private JFrame frame;
         private JTable tableView;
         private String lastPrintDate;
         private Font defaultFont;
         private Font headerFont;
         private Font footerFont;
         private int headerHeight;
         private int footerHeight;
         private int cellBuffer = 5;
         private boolean first_pass;
         private ArrayList pages;
         public Report()
              frame = new JFrame("Sales Report");
              frame.addWindowListener(new WindowAdapter()
                   public void windowClosing(WindowEvent e)
                        System.exit(0);
              final String[] headers =
                   "ID",
                   "Description",
                   "open price",
                   "latest price",
                   "End Date",
                   "Quantity"
              int count = 0;
              final Object[][] data =
                   {new Integer(count++), "Box of BirosBox of BirosBox of BirosBox of BirosBox of BirosBox of BirosBox of BirosBox of BirosBox of BirosBox of BirosBox of BirosBox of BirosBox of BirosBox of Biros ppppppppppppppp", "1.00", "4.99", new Date(), new Integer(200000)},
                   {new Integer(count++), "Blue Biro", "0.10", "0.14", new Date(), new Integer(1)},
                   {new Integer(count++), "legal pad", "1.00", "2.49", new Date(), new Integer(1)},
                   {new Integer(count++), "tape", "1.00", "1.49", new Date(), new Integer(1)},
                   {new Integer(count++), "stapler", "4.00", "4.49", new Date(), new Integer(1)},
                   {new Integer(count++), "Box of Biros", "1.00", "4.99", new Date(), new Integer(2)},
                   {new Integer(count++), "Blue Biro", "0.10", "0.14", new Date(), new Integer(1)},
                   {new Integer(count++), "legal pad", "1.00", "2.49", new Date(), new Integer(1)},
                   {new Integer(count++), "tape", "1.00", "1.49", new Date(), new Integer(1)},
                   {new Integer(count++), "stapler", "4.00", "4.49", new Date(), new Integer(1)},
                   {new Integer(count++), "Box of Biros", "1.00", "4.99", new Date(), new Integer(2)},
                   {new Integer(count++), "Blue Biro", "0.10", "0.14", new Date(), new Integer(1)},
                   {new Integer(count++), "legal pad", "1.00", "2.49", new Date(), new Integer(1)},
                   {new Integer(count++), "tape", "1.00", "1.49", new Date(), new Integer(1)},
                   {new Integer(count++), "stapler", "4.00", "4.49", new Date(), new Integer(1)},
                   {new Integer(count++), "Box of Biros", "1.00", "4.99", new Date(), new Integer(2)},
                   {new Integer(count++), "Blue Biro", "0.10", "0.14", new Date(), new Integer(1)},
                   {new Integer(count++), "legal pad", "1.00", "2.49", new Date(), new Integer(1)},
                   {new Integer(count++), "tape", "1.00", "1.49", new Date(), new Integer(1)},
                   {new Integer(count++), "stapler", "4.00", "4.49", new Date(), new Integer(1)},
                   {new Integer(count++),  "Box of Biros", "1.00", "4.99", new Date(), new Integer(2)},
                   {new Integer(count++),  "Blue Biro", "0.10", "0.14", new Date(), new Integer(1)},
                   {new Integer(count++),  "legal pad", "1.00", "2.49", new Date(), new Integer(1)},
                   {new Integer(count++),  "tape", "1.00", "1.49", new Date(), new Integer(1)},
                   {new Integer(count++),  "stapler", "4.00", "4.49", new Date(), new Integer(1)},
                   {new Integer(count++),  "Box of Biros", "1.00", "4.99", new Date(), new Integer(2)},
                   {new Integer(count++),  "Blue Biro", "0.10", "0.14", new Date(), new Integer(1)},
                   {new Integer(count++),  "legal pad", "1.00", "2.49", new Date(), new Integer(1)},
                   {new Integer(count++),  "tape", "1.00", "1.49", new Date(), new Integer(1)},
                   {new Integer(count++),  "stapler", "4.00", "4.49", new Date(), new Integer(1)},
                   {new Integer(count++),  "Box of Biros", "1.00", "4.99", new Date(), new Integer(2)}
              TableModel dataModel = new AbstractTableModel()
                   public int getColumnCount() { return headers.length; }
                   public int getRowCount() { return data.length;}
                   public Object getValueAt(int row, int col)
                        return data[row][col];
                   public String getColumnName(int column)
                        return headers[column];
                   public Class getColumnClass(int col)
                        return getValueAt(0,col).getClass();
                   public boolean isCellEditable(int row, int col)
                        return (col==1);
                   public void setValueAt(Object aValue, int row, int column)
                        data[row][column] = aValue;
              tableView = new JTable(dataModel);
              JScrollPane scrollpane = new JScrollPane(tableView);
              scrollpane.setPreferredSize(new Dimension(500, 80));
              frame.getContentPane().setLayout(new BorderLayout());
              frame.getContentPane().add(BorderLayout.CENTER,scrollpane);
              frame.pack();
              JButton printButton= new JButton();
              printButton.setText("print me!");
              frame.getContentPane().add(BorderLayout.SOUTH,printButton);
              // for faster printing turn double buffering off
              RepaintManager.currentManager(frame).setDoubleBufferingEnabled(false);
              printButton.addActionListener( new ActionListener()
                   public void actionPerformed(ActionEvent evt)
                        doPrint();
              frame.setVisible(true);
          * Reset variables before printing
         private void prepareForPrint()
              pages = new ArrayList();
              first_pass = true;
          * Display a print dialog with some hardcoded defaults
          * The print fonts are also hardcoded
         public void doPrint()
              try
                   String jobName = "Java Report";
                   defaultFont = new Font("Arial", Font.PLAIN, 8);
                   footerFont = new Font("Arial", Font.PLAIN, 6);
                   headerFont = new Font("Arial", Font.BOLD, 10);
                   PrinterJob prnJob = PrinterJob.getPrinterJob();
                   prnJob.setPrintable(this);
                   PrintRequestAttributeSet prnSet = new HashPrintRequestAttributeSet();
                   prnSet.add(new Copies(1));
                   prnSet.add(new JobName(jobName, null));
                   prnSet.add(MediaSizeName.ISO_A4);
                   PageFormat pf = prnJob.defaultPage();
                   pf.setOrientation(java.awt.print.PageFormat.PORTRAIT);
                   prnJob.setJobName(jobName);
                   PrintService[] services = PrinterJob.lookupPrintServices();
                   if (services.length > 0)
                        if (prnJob.printDialog(prnSet))
                              * Get print date
                             String dateFormat = "dd/MM/yyyy HH:mm:ss";
                             DateFormat m_DateFormat = new SimpleDateFormat(dateFormat);
                             lastPrintDate = m_DateFormat.format(new Date()).toString();
                             prepareForPrint();
                             prnJob.print(prnSet);
                   else
                        JOptionPane.showMessageDialog(frame, "No Printer was found!!", "Printer Error", JOptionPane.ERROR_MESSAGE);
                        return;
              catch (PrinterException e)
                   e.printStackTrace();
         public int print(Graphics g, PageFormat pageFormat, int pageIndex) throws PrinterException
               * Check if this is the first time the print method is called for this print action.
               * It is not guaranteed that the print will be called with synchronous pageIndex'es,
               * so we need to calculate the number of pages and which rows appear on which pages.
               * Then the correct page will be printed regardless of which pageIndex is sent through.
              if (first_pass)
                   calcPages(g, pageFormat);
              first_pass = false;
              // Stop printing if the pageIndex is out of range
              if (pageIndex >= pages.size())
                   return NO_SUCH_PAGE;
              Graphics2D     g2 = (Graphics2D) g;
              g2.setColor(Color.black);
              // The footer will be one line at the bottom of the page, cater for this.
              g2.setFont(footerFont);
              footerHeight = g2.getFontMetrics().getHeight() + g2.getFontMetrics().getDescent();
              g2.setFont(defaultFont);
              FontMetrics fontMetrics = g2.getFontMetrics();
              int fontHeight = fontMetrics.getHeight();
              int fontDescent = fontMetrics.getDescent();
              double pageHeight = pageFormat.getImageableHeight() + pageFormat.getImageableY();
              double pageWidth = pageFormat.getImageableWidth();
              double tableWidth = (double) tableView.getColumnModel().getTotalColumnWidth();
              // Shrink or expand the table to fit the page width
              double scale = pageWidth / (tableWidth+ (cellBuffer * tableView.getColumnCount()));
              // Calculate the width in pixels for each column
              double[] columnWidths = new double[tableView.getColumnCount()];
              for(int i = 0; i < tableView.getColumnCount(); i++)
                   columnWidths[i] = (double)tableView.getColumnModel().getColumn(i).getWidth() * scale;
              // Reset the view to the start of the page
              g2.translate(0, 0);
              // Draw a rectangle to see the printable area
              g2.draw3DRect((int)pageFormat.getImageableX(),
                        (int)pageFormat.getImageableY(),
                        (int)pageFormat.getImageableWidth(),
                        (int)pageFormat.getImageableHeight(),
                        false);
              // Calculate the header height
              g2.setFont(headerFont);
              fontMetrics = g2.getFontMetrics();
              // Print the headers and retreive the starting position for the data
              int next_row = printLine(g2, pageFormat, fontMetrics, -1, (int)pageFormat.getImageableY() + fontHeight, columnWidths);
              g2.setFont(defaultFont);
              fontMetrics = g2.getFontMetrics();
              // Start printing the detail
              ArrayList page = (ArrayList)pages.get(pageIndex);
              int start = ((Integer)page.get(0)).intValue();
              int end = ((Integer)page.get(1)).intValue();
              for (int i = start; i <= end; i++)
                   next_row = printLine(g2, pageFormat, fontMetrics, i, next_row, columnWidths);
              // Print the footer
              g2.setFont(footerFont);
              String pageFooter = "Page " + (pageIndex + 1) + " - " + lastPrintDate;
              g2.drawString(pageFooter,
                             (int)pageFormat.getWidth() / 2 - (fontMetrics.stringWidth(pageFooter) / 2),
                             (int)(pageHeight - fontDescent));
              return PAGE_EXISTS;
          * We can't guarantee that the same amount of rows will be displayed on each page,
          * the row heights are dynamic and may wrap onto 2 or more lines.
          * Thus we need to calculate the height of each row and then test how may rows
          * fit on a specific page. eg. Page 1 contains rows 1 to 10, Page 2 contains rows 11 to 15 etc.
         public void calcPages(Graphics g, PageFormat pageFormat) throws PrinterException
              Graphics2D     g2 = (Graphics2D) g;
              g2.setColor(Color.black);
              // The footer will be one line at the bottom of the page, cater for this.
              g2.setFont(footerFont);
              footerHeight = g2.getFontMetrics().getHeight() + g2.getFontMetrics().getDescent();
              g2.setFont(defaultFont);
              FontMetrics fontMetrics = g2.getFontMetrics();
              int fontHeight = fontMetrics.getHeight();
              int fontDescent = fontMetrics.getDescent();
              double pageHeight = pageFormat.getImageableHeight() - fontHeight;
              double pageWidth = pageFormat.getImageableWidth();
              double tableWidth = (double) tableView.getColumnModel().getTotalColumnWidth();
              // Shrink or expand the table to fit the page width
              double scale = pageWidth / (tableWidth+ (cellBuffer * tableView.getColumnCount()));
              // Calculate the width in pixels for each column
              double[] columnWidths = new double[tableView.getColumnCount()];
              for(int i = 0; i < tableView.getColumnCount(); i++)
                   columnWidths[i] = (double)tableView.getColumnModel().getColumn(i).getWidth() * scale;
              // Calculate the header height
              int maxHeight = 0;
              g2.setFont(headerFont);
              fontMetrics = g2.getFontMetrics();
              for (int j = 0; j < tableView.getColumnCount(); j++)
                   String value = tableView.getColumnName(j).toString();
                   int numLines = (int)Math.ceil(fontMetrics.stringWidth(value) / columnWidths[j]);
                   if (numLines > maxHeight)
                        maxHeight = numLines;
              headerHeight = g2.getFontMetrics().getHeight() * maxHeight;
              g2.setFont(defaultFont);
              fontMetrics = g2.getFontMetrics();
              int pageNum = 0;
              int bottom_of_page = (int)(pageFormat.getImageableHeight() + pageFormat.getImageableY()) - footerHeight;
              int prev_row = 0;
              int next_row = (int)pageFormat.getImageableY() + fontHeight + headerHeight;
              int i = 0;
              ArrayList page = new ArrayList();
              page.add(new Integer(0));
              for (i = 0; i < tableView.getRowCount(); i++)
                   maxHeight = 0;
                   for (int j = 0; j < tableView.getColumnCount(); j++)
                        String value = tableView.getValueAt(i, j).toString();
                        int numLines = (int)Math.ceil(fontMetrics.stringWidth(value) / columnWidths[j]);
                        if (numLines > maxHeight)
                             maxHeight = numLines;
                   prev_row = next_row;
                   next_row += (fontHeight * maxHeight);
                   // If we've reached the bottom of the page then set the current page's end row
                   if (next_row > bottom_of_page)
                        page.add(new Integer(i - 1));
                        pages.add(page);
                        page = new ArrayList();
                        page.add(new Integer(i));
                        pageNum++;
                        next_row = (int)pageFormat.getImageableY()
                                       + fontHeight
                                       + ((int)pageFormat.getHeight() * pageNum)
                                       + headerHeight;
                        bottom_of_page = (int)(pageFormat.getImageableHeight()
                                            + pageFormat.getImageableY())
                                            + ((int)pageFormat.getHeight() * pageNum)
                                            - footerHeight;
                        //Include the current row on the next page, because there is no space on this page
                        i--;
              page.add(new Integer(i - 1));
              pages.add(page);
          * Print the headers or a row from the table to the graphics context
          * Return the position of the row following this one
         public int printLine(Graphics2D g2,
                                       PageFormat pageFormat,
                                       FontMetrics fontMetrics,
                                       int rowNum,
                                       int next_row,
                                       double[] columnWidths)
                   throws PrinterException
              int lead = 0;
              int maxHeight = 0;
              for (int j = 0; j < tableView.getColumnCount(); j++)
                   String value = null;
                   int align = LEFT_ALIGN;
                   if (rowNum > -1)
                        Object obj = tableView.getValueAt(rowNum, j);
                        if (obj instanceof Number)
                             align = RIGHT_ALIGN;
                        value = obj.toString();
                   else
                        align = CENTER_ALIGN;
                        value = tableView.getColumnName(j);
                   int numLines = (int)Math.ceil(fontMetrics.stringWidth(value) / columnWidths[j]);
                   if (numLines > maxHeight)
                        maxHeight = numLines;
                   if (fontMetrics.stringWidth(value) < columnWidths[j])
                        // Single line
                        int offset = 0;
                        // Work out the offset from the start of the column to display alignment correctly
                        switch (align)
                             case RIGHT_ALIGN: offset = (int)(columnWidths[j] - fontMetrics.stringWidth(value)); break;
                             case CENTER_ALIGN: offset = (int)(columnWidths[j] - fontMetrics.stringWidth(value)) / 2; break;
                             default: offset = 0; break;
                        g2.drawString(value,
                                       lead + (int)(pageFormat.getImageableX() + offset),
                                       next_row);
                   else
                        for(int a = 0; a < numLines; a++)
                             //Multi-Line
                             int x = 0;
                             int width = 0;
                             for(x = 0; x < value.length(); x++)
                                  width += fontMetrics.charWidth(value.charAt(x));
                                  if (width > columnWidths[j])
                                       break;
                             int offset = 0;
                             // Work out the offset from the start of the column to display alignment correctly
                             switch (align)
                                  case RIGHT_ALIGN: offset = (int)(columnWidths[j] - fontMetrics.stringWidth(value)); break;
                                  case CENTER_ALIGN: offset = (int)(columnWidths[j] - fontMetrics.stringWidth(value)) / 2; break;
                                  default: offset = 0; break;
                             g2.drawString(value.substring(0, x),
                                            lead + (int)(pageFormat.getImageableX() + offset),
                                            next_row + (fontMetrics.getHeight() * a));                    
                             value = value.substring(x);
                   lead += columnWidths[j] + cellBuffer;
              // Draw a solid line below the row
              g2.draw(new Line2D.Double(pageFormat.getImageableX(),
                             next_row + (fontMetrics.getHeight() * (maxHeight - 1)) + fontMetrics.getDescent(),
                             pageFormat.getImageableY() + pageFormat.getImageableWidth(),
                             next_row + (fontMetrics.getHeight() * (maxHeight - 1)) + fontMetrics.getDescent()));
              // Return the position of the row following this one
              return next_row + (fontMetrics.getHeight() * maxHeight);
         public static void main(String[] args)
              new Report();
    }

    Fixed some bugs and added a title. Just pass in a JTable and the class will do the rest.
    import javax.swing.*;
    import javax.swing.table.*;
    import java.awt.print.*;
    import java.util.*;
    import java.awt.*;
    import java.awt.event.*;
    import java.awt.geom.*;
    import javax.print.*;
    import javax.print.attribute.*;
    import javax.print.attribute.standard.*;
    import java.text.*;
    import java.math.*;
    public class PrintJTable implements Printable
         private final int LEFT_ALIGN = -1;
         private final int CENTER_ALIGN = 0;
         private final int RIGHT_ALIGN = 1;
         private JFrame m_parent;
         private String m_title;
         private JTable tableView;
         private String lastPrintDate;
         private Font defaultFont;
         private Font headerFont;
         private Font footerFont;
         private int headerHeight;
         private int footerHeight;
         private int cellBuffer = 5;
         private boolean first_pass;
         private ArrayList pages;
         public PrintJTable(JFrame parent, JTable table)
              m_parent = parent;
              tableView = table;
              doPrint();
         public PrintJTable(JFrame parent, String title, JTable table)
              m_parent = parent;
              m_title = title;
              tableView = table;
              doPrint();
          * Reset variables before printing
         private void prepareForPrint()
              pages = new ArrayList();
              first_pass = true;
          * Display a print dialog with some hardcoded defaults
          * The print fonts are also hardcoded
         public void doPrint()
              try
                   String jobName = "Java Report";
                   defaultFont = new Font("Arial", Font.PLAIN, 8);
                   footerFont = new Font("Arial", Font.PLAIN, 6);
                   headerFont = new Font("Arial", Font.BOLD, 8);
                   PrinterJob prnJob = PrinterJob.getPrinterJob();
                   prnJob.setPrintable(this);
                   PrintRequestAttributeSet prnSet = new HashPrintRequestAttributeSet();
                   prnSet.add(new Copies(1));
                   prnSet.add(new JobName(jobName, null));
                   prnSet.add(MediaSizeName.ISO_A4);
                   PageFormat pf = prnJob.defaultPage();
                   pf.setOrientation(java.awt.print.PageFormat.PORTRAIT);
                   prnJob.setJobName(jobName);
                   PrintService[] services = PrinterJob.lookupPrintServices();
                   if (services.length > 0)
                        if (prnJob.printDialog(prnSet))
                              * Get print date
                             String dateFormat = "dd/MM/yyyy HH:mm:ss";
                             DateFormat m_DateFormat = new SimpleDateFormat(dateFormat);
                             lastPrintDate = m_DateFormat.format(new Date()).toString();
                             prepareForPrint();
                             prnJob.print(prnSet);
                   else
                        JOptionPane.showMessageDialog(m_parent, "No Printer was found!!", "Printer Error", JOptionPane.ERROR_MESSAGE);
                        return;
              catch (PrinterException e)
                   e.printStackTrace();
         public int print(Graphics g, PageFormat pageFormat, int pageIndex) throws PrinterException
               * Check if this is the first time the print method is called for this print action.
               * It is not guaranteed that the print will be called with synchronous pageIndex'es,
               * so we need to calculate the number of pages and which rows appear on which pages.
               * Then the correct page will be printed regardless of which pageIndex is sent through.
              if (first_pass)
                   calcPages(g, pageFormat);
              first_pass = false;
              // Stop printing if the pageIndex is out of range
              if (pageIndex >= pages.size())
                   return NO_SUCH_PAGE;
              Graphics2D     g2 = (Graphics2D) g;
              g2.setColor(Color.black);
              // The footer will be one line at the bottom of the page, cater for this.
              g2.setFont(footerFont);
              footerHeight = g2.getFontMetrics().getHeight() + g2.getFontMetrics().getDescent();
              g2.setFont(defaultFont);
              FontMetrics fontMetrics = g2.getFontMetrics();
              int fontHeight = fontMetrics.getHeight();
              int fontDescent = fontMetrics.getDescent();
              double pageHeight = pageFormat.getImageableHeight() + pageFormat.getImageableY();
              double pageWidth = pageFormat.getImageableWidth();
              double tableWidth = (double) tableView.getColumnModel().getTotalColumnWidth();
              // Shrink or expand the table to fit the page width
              double scale = (pageWidth - (cellBuffer * tableView.getColumnCount())) / tableWidth;
              // Calculate the width in pixels for each column
              double[] columnWidths = new double[tableView.getColumnCount()];
              double test = 0;
              for(int i = 0; i < tableView.getColumnCount(); i++)
                   columnWidths[i] = (double)Math.floor(tableView.getColumnModel().getColumn(i).getWidth() * scale);
                   test += columnWidths;
              // Reset the view to the start of the page
              g2.translate(0, 0);
              // Draw a rectangle to see the printable area
              g2.draw3DRect((int)pageFormat.getImageableX(),
                        (int)pageFormat.getImageableY(),
                        (int)pageFormat.getImageableWidth(),
                        (int)pageFormat.getImageableHeight(),
                        false);
              // Calculate the header height
              g2.setFont(headerFont);
              fontMetrics = g2.getFontMetrics();
              // Print the headers and retreive the starting position for the data
              int next_row = (int)pageFormat.getImageableY() + fontMetrics.getHeight();
              if ((m_title != null) && (!m_title.equalsIgnoreCase("")))
                   g2.drawString(m_title,
                                       (int)(pageFormat.getImageableX()),
                                       next_row);
                   Color current_color = g2.getColor();
                   g2.setColor(Color.lightGray);
                   int y = next_row + fontMetrics.getDescent();
                   g2.draw(new Line2D.Double(pageFormat.getImageableX(),
                                  y,
                                  (pageFormat.getImageableY() + pageFormat.getImageableWidth()),
                                  y));
                   g2.setColor(current_color);
                   next_row += fontMetrics.getHeight();
              next_row = printLine(g2, pageFormat, fontMetrics, -1, next_row, columnWidths);
              g2.setFont(defaultFont);
              fontMetrics = g2.getFontMetrics();
              // Start printing the detail
              ArrayList page = (ArrayList)pages.get(pageIndex);
              int start = ((Integer)page.get(0)).intValue();
              int end = ((Integer)page.get(1)).intValue();
              for (int i = start; i <= end; i++)
                   next_row = printLine(g2, pageFormat, fontMetrics, i, next_row, columnWidths);
              // Print the footer
              g2.setFont(footerFont);
              String pageFooter = "Page " + (pageIndex + 1) + " - " + lastPrintDate;
              g2.drawString(pageFooter,
                             (int)pageFormat.getWidth() / 2 - (fontMetrics.stringWidth(pageFooter) / 2),
                             (int)(pageHeight - fontDescent));
              return PAGE_EXISTS;
         * We can't guarantee that the same amount of rows will be displayed on each page,
         * the row heights are dynamic and may wrap onto 2 or more lines.
         * Thus we need to calculate the height of each row and then test how may rows
         * fit on a specific page. eg. Page 1 contains rows 1 to 10, Page 2 contains rows 11 to 15 etc.
         public void calcPages(Graphics g, PageFormat pageFormat) throws PrinterException
              Graphics2D     g2 = (Graphics2D) g;
              g2.setColor(Color.black);
              // The footer will be one line at the bottom of the page, cater for this.
              g2.setFont(footerFont);
              footerHeight = g2.getFontMetrics().getHeight() + g2.getFontMetrics().getDescent();
              g2.setFont(defaultFont);
              FontMetrics fontMetrics = g2.getFontMetrics();
              int fontHeight = fontMetrics.getHeight();
              int fontDescent = fontMetrics.getDescent();
              double pageHeight = pageFormat.getImageableHeight() - fontHeight;
              double pageWidth = pageFormat.getImageableWidth();
              double tableWidth = (double) tableView.getColumnModel().getTotalColumnWidth();
              // Shrink or expand the table to fit the page width
              double scale = (pageWidth - (cellBuffer * tableView.getColumnCount())) / tableWidth;
              // Calculate the width in pixels for each column
              double[] columnWidths = new double[tableView.getColumnCount()];
              for(int i = 0; i < tableView.getColumnCount(); i++)
                   columnWidths[i] = (double)Math.floor(tableView.getColumnModel().getColumn(i).getWidth() * scale);
              // Calculate the header height
              int maxHeight = 0;
              g2.setFont(headerFont);
              fontMetrics = g2.getFontMetrics();
              headerHeight = 0;
              if ((m_title != null) && (!m_title.equalsIgnoreCase("")))
                   headerHeight = fontMetrics.getHeight();
              for (int j = 0; j < tableView.getColumnCount(); j++)
                   String value = tableView.getColumnName(j).toString();
                   int numLines = (int)Math.ceil(fontMetrics.stringWidth(value) / columnWidths[j]);
                   if (numLines > maxHeight)
                        maxHeight = numLines;
              headerHeight += g2.getFontMetrics().getHeight() * maxHeight;
              g2.setFont(defaultFont);
              fontMetrics = g2.getFontMetrics();
              int pageNum = 0;
              int bottom_of_page = (int)(pageFormat.getImageableHeight() + pageFormat.getImageableY()) - footerHeight;
              int prev_row = 0;
              int next_row = (int)pageFormat.getImageableY() + fontHeight + headerHeight;
              int i = 0;
              ArrayList page = new ArrayList();
              page.add(new Integer(0));
              for (i = 0; i < tableView.getRowCount(); i++)
                   maxHeight = 0;
                   for (int j = 0; j < tableView.getColumnCount(); j++)
                        String value = formatObject(tableView.getValueAt(i, j));
                        int numLines = (int)Math.ceil(fontMetrics.stringWidth(value) / columnWidths[j]);
                        if (numLines > maxHeight)
                             maxHeight = numLines;
                   prev_row = next_row;
                   next_row += (fontHeight * maxHeight);
                   // If we've reached the bottom of the page then set the current page's end row
                   if (next_row > bottom_of_page)
                        page.add(new Integer(i - 1));
                        pages.add(page);
                        page = new ArrayList();
                        page.add(new Integer(i));
                        pageNum++;
                        next_row = (int)pageFormat.getImageableY()
                                       + fontHeight
                                       + ((int)pageFormat.getHeight() * pageNum)
                                       + headerHeight;
                        bottom_of_page = (int)(pageFormat.getImageableHeight()
                                            + pageFormat.getImageableY())
                                            + ((int)pageFormat.getHeight() * pageNum)
                                            - footerHeight;
                        //Include the current row on the next page, because there is no space on this page
                        i--;
              page.add(new Integer(i - 1));
              pages.add(page);
         * Print the headers or a row from the table to the graphics context
         * Return the position of the row following this one
         public int printLine(Graphics2D g2,
                                       PageFormat pageFormat,
                                       FontMetrics fontMetrics,
                                       int rowNum,
                                       int next_row,
                                       double[] columnWidths)
                   throws PrinterException
              int lead = 0;
              int maxHeight = 0;
              for (int j = 0; j < tableView.getColumnCount(); j++)
                   String value = null;
                   int align = LEFT_ALIGN;
                   if (rowNum > -1)
                        Object obj = tableView.getValueAt(rowNum, j);
                        if (obj instanceof Number)
                             align = RIGHT_ALIGN;
                        value = formatObject(obj);
                   else
                        //align = CENTER_ALIGN;
                        value = tableView.getColumnName(j);
                   int numLines = (int)Math.ceil(fontMetrics.stringWidth(value) / columnWidths[j]);
                   if (numLines > maxHeight)
                        maxHeight = numLines;
                   if (fontMetrics.stringWidth(value) < columnWidths[j])
                        // Single line
                        int offset = 0;
                        // Work out the offset from the start of the column to display alignment correctly
                        switch (align)
                             case RIGHT_ALIGN: offset = (int)(columnWidths[j] - fontMetrics.stringWidth(value)); break;
                             case CENTER_ALIGN: offset = (int)(columnWidths[j] - fontMetrics.stringWidth(value)) / 2; break;
                             default: offset = 0; break;
                        g2.drawString(value,
                                       lead + (int)(pageFormat.getImageableX() + offset),
                                       next_row);
                   else
                        for(int a = 0; a < numLines; a++)
                             //Multi-Line
                             int x = 0;
                             int width = 0;
                             for(x = 0; x < value.length(); x++)
                                  width += fontMetrics.charWidth(value.charAt(x));
                                  if (width > columnWidths[j])
                                       break;
                             int offset = 0;
                             // Work out the offset from the start of the column to display alignment correctly
                             switch (align)
                                  case RIGHT_ALIGN: offset = (int)(columnWidths[j] - fontMetrics.stringWidth(value.substring(0, x))); break;
                                  case CENTER_ALIGN: offset = (int)(columnWidths[j] - fontMetrics.stringWidth(value.substring(0, x))) / 2; break;
                                  default: offset = 0; break;
                             g2.drawString(value.substring(0, x),
                                            lead + (int)(pageFormat.getImageableX() + offset),
                                            next_row + (fontMetrics.getHeight() * a));                    
                             value = value.substring(x);
                   lead += columnWidths[j] + cellBuffer;
              // Draw a solid line below the row
              Color current_color = g2.getColor();
              g2.setColor(Color.lightGray);
              int y = next_row + (fontMetrics.getHeight() * (maxHeight - 1)) + fontMetrics.getDescent();
              g2.draw(new Line2D.Double(pageFormat.getImageableX(),
                             y,
                             (pageFormat.getImageableY() + pageFormat.getImageableWidth()),
                             y));
              g2.setColor(current_color);
              // Return the position of the row following this one
              return next_row + (fontMetrics.getHeight() * maxHeight);
         public String formatObject(Object obj)
              String value = (obj == null) ? "" : obj.toString();
              return value;

  • How can I fix this printer error with Samsung SCX-4300 and SCX-4521f on Windows Server 2008 R2?

    I have two printers installed on Windows Server 2008 R2 (64-bit):
    1. Samsung SCX-4521f
    2. Samsung SCX-4300
    There are two computers (Windows 7 Professional, 32-Bit) connected to this server that utilise these shared printers.
    The drivers installed are as follows:
    SCX-4x21_Win7_Print.exe (Win 2000/XP/2003/Vista/2008/Win 7    3.04.96:03    Print Driver    11 Dec, 2009    12.37    MULTI LANGUAGE)
    SCX-4300_Print.exe (Win 2000/XP/2003/Vista/2008/Win 7(32,64bit) 3.04.95:07 Print Driver Jan 19, 2011 53.07 MULTI LANGUAGE)
    After printing documents for some time (within a 24 period) the printers no longer respond to print requests.
    On the server opening "Control Panel\Hardware\Devices and Printers" shows the two printers with yellow exclamation marks.
    The "SCX-4x21" printer shows the "Status" as "Needs troubleshooting" and "Printer: Error".
    The "SCX-4300" printer shows the "Status" as "Needs troubleshooting".
    Neither will print a test page.
    Searching for new drivers automatically returns saying: "The best driver software for your device is already installed".
    The error persists and nothing will print.
    When double-clicking on the "SCX-4x21" printer (or going to "Control Panel\Hardware\Devices and Printers\Samsung SCX-4x21 Series") you see the following:
    "Printer: Error" and "N document(s) in queue".
    Clicking on either of these brings up the print queue and shows a document with the status of "Error - Printing".
    As each job with an error is cancelled the next one attempts to print and also displays an error like the last.
    Once all the jobs are cleared the printer information says "Printer: Ready".
    Sending a "Print Test Page" sends the printer into an error state saying "Printer: Error".
    With the "SCX-4300", sending a "Print Test Page" displays a bubble saying: "Toner Empty: Replace Toner".
    However, I can't see any specific error messages.
    How do I find out what exactly "Needs troubleshooting"?
    Please can anyone advise further?

    The printer (SCX-4300) has stopped again.
    Since it has been stopped I have done your recommendations:
    Unticked the "Enable bidirectional support" option under the "Ports" tab in the printer properties.
    Set the "Interactive Services Detection" to Automatic and started it.
    Unfortunately the printer did not start printing, the print jobs did not restart or delete.
    I decided to check the Operational logs that we enabled.
    The first job I see goes like this:
    Information: Rendering job 41.
    Error: The print spooler failed to delete the file C:\Windows\system32\spool\PRINTERS\00041.SHD, error code 0x2. See the event user data for context information.
    Information: The print job 41 was sent through the print processor SSE1MPC on printer Samsung SCX-4300 Series, driver Samsung SCX-4300 Series, in the isolation mode 1 (0 - loaded in the spooler, 1 - loaded in shared sandbox, 2 - loaded in isolated
    sandbox). Win32 error code returned by the print processor: 0x0.
    Information:Printing job 41.
    Information:Spooling job 41.
    This job actually printed.
    Other jobs printed fine with no error.
    There are no other errors in the "Operational" log other than the "print spooler failed to delete" error.
    Any ideas what to try now?
    Update: Unticking the "Enable bidirectional support", clearing the print queue and then trying again seems to have fixed the problem for now.

  • Printing problems with HP OfficeJet G55

    I have a MacBook running OS X 10.5.4 and I'm having problems printing with my HP OfficeJet G55. I have updated to HP Printer Driver 1.1.1, but after updating, I realized my printer type was not in the list. So that did not fix the problem. I connect my printer to my computer by USB and as soon as I hook it up, the computer recognizes the kind of printer.
    When I go to System Preferences-->Print & Fax--> Open Print Queue, it says "Printer Ready". Then when I want to print out a page and after I hit Print, it says something like Printing 11%,...,100%, then automatically the status of whatever I wanted to print says "complete", but the page has not even printed yet. My printer did nothing. I have tried rebooting, and had the same problem. I have also tried deleting the printer from system preferences/print & fax and then adding the printer again, and it doesn't work.
    There is nothing wrong with my printer because I printed out a test page, and it worked fine. Also when it's connected to a desktop computer we have..Windows XP, the printer also works. And even when I connect the printer to my old ibook (I think it's on OS 9.1), it also works.
    Please if anyone knows about this, I need instructions on correcting the problem!
    Thank you!!

    A Gutenprint driver for that model is included in OS X:
    http://support.apple.com/kb/HT1370#hpdrivers
    I'd guess you have a corrupted file somewhere. Try these generic fixes:
    Reset Printing System - In Print & Fax prefs:
    http://docs.info.apple.com/article.html?path=Mac/10.5/en/14001.html
    Get the downloadable Combination Updater from Apple, use it to re-Update OS X.
    Use Disk Utility to repair the HD (see Try Disk Utility):
    http://support.apple.com/kb/TS1417
    (Final step - reinstall OS X using the Archive & Install option in the installer.)

  • Print problem with Yahoo email

    Ever since upgrading to Safari Version 7.0.1 (9537.73.11), I have had several different problems with printing emails.  For the time being, let me ask here about only my AT&T Yahoo mail.
    Here is the description of the problem in Yahoo.  When I pull down the “Actions” menu to “Print Message,” I get this dialog box:
                      Print Error
                      There was a problem printing, most likely caused by a pop-up blocker. Please click Try Again.
    Try Again
    So I click the button labeled “Try Again,” and Safari opens the email in a new window with a “Print” tool in the upper left corner. 
    I click the “Print” tool.  With multi-page emails, I like printing on both sides.  I choose either,
    Print Two-sided, or
    Print either odd or even pages.
    With the former option Safari prints one page of the email and stalls.  With the latter Safari prints the whole series of selected pages and stalls.  My printer (HP LaserJet Professional P1102w) refuses to print any more pages.  I have to go into my printer’s application and stop the print job.  Then I have to turn off the printer, wait a while for the machine to re-set, and turn it back on.  Then I can print the remaining page or pages.
    That’s inefficient. Is there some remedy to get Safari to print emails in Yahoo straight through?

    Problems like that with Firefox printing look like they are fixed in Firefox 4.

  • Printing problem with Summarize Comments?

    Printing problem with Summarize Comments in Pro 10.1.6? When I print, I only get the number boxes on one page and the comments on the next page. The numbered boxes don't show up on the actual image itself.

    Um I dont know if im doing something daft but I tried this like you said
    PrinterJob printJob = PrinterJob.getPrinterJob();
    printJob.setPrintable(this);
    if(printJob.printDialog()){
    try {
              PageFormat pageFormat = printJob.defaultPage();
              if (pageFormat.getOrientation() == PageFormat.PORTRAIT) {
              landscape = 0;} else {
                   landscape = 1;}
              System.out.println("THE ORIENTATION IS "+ landscape);
              printJob.print(); }
    catch (Exception PrinterExeption) { PrinterExeption.printStackTrace();}
    and it doesnt seem to work as I tried it both as landscape and portrait in the print dialog but landscape is always 0.
    cheers
    pmiggy

  • Tips for printing photos with HP ePrint

    Hello, 
    I will be giving you guys a couple of tips on how to print photos with HP ePrint. These are general tips to make it a little more easier to use HP ePrint.
      #1: Have 4" x 6" photo paper preloaded in your printer
    The first step in getting quality photo prints with HP ePrint is having 4" x 6" HP Photo Paper preloaded in your printer’s dedicated photo paper tray. If your HP ePrint-enabled printer doesn’t have a separate photo paper tray, just make sure that photo paper is the only paper loaded in the tray when printing photos.
    All photos e-mailed with HP ePrint will print at a default size of 4" x 6".
    If available, your photos will automatically print on paper from your printer’s dedicated photo paper tray.
    If you don’t have photo paper loaded into your photo paper tray, this message will appear on the printer’s display: “Load paper into photo tray”.
    If you have 5" x 7" paper loaded into the tray, it will still print a 4" x 6" photo on the paper, leaving a white border along the top and the side.
    HP ePrint will ensure your image is printed with the correct orientation so your photo won’t be cut off.
    #2: Make sure your photos have a high enough dpi
    Check your image’s dpi: Right-click on your image on your PC’s desktop, then selectProperties, and the Details tab.
    The second thing to remember when printing photos with HP ePrint is to make sure your digital images have a high enough resolution, or dpi (dots per inch).
    Image files (like jpeg, bmp, tiff, etc.) need to be at least 100 dpi in order to print via HP ePrint.
    If you send a photo that is less than 100 dpi, it will not be printed. Instead, you will see a message in your job history on the ePrintCenter that says “Failed”.
    To print a photo or image that is less than 100 dpi, insert the image file into a Word document before e-mailing. Your image will be printed on paper from the main printer paper tray.
    Image attachments must be less than 5MB (megabytes). Also, HP ePrint supports a maximum of 10 attachments to a single e-mail. E-mails that exceed these limits will not print.
    Find out how megapixels affect the resolution and quality of your digital photos.
    If you guys have anymore questions let me know.
    Also, remember if you find any of my post helpful or want to say thanks make sure to click the white star under my name to give me Kudos.
    I really appreciate it!
    Thanks!
    This question was solved.
    View Solution.

    I hope this is helpful!
    Also, remember if you find any of my post helpful or want to say thanks make sure to click the white star under my name to give me Kudos.
    I really appreciate it!
    Thanks!

  • Printing problem with Adobe Reader

    Hello,
    I have a user who has XP and is having issue printing from reader. She had 9.0 but uninstalled it and downloaded the most recent reader but she still cannot. Strange thing is that it affects her at both of her offices. We have roaming profiles and she has the same issue at both sites where as I can login and print a pdf just fine.
    What actually happens is that she opens the document just fine but if she clicks file>print reader will lock up. It will not show the print properties or even get far enough to send the print job and this only affects adobe reader and not any other program like work to print.
    It sounds like its something with her profile but I wanted to find out if anyone else has seen this or has an idea of what might be causing the issue. Thank you!

    Hello,
    I have a user who has XP and is having issue printing from reader. She had 9.0 but uninstalled it and downloaded the most recent reader but she still cannot. Strange thing is that it affects her at both of her offices. We have roaming profiles and she has the same issue at both sites where as I can login and print a pdf just fine.
    What actually happens is that she opens the document just fine but if she clicks file>print reader will lock up. It will not show the print properties or even get far enough to send the print job and this only affects adobe reader and not any other program like work to print.
    It sounds like its something with her profile but I wanted to find out if anyone else has seen this or has an idea of what might be causing the issue. Thank you!

  • Wireless Printing issues with HP Deskjet 2540

    Hello everyone,
    I am experiencing an issue with an HP Deskjet 2540 printer - it prints if I have connected it to a USB cable; however, it refuses to print if I try to print wirelessly. 
    I had initially solved this problem when I went to System Preferences > Printers and Scanners and noticed two Deskjet 2540 series icons in a window titled 'Printers'. I ended up removing one of these icons and set the other one as a default, which seemed to temporarily solve my problem. Now, I see two icons back in this 'Printers' menu and my printer refuses to print through my wireless connection.
    My printer is connected to my internet connection so I don't think there is an issue here - I also have recently installed the software for this printer to make sure there was not some sort of driver issue; however, this does not seem to give me the permanent solution I am looking for.
    Any Advice? My operating system is OS X Version 10.9.5

    Hey @love2dance,
    Welcome to the HP Support Forums!  I understand you're having difficulty printing wirelessly with your HP Deskjet 2540 All-in-One Printer.  I would like to assist you with this and may have some steps that will ensure you can print wirelessly from your Mac.  
    I recommend you start from scratch and re-do your printer install and wireless setup for best results. 
    Firstly, make doubly sure your printer is connected to your wireless network by doing the following:
    Step one: Prepare for installationTo gather your network name (SSID) and password (WEP key or WPA passphrase), you can ask the person who originally set up your network, see the documentation that came with the router, or contact the manufacturer. HP cannot set up or change the network SSID or the password.
    Make sure that you have the following requirements before you begin:
    Network name: The network name is the SSID (Service Set Identifier).
    WEP key or WPA security passphrase
    A computer that is connected to the wireless network.
    Internet access. HP recommends broadband Internet access such as cable or DSL.
    Your wireless-capable HP product. Place it close to the computer during the installation procedure.
    A USB cable (used only during installation).
    Administrator privileges or password
    Make sure the product, access point, and computer are all on, and that the computer is connecting to the wireless network.
    Connect the USB Cable to the rear port of the HP product and to any USB port on the computer.
    Exit all applications running on your computer.
    Source
    Secondly, prepare your Mac by removing any existing printers added:
    Choose System Preferences from the Apple menu.
    Choose Print & Scan from the View menu.
    Click the "-" (Remove printer) button.
    Next, click here to download and install your printer's software.  As you work your way through the setup, follow the prompts to convert your usb install to wireless.  With this setup completed successfully your wireless printing capability should be restored. 
    One way to preserve this wireless connection is to make sure your wireless mode/router is left on continually.  If at anytime your network connection is lost, reconnecting your printer will mean that it's being assigned a new IP address.  The significance here is that your Mac will be looking to connect with the printer at an IP address that is no longer applicable. 
    Please let me know the result of your troubleshooting by responding to this post.  Best of luck! 
    E-roq
    I work on behalf of HP.
    Please click Accept as Solution if you feel my post solved your issue, it will help others find the solution.
    Click Kudos Thumbs Up on the right to say “Thanks” for helping!

  • Printing Problem with Epson R320 (Print CD)

    Problem: I cannot print using Print CD with a new Epson Stylus Photo R320, however I can print from applications using the gimp beta driver provided in OS software, via <Print Using> dialogue box.
    Power Mac G4 dual 450, running 10.4.6.
    After phoning Epson, I downloaded the needed driver from Epson and went through the installation process with an Epson tech. However I cannot seem to access this driver in the print utility. The Printer Setup Utility is forcing me to choose a “gimp” driver. Some discussions on this site suggest choosing just Epson usb—the question is how with the way the dialogue boxes are configured in Printer Setup Utility. The problem seems to be I am unable to access the driver through the <Print Using> menu in the utility. If I select more printers, (after highlighting the R320) this causes the print utility to crash.
    I have repaired permissions, reset the printer setup, uninstalled, reinstalled; actually I have done everything I could find to do. The problem seems so simple. I easily created my CD label; now I would just like to print it!! Any ideas from all the pros on this list. Thank you.
    Mary Ann
    Desktop: G4 450 dual and Powerbook G4 15   Mac OS X (10.4.6)   Epson Stylus Photo R320

    I have an Epson R320 and have communication problems.You start the job and after about 5 seconds you get a ! in the dock on the printer icon and on opening you see "job stopped".
    I am no expert but it seems to me that the program e.g.MYOB accounting fails to pass the data to OSX.
    If I de install and reinstall the epson drivers and repair permission it will work ...but then the next day on re-booting we are back to the same state of not working.
    I have informed Epson and am waiting for a reply. The epson printer tests and standalone mode works. OSX problem?

Maybe you are looking for

  • HP Officejet Pro 8500A Plus requires resetting between each print or copy task

    HP Officejet Pro 8500A Plus  or  HP Officejet Pro 8500 A910 Windows 7 Home Premium operating system Problem:   Upon receiving a print command, the printer remains silent and displays "Now Printing" on the printer screen.  Nothing happens -- it does n

  • Sound no longer working on AAO ZG5

    I just reinstalled Arch on my ZG5 -- before I reinstalled everything sound-related was working by using snd-intel-hda and ALSA, all I had to do was add the line options snd-hda-intel model=acer-aspire in /etc/modprobe.conf, unmute the channels, and A

  • Should i get the current MacBook Pro or the new design MacBook pro 2012?

    Dear all, GImme some opinions which to choose? Should i wait for the supposedly new design MacBook Pro? or get the current models that hae pretty good specs? I'm doing college at the moment and my current laptop is 4yrs old in need of a new one and h

  • All music in iTunes not transfering to iPod

    I have plenty of room in my ipod for my entire library. But for some reason when I got my new iPod only 2-3 songs from random albums copied. That is correct only parts of the album copied. And in some instances a few whole albums by the same artists

  • Executing a full-text search using KM APIs

    Hello, I'm doing a KM Folder search using KM APIs. The code looks similar to this ===================================================== IGenericQueryFactory queryFactory = GenericQueryFactory.getInstance();      IQueryBuilder queryBldr = queryFactory