Removal of hardcoding from programs

Hi Experts
In some of the programs we are using the Material group has been hardcoded. Now we want to remove these hardcodings. How do we go about it? Can we use the material classification for this like moving these hardcoded values to the classification and refering them in the program? Else do we have any other options. We are using hardcoded values of UNSPSC codes in some programs. Now we need to change these UNSPSC codes and thus are facing this problem. Expert advise required.
Thanks

SAPIEN,
By the nature of your question, I must assume that you are not an ABAPer.  The task of removing or altering any code is a straightforward job that can be spec'd out and handed off to any competent programmer.
I had assumed you were asking about replacing the functionality of the existing hard code.  For this, you will have to find a way to map your materials to the appropriate UNSPSC group.  
The issue of UNSPSC material groups is discussed in the link I provided.  You will probably have to use techniques similar to those mentioned in the link to achieve your business requirement.
Best Regards,
DB49.

Similar Messages

  • Can't get Inspiration Browser update downloaded and have removed the Browser from programs?

    Can't get AdobePhotoshop.com Inspiration Browser to download. I've removed the Inspiration Browser from my programs as required before downloading the update.  It shows an error occurred in the download process but I can't see the problem.  Any suggestions?

    Well I will recommend you not to use Inspiration Browser anymore. Many of the users have gone through this problem.
    All the tutorials from Inspirational Browser have now move to tv.adobe.com. Try using it.

  • How do you remove an object from a picture.  Newbie to program CS6

    how do you remove an object from a picture.  Newbie to program CS6

    Well, generally you can use the clone-stamp tool for one, shortcut is S. It basically allows you to take data from any part of the image and copy that over. What I do is draw on a new layer above the one to modify- make sure you select Sample:"This layer and below" in the top toolbar when doing so. Other ways include blending something on top of the object too, using different blending modes. Painting over it works too at times (rarely). It'd be easier if we knew a specific case though...

  • Purchasing new iMac (27 i5), what is best method to transfer programs/files/documents from 24" iMAC?  What is the best method to remove personal data from OS?

    Purchasing a new iMac (27 i5), what is the best method to transfer programs/files,documents from a 24" iMac?
    What is the best method to remove personal data from the 24" iMac?

    Use setup assistant which is offered when you setup your new Mac.  It will transfer information from a Time Machine backup, Clone or another Mac.
    It's best to do this during setup to avoid issues with duplicate IDs.
    Regards

  • Long time ago I trialed elements 9  and could not remove from Programs; still can't

    Long time ago I trialed Elements 9  and could not remove from Programs at the time; still can't?
    I didn't go forward with '9' because of its size and it didn't appear to provide advantages for the cost.
    How do I uninstall it when conventional methods fail. Message received in Windows Installer is, ' The feature you are trying to use is on a network resource that is unavailable.' Elements 9 cannot be used.

    " When I did this, my library showed all the music I have "purchased" from itunes but did not have the music that I downloaded a long time ago through itunes from my old CDs."
    Correct.
    " How can I get that music to show up in my library now on my new computer?  "
    Copy it from your old computer or your backup copy of your old computer.
    The sync is one way - computer to ipod.

  • To remove a value from registry while uninstalling the program

    I am creating an installer for my exe developed in Labview.
    I added some value to the registry during first run,
    which i was given to customer. During every time
    program starts it will check for this value in registry.
    My problem is that when i am uninstalling the program
    from add and remove program i want to remove this
     value from registry.How can i do this? 
    Plz some one help me?
    With Regards

    You can use the Labview functions Delete Registry Key and Delete Registry Value if you write your uninstall in Labview.
    - tbob
    Inventor of the WORM Global

  • How can I remove Snow leopard from my Mac, it crash all important programs

    Please tell me how I can remove Snow Leopard from my machine & revert back to Leopard 10.5.8
    Since I loaded Snow leopard, Adobe Illustrator, Photoshop, Quark & Mail all quit over & over again. I never had ANY of these issues before loading snow leopard. I rely daily on the programs I listed. I am not saying once in a while, but constantly; opening the programs, exporting, placing graphics, emailing, you name it, it quits the program I am in. I keep sending apple the crash reports, but I am afraid I have reached my end. (Apple must have a folder fu;l of crashes with my email address in it by now.)
    To maintain my sanity PLEASE tell me there is a way to do this without risking loosing any of my data.
    I do have time machine hooked up.
    Please be a life saver (sanity saver) and tell me how to get Snow Leopard off my machine!!!!!

    First, Welcome to the Discussions,
    Second, there is no way to successfully degrade an OS to a previous version. You would have to install anew a previous OS, thereby erasing all your data. Then you would take that version up as far as you want to go.
    Of course if you've been using Time Machine you can recover to the prior system and retain your files using that.
    Best of all would be to have a firewire external drive and use an app like this to make a clone on. No worries then if one wants to go back before any major changes very precisely.
    http://www.shirt-pocket.com/SuperDuper/SuperDuperDescription.html
    Good luck.
    http://support.apple.com/kb/HT1427
    http://docs.info.apple.com/article.html?path=Mac/10.5/en/15638.html
    Message was edited by: Samsara

  • Can't Remove Workflow Manager 1.0 from "Programs and Features"

    I'm trying to Uninstall Workflow Manager 1.0 from "Programs and Features" in the Control Panel. It was part of a failed installation on a SharePoint Server. The Service Bus, Workflow Client, and Windows Fabric all installed fine but when I try
    to uninstall "Workflow Manager 1.0" Windows Server responds with "The computer is part of a farm. To uninstall, first leave the farm either using "Leave from Farm" option in Configuration Wizard or "Remove-WFHost" cmd-let
    in PowerShell."
    The Deployment Wizard "Leave the Farm" option is not working and I subsequently deleted it. And when I try to run "Remove-WFHost" PowerShell says "The term Remove-WFHost is not recognized. . ."
    The Workflow proxy in the Service Applications of the SharePoint installation has been deleted.
    Any idea how I can remove Workflow Manager 1.0?
    I need to get rid of Workflow Manager 1.0 so that I can start the installation again and hopefully get it installed correctly. . .
    Thanks,
    Kathryn
    Kathryn Birstein, Senior SharePoint Architect

    Hi Kathryn, 
    I had that issue some time ago and the the only way I found to get rid of it was: 
    Delete the Windows Registry entry KEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Workflow Manager
    Try uninstalling it again.
    I hope it helps.
    Alex Rivera
    www.linkedin.com/in/alexmcts/en

  • How To Remove Timecode From Program

       I am using PS3 Premiere Pro.  I've added the Timecode Video Effect to the project in order to collaborate and complete my edits.  Now, I no longer need the timecode, but I am unable to turn it off.  How do I remove the timecode effect from my project before I render a final video?

    Bill,
    Thank you for your quick reply.  I appreciate the help.  However, I need a point of clarification.  You said to right click on it and clear.  If I right click on the actual clip and clear, it removes the clip from the timeline.  That's not my intention.  I want to keep the clip, but eliminate the timecode effect.  However, if I right click over the Timecode in the Effects control panel, I get two choices:  New Custom Bin or New Presets Bin.  Sorry I'm not following.
    Ken

  • I need to uninstall my old version on itunes and install a new version, i cant uninstall from Programs and Features, a message keeps coming up saying 'The feature you are trying to use is on a network resource that is unavailable.' Can anyone help please

    I have tried to just install the new version of itunes from the apple website, it looks like it downloads but after 5 minutes at the end of the install it says 'old version of itunes cannot be uninstalled, please contact support.'?  
    Is there anyway I can remove the version of itunes from my computer? i dont mind if i lose the music/content I already have on my itunes. I need to do this as i have just received the iphone 4 and need to install the newest version of itunes.
    Many thanks

    I need to uninstall my old version on itunes and install a new version, i cant uninstall from Programs and Features, a message keeps coming up saying 'The feature you are trying to use is on a network resource that is unavailable.'
    Unfortunately, this sort of trouble has gotten more complicated to deal with ever since Microsoft pulled the Windows Installer CleanUp utility from their Download Center on June 25. First we have to find a copy of the utility.
    Let's try Googling. (Best not to use Bing, I think.) Look for a working download site for at least version 3.0 of the Windows Installer CleanUp utility. After downloading the utility installer file (msicuu2.exe), scan the file for malware, just in case. (I use the free version of Malwarebytes AntiMalware to do single-file scans for that.)
    If the file is clean, to install the utility, doubleclick the msicuu2.exe file you've downloaded.
    Now run the utility ("Start > All Programs > Windows Install Clean Up"). In the list of programs that appears in CleanUp, select any iTunes entries and click "Remove".
    Quit out of CleanUp, restart the PC and try installing iTunes again. Does the install go through properly now?
    (If you do find a clean download site for the correct version of CleanUp, please don't tell me where it is. Without wishing to sound paranoid (although I grant it does sound paranoid), there is a non-zero chance that posting links to download locations for the utility here at Discussions leads to that download location being shut down.)

  • How to remove characters/lines from the beginning of an InputStream

    Hi,
    I have a program which receives several InputStreams. From each of these streams I have to remove 2 lines from the beginning. After the lines are removed, all the streams are combined to one with SequenceInputStream and read in one chunk. Is there an easy/simple way of doing this?
    One option I thought would be to read the char by char until 2 end of line chars have been detected and then read the rest of the data to a buffer. And the create a ByteArrayInputStream out of this buffer. Problem with this approach is, that the amount of data can be large, so putting all the data in to memory might cause problems.
    Another option is to use BufferredInputStream and use the readline() method twice to get rid of the lines that are not needed. After this I would write the data to some output stream, which is then converted back to input stream. Propably would work, but sound too much of work for a simple thing like this. There has to be better way.
    To make it simple, what I need is a method that looks like the following, or something similar
    *  Removes n number of lines from the beginning of a InputStream.
    *  @param is InputStream where the lines are removed
    *  @param numberOfLines int value to indicate how many lines whould be removed
    *  @return InputStream where lines have been removed.
    public InputStream removeLines(InputStream is, numberOfLines);Thanks.

    Here's the code, feel free to use it. Comments are also welcome.
    public InputStream removeLinesFromTheBeginning(InputStream is, int numberOfLines) throws IOException
              char c = 'c';
              int i = 0;
              for(int n = 0 ; n < numberOfLines ; n++)
                   do
                        c = (char)is.read();
                        System.out.print(c);
                        if(c == (char)-1)     // end of stream reached before any newline characters were found.
                             return null;
                        i++;
                   while(c != '\n');
                   System.out.println();
                   System.out.println("Characters removed:" + i);
                   System.out.println("n: " + n);
                   i = 0;
              return is;
         }Edited by: dave_spaghetti on Jun 16, 2009 5:42 AM
    Fixed a bug.

  • I have 5 computers authorized to use my iTunes. 2 of those computers do not exist and  have had their hard drives destroyed. How do I remove those computer from my iTunes account?

    I have 5 computers authorized to use my iTunes. 2 of those computers do not exist and  have had their hard drives destroyed. How do I remove those computer from my iTunes account?

    Begin by opening the iTunes program and going to the iTunes Store via the iTunes Store button in the top right.
    Once you're at the iTunes Store, click on the Sign In button at the top left corner (if you're not signed in) or on your account name in the same location (if you're already signed in).
    This will bring you to your iTunes account. In the top box, you'll see a section labelled Computer Authorizations towards the bottom. Next to it is a button that reads Deauthorize All. Click it.
    A window will pop up asking you to confirm that this is what you want to do. Continue.
    In just a few seconds, all 5 computers on your account will be deauthorized.
    Now, re-authorize just the computers that you still use and you'll be all set.

  • How to make button to format a HardDrive or USB, How to remove all files from folder, and How to delete a process in listbox with a textbox?

    Hello!
    Here's the question with explaniation: How can i format the USB or Drive by clicking a button what's meant for it?
    and the second question what's also in vb.net: How can i remove all files from folder ? 
     Here's the Look of program: *
    Using the PC button, it will delete the free space of the PC, do you guys/girls know where it's location?

    Example Code:
    Imports System.Runtime.InteropServices
    Imports System.IO
    Public Class Form1
    Dim CBoxDrives As New ComboBox
    WithEvents FButton As New Button
    <DllImport("shell32.dll")> _
    Private Shared Function SHFormatDrive(ByVal hwnd As IntPtr, ByVal drive As UInteger, _
    ByVal fmtID As UInteger, ByVal options As UInteger) As ULong
    End Function
    Private Enum SHFormatFlags As Integer
    SHFMT_ID_DEFAULT = &HFFFF
    SHFMT_OPT_FULL = &H1
    SHFMT_OPT_SYSONLY = &H2
    SHFMT_ERROR = &HFFFFFFFF
    SHFMT_CANCEL = &HFFFFFFFE
    SHFMT_NOFORMAT = &HFFFFFFD
    SHFD_FORMAT_FULL = 0 ' full format
    SHFD_FORMAT_QUICK = 1 ' quick format
    End Enum
    Private Sub FButton_Click_1(sender As System.Object, e As System.EventArgs) Handles FButton.Click
    If CBoxDrives.Text = "" Then
    MsgBox("No Drive Selected")
    Exit Sub
    End If
    Dim Iresult As ULong = SHFormatDrive(CType(Me.Handle.ToInt32, IntPtr), CUInt(Asc(CBoxDrives.Text.Substring(0, 1)) - Asc("A")), CUInt(SHFormatFlags.SHFMT_ID_DEFAULT), 1)
    End Sub
    Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    Me.Size = New Size(200, 100)
    With FButton
    .Size = New Size(50, 25)
    .Location = New Point(5, 5)
    .Text = "Format"
    End With
    Me.Controls.Add(FButton)
    With CBoxDrives
    .Size = New Size(50, 25)
    .Location = New Point(75, 5)
    .DropDownStyle = ComboBoxStyle.DropDown
    End With
    Me.Controls.Add(CBoxDrives)
    Dim DrivesFound As Integer = 0
    Dim allDrives() As DriveInfo = DriveInfo.GetDrives()
    Dim d As DriveInfo
    For Each d In allDrives
    If ((d.DriveType = DriveType.Fixed) Or (d.DriveType = DriveType.Removable)) AndAlso Environment.GetEnvironmentVariable("SYSTEMROOT").StartsWith(d.Name) = False Then
    CBoxDrives.Items.Add(d.Name)
    DrivesFound += 1
    End If
    Next
    CBoxDrives.SelectedIndex = DrivesFound - 1
    End Sub
    End Class

  • How do you remove an item from launchpad

    how do I remove the old pages, numbers and keynote from the launchpad after installing the renewer ones from the app store???

    LaunchPad is an odd puppy. After invoking LaunchPad you hold the option key to get the apps hopping (ala the iPhone) and an X will appear on programs you've downloaded from the Mac App Store. This doesn't just remove the app from the LaunchPad, it also deletes it from your computer. Programs you've installed from discs or downloaded from plaes other than the MAS won't have an X. You'll have to delete them by dragging them to the trash. They should then disappear from the LaunchPad - if not restarting the computer should do it.
    Note: iWork '09 on the MAS is the same as the disc version iWork '09. You'll only benefit from buying the MAS versions if you have an older version than that.

  • I cannot remove embedded barcode from the image. Due to saving compression.

    Hi guys,
    I recreate a thread to prevent confusing on my previous one. Please only reply to this thread thanks.
    Ok, for a start I will give some general description about the application I made.
    I had some problem with the image being compressed while it is saved.
    Because saving an image will cause it to compress and had its pixel valued changed, I could not successfully remove the bardcode that is embedded inside a image(although some of the pixel value will be returned to original normally). I had placed my code below and will accept any opinion that will help me solve the removal of barcode problem.
    What my application does is actually very simple. It will take the pixel value of the area inside the image that will be embed with the barcode first, then it will take the pixel value of the barcode and use the formula (1-alpha * Image pixel value) + (alpha * barcode pixel value) = new pixel value which will contain the barcode that had been embedded inside. The formula works great but when I saved the image the pixel value will change due to compression. On the removal of barcode my application will read every pixel value from the image embedded with barcode (only the area with barcode embedded), then it will go on to read every pixel value of the barcode used for embedding and then use the formula (Embedded image pixel value - (alpha * Barcode pixel value) - (1 - alpha) = original pixel value. But due to the reason that compression will change some of the pixel inside the saved image to drop in its value, the result from the removal formula will be negative and hence caused my result image to become wierd as it will red colors instead of original color on some of its pixel. I tried saving under PNG format which people said to be lossless compression but the result is still the same.
    So I need to ask you guys for opinion or help me find the part where I actually did wrongly and caused the image pixel value to change.
    Thanks. Please proceed and read below for the codes that I used. It is messy and I will sort it out later.
    When alpha is set as 1 the barcode will appear to be overwrite onto the image. But when alpha is set as 0.1 the barcode will appear to be transparent and almost seems to be not there on the image when embedded.
    This is the code I used to retrieve image pixel when embedding:
    public static int[] getImagePixelValue(BufferedImage image, int x, int y){
              //Create an array to store image RGB value
              int[] imageRGB = new int[3];
              //Get height and width from input image
              int imageWidth = image.getWidth();
              int imageHeight = image.getHeight();
              //Get raw RGB value from image
              int imageValue = image.getRGB(x, y);
              //Convert image raw RGB value
              int imageRed = ((image.getRGB(x, y) >> 16) & 0xff);
              int imageGreen = ((image.getRGB(x, y) >> 8) & 0xff);
              int imageBlue = image.getRGB(x, y) & 0xff;
              //Input the converted RGB value into the array
              imageRGB[0] = imageRed;
              imageRGB[1] = imageGreen;
              imageRGB[2] = imageBlue;
              /*//Print out the pixel value to check
              System.out.println("Image red pixel: "+imageRGB[0]);
              System.out.println("Image green pixel: "+imageRGB[1]);
              System.out.println("Image blue pixel: "+imageRGB[2]);*/
              //Return image RGB value
              return imageRGB;
    }This is the code I used to retrieve barcode pixel for embedding:
    public static int[] getWatermarkPixelValue(BufferedImage watermark, int x, int y){
              //Create an array to store watermark RGB value
              int[] watermarkRGB = new int[3];
              //Get height and width from input watermark
              int watermarkWidth = watermark.getWidth();
              int watermarkHeight = watermark.getHeight();
              int watermarkValue = watermark.getRGB(x, y);
              //Convert watermark raw RGB value
              int watermarkRed = ((watermark.getRGB(x, y) >> 16) & 0xff);
              int watermarkGreen = ((watermark.getRGB(x, y) >> 8) & 0xff);
              int watermarkBlue = watermark.getRGB(x, y) & 0xff;
              //Input the converted RGB value into the array
              watermarkRGB[0] = watermarkRed;
              watermarkRGB[1] = watermarkGreen;
              watermarkRGB[2] = watermarkBlue;
              /*//Print out the pixel value to check
              System.out.println("Watermark red pixel: "+watermarkRGB[0]);
              System.out.println("Watermark green pixel: "+watermarkRGB[1]);
              System.out.println("Watermark blue pixel: "+watermarkRGB[2]);*/
              //Return watermark RGB value
              return watermarkRGB;
         }This is the code I used for merging the image pixel and barcode pixel to get the embedded pixel value:
    public static int[] getEmbeddedPixelValue(int[] imagePixelValue, int[] watermarkPixelValue, double alpha){
              //Create a object to hold embedded pixel value
              int[] embeddedRGBValue = new int[3];
              //Change image pixel value into double calculating equation
              double imgRedValue = (double) imagePixelValue[0];
              double imgGreenValue = (double) imagePixelValue[1];
              double imgBlueValue = (double) imagePixelValue[2];
              //Change watermark pixel value into double calculating equation
              double wmRedValue = (double) watermarkPixelValue[0];
              double wmGreenValue = (double) watermarkPixelValue[1];
              double wmBlueValue = (double) watermarkPixelValue[2];
              //Equation for embedding image and watermark together
              double embeddedRed = ((1.0 - alpha) * imgRedValue) + (alpha * wmRedValue);
              double embeddedGreen = ((1.0 - alpha) * imgGreenValue) + (alpha * wmGreenValue);
              double embeddedBlue = ((1.0 - alpha) * imgBlueValue) + (alpha * wmBlueValue);
              //Changing embedded value from double to int
              int embeddedRedValue = (int) embeddedRed;
              int embeddedGreenValue = (int) embeddedGreen;
              int embeddedBlueValue = (int) embeddedBlue;
              //input the embedded RGB value into the array
              embeddedRGBValue[0] = embeddedRedValue;
              embeddedRGBValue[1] = embeddedGreenValue;
              embeddedRGBValue[2] = embeddedBlueValue;
              //Return embedded pixel value
              return embeddedRGBValue;
         }This is the code where I used for the embedding process:
    else if(target == embedButton){
                   String xCoordinate = JOptionPane.showInputDialog(embedButton, "Enter coordinate X", "When you want to embed the watermark?", JOptionPane.QUESTION_MESSAGE);
                   String yCoordinate = JOptionPane.showInputDialog(embedButton, "Enter coordinate Y", "When you want to embed the watermark?", JOptionPane.QUESTION_MESSAGE);
                   int xValue = Integer.parseInt(xCoordinate);
                   int yValue = Integer.parseInt(yCoordinate);
                   int wCounter = 0;
                   int hCounter = 0;
                   //Create file object to be used in embedding and removing watermark
                   File inputImage = new File(imagePath);
                   File inputWatermark = new File(watermarkPath);
                   //Convert string into double for calculation of embedded pixel value
                   try {
                        alphaDouble = Double.valueOf(alphaValue).doubleValue();
                   catch (NumberFormatException nfe) {
                        System.out.println("NumberFormatException: " + nfe.getMessage());
                   try{
                        //Define selected image as testPic and make java read the file selected
                        BufferedImage image= ImageIO.read(inputImage);
                        BufferedImage watermark= ImageIO.read(inputWatermark);
                        BufferedImage testing;
                        //Get height and width value from the selected image
                        int imageWidth = image.getWidth();
                        int imageHeight = image.getHeight();
                        //Get height and width value from the selected barcode
                        int watermarkWidth = watermark.getWidth();
                        int watermarkHeight = watermark.getHeight();
                        int totalWidth = watermarkWidth + xValue;
                        int totalHeight = watermarkHeight + yValue;
                        //Use nested for loop to get RGB value from every pixel that the barcode will be embedded in the selected image
                        if(totalWidth <= imageWidth && totalHeight <= imageHeight){
                             for (int h = yValue ; h < totalHeight; h++){
                                  for (int w = xValue; w < totalWidth; w++){
                                       int[] imagePixelValue = getImagePixelValue(image, w, h);
                                       int[] watermarkPixelValue = getWatermarkPixelValue(watermark, wCounter, hCounter);
                                       int[] embeddedPixelRGBValue = getEmbeddedPixelValue(imagePixelValue, watermarkPixelValue, alphaDouble);
                                       setRed(image, w, h, embeddedPixelRGBValue[0]);
                                       setGreen(image, w, h, embeddedPixelRGBValue[1]);
                                       setBlue(image, w, h, embeddedPixelRGBValue[2]);
                                       wCounter++;
                                       if(wCounter == watermarkWidth){
                                            wCounter = 0;
                                            hCounter++;
                        else{
                             JOptionPane.showMessageDialog(embedButton, "The watermark cannot be embedded at the coordinates.");
                        tempImage = image;
                        imageIcon = new ImageIcon(tempImage);
                        labelImage.setIcon(imageIcon);
                        imagePanel.add(labelImage);
                        container.add(imagePanel, BorderLayout.CENTER);
                        setVisible(true);
                        System.out.println("Embedding completed");
                   catch(Exception errorEmbedding){
                        //If there is any error, the try and catch function will tell you the error
                        System.out.println("The following error occured: "+errorEmbedding);
              }This is the code I use to save the image that had been embedded with the barcode:
    else if(target == saveAction){
                   JFileChooser chooser = new JFileChooser();
                   FileNameExtensionFilter filter = new FileNameExtensionFilter("JPG & GIF Images", "jpg", "gif");
                   chooser.setFileFilter(filter);
                   chooser.setCurrentDirectory(new File("."));
                   int returnVal = chooser.showSaveDialog(getParent());
                   if(returnVal == JFileChooser.APPROVE_OPTION) {
                        String name = chooser.getSelectedFile().getAbsolutePath();
                        //Create a string instant to hold outputImage path name
                        String saveFile = chooser.getSelectedFile().getName()+"."+fileType;
                        //Create file output to decide what name will be used to save the file
                        File outputImage = new File(saveFile);
                        try{
                             //Save the file with the name used
                             ImageIO.write((RenderedImage) tempImage,fileType,outputImage);
                        catch(Exception errorSaving){
                             //If there is any error, the try and catch function will tell you the error
                             System.out.println("The following error occured: "+errorSaving);
                   else{
              }This is the code I used for removal process of barcode:
    else if(target == removeButton){
                   //Create file object to be used in embedding and removing watermark
                   File inputImage = new File("removalTesting.jpg");
                   //File inputWatermark = new File(watermarkPath);
                   //Used a defined barcode for testing of removing barcode from embedded image
                   File inputWatermark = new File("barcode.jpg");
                   /*//Convert string into double for calculation of embedded pixel value
                   try {
                        alphaDouble = Double.valueOf(alphaValue).doubleValue();
                   catch (NumberFormatException nfe) {
                        System.out.println("NumberFormatException: " + nfe.getMessage());
                   //Used a defined alpha value for testing of removing barcode from embedded image
                   //alphaDouble = 0.5;
                   //Create x and y value for the starting coordinates of barcode embedded in the embedded image
                   int xValue = 0;
                   int yValue = 0;
                   int wCounter = 0;
                   int hCounter = 0;
                   try{
                        //Define selected image as testPic and make java read the file selected
                        BufferedImage image= ImageIO.read(inputImage);
                        BufferedImage watermark= ImageIO.read(inputWatermark);
                        //Get height and width value from the selected image
                        int imageWidth = image.getWidth();
                        int imageHeight = image.getHeight();
                        //Get height and width value from the selected barcode
                        int watermarkWidth = watermark.getWidth();
                        int watermarkHeight = watermark.getHeight();
                        int totalWidth = watermarkWidth + xValue;
                        int totalHeight = watermarkHeight + yValue;
                        //Use nested for loop to get RGB value from every pixel that the barcode had been embedded in the embedded image
                        if(totalWidth <= imageWidth && totalHeight <= imageHeight){
                             for (int h = yValue ; h < totalHeight; h++){
                                  for (int w = xValue; w < totalWidth; w++){
                                       int[] imagePixelValue = getImagePixelValue(image, w, h);
                                       int[] watermarkPixelValue = getWatermarkPixelValue(watermark, wCounter, hCounter);
                                       int[] removedPixelRGBValue = getOriginalImagePixelValue(imagePixelValue, watermarkPixelValue, alphaDouble);
                                       setRed(image, w, h, removedPixelRGBValue[0]);
                                       setGreen(image, w, h, removedPixelRGBValue[1]);
                                       setBlue(image, w, h, removedPixelRGBValue[2]);
                                       wCounter++;
                                       if(wCounter == watermarkWidth){
                                            wCounter = 0;
                                            hCounter++;
                        tempImage = image;
                        imageIcon = new ImageIcon(tempImage);
                        labelImage.setIcon(imageIcon);
                        imagePanel.add(labelImage);
                        container.add(imagePanel, BorderLayout.CENTER);
                        setVisible(true);
                        System.out.println("Embedding completed");
                   catch(Exception errorEmbedding){
                        //If there is any error, the try and catch function will tell you the error
                        System.out.println("The following error occured: "+errorEmbedding);
              }Sorry if the codes are in a mess, I did not had the time to sort it out yet but most likely do it when I got the removal of barcode done.
    Follow this link to have a look of the result I see in my application when I got the barcode embedded into the image I selected:
    [http://img356.imageshack.us/my.php?image=beforeremovalresultmg2.jpg]
    Follow this link to have a look of the result I see in my application after I got the barcode removed:
    [http://img523.imageshack.us/my.php?image=removalresultmx4.jpg]
    As you can see from the link, after I remove the barcode from the image. Some of the pixel actually went back to normal in the barcode area when the the barcode is embedded into the image. But some pixel in the barcode area had its value changed due to compression when I save the image file I think.
    Anyone can help me find out the problem?
    Thanks.

    KamenRider wrote:
    I suspect the problem lies in the code when I save the image. Because people said that PNG was loseless compression but when I saved in PNG some of the pixel went back to normal while some did not. This is obviously the cause from changing of pixel value when I saved the image.You are almost certainly wrong. This is trivially easy to check. Print out the color of a certain pixel immediately before you save it. Open the saved PNG in your favorite image manipulation program and check the saved value of that same pixel. When you re-load the saved PNG, print out the color again. It should be unchanged.
    Thanks you for trying to help me spot the problem but the formula is correct. The alpha value i used in my application is used to set the transparency of the barcode that will be embedded in the image. Hence, when alpha = 1 the new pixel value should be the barcode value. ^^The formula isn't wrong, it's just not doing what you think it's doing. Remember that you're working with ints here, not floating point numbers, so they have finite precision. When you case from double to int, fractions are dropped. As morgalr pointed out, your formula is:
    (1-alpha * Image pixel value) + (alpha * barcode pixel value) = new pixel value You didn't show us the code for getOriginalImagePixelValue but I imagine it's:
    original pixel value = (new pixel value - alpha * barcode pixel value) / (1 - alpha)On a piece of paper, take alpha = 0.9, image pixel = 17 and barcode pixel = 100. Calculate out what you should get for new pixel value and then calculate what you should get for original pixel value. You will find they don't match.

Maybe you are looking for

  • Warning Message in MB52

    Hello Friends, When we enter in MB52 screen and execute report we get warning message. In standard system from where this message is coming. this message is not configured in OMCQ. Still this message comes. How we can remove this message. Regards Kan

  • Missing Instances in SAP Management Console

    Hello, After troubles with Deploy (error message occurs) I tried to restart the J2EE Engine with sapmmc, but it does not start correctly (not all icons are green). So I stopped the J2EE engine, rebooted my developer PC and afterwards the list in sapm

  • Adobe Flash Notes

       User has a USB thumb drive that he got from a conference.  The thumb drive has a Acrobat document on it that uses Adobe Flash player to see the document.  Flash player also allows him to take notes and enter those notes onto the document. The note

  • Find out operator privilege for a role

    Hi, How to find out targets missing operator privilege for a role in OEM?

  • [SOLVED]"[drm:drm_edid_block_valid] *ERROR* EDID checksum is invalid -

    ... remainder is 128" I get this lines since a few weeks on every ~second boot. I can't bypass it or ignore it, just a reset helps. The screen comes right after the mounting of the partitions: The monitor goes black (earlier than with a regular boot)