Craigslist Newbie

We came into possession of some really nice shoes that we now want to sell. They are all decently expensive, mostly European leather made.. so I couldn't bear to throw them out with the rest of the junk.

eBay gets a little complicated, so I thought I'd try Craigslist for the first time ever. I took pictures and uploaded all 6 pairs of shoes onto the website yesterday morning. When my hubby and I got home last night, I found an email inquiring whether a certain pair was still available. Score! :)

Still up for sale?

I replied back that they were, indeed, still available. I also told him that we'd take either paypal or cash, and offered two different towns for pickup. I didn't know from where he was coming, after all.

Within a minute, I received this..

Hi
Thanks for the response.I am willing to pay your asking price.I will
pay by money order as its the only way i can pay you at the moment.I
will make arrangement for the pick-up after payment have been received
by you. I dont mind adding an extra twenty dollars so you can keep it
in my favor.Reply with your full name,cell phone number,and address
where payment should be sent.Please take the posting off craigslist
today and consider it sold to me. Expecting to hear from you soon
Thanks

Sounds really nice. I didn't respond back right away.. and it was nagging at me all day. It just sounded too nice, and I'm smart enough to avoid the whole money order thing. So, I phrased a few drafts in reply.. and decided to google his email instead.

oh oh!! Quelle suprise! Scam. ugh. Thank God I didn't take his offer!!

proof, more proof, still moreproof...

Tags: 

Acrobat Javascript with Actions and Stamps

Imagine for a moment that it is your job to process hundreds of engineering 'blueprints', by rubber-stamping each one. In this little stamped form, you need to write often the same bit of information on every drawing. Fortunately, in today's world real blueprints have been replaced with black and white electronic files. And in today's world we have the technology that can allow you to automate this entire stamping process... making days of work be filtered down to maybe an hour. [In this scenario the files are all in PDF format and we are using Adobe Acrobat X Pro.]

The Problem:
A batch process needs to be done on multiple PDF files. This batch process will need to:

  • cycle through all files (regardless of the number of files),
  • use a customized version of Acrobat's "stamp" annotation in order to automatically place (possibly multiple versions of) text onto each file,
  • save and overwrite (flatten) that file

The Twist:
This was accomplished once. A programmer had written a multi-program approach in VB6. One began the process in MS Outlook, stepped through MS Word, and ended up in Acrobat 8 while utilizing a tool written for Acrobat 5. It was memory-hungry, and it (usually) worked. Then the user group was upgraded to brand-new Windows 7, 64-bit machines, running MS 2010 and Acrobat X Pro. Oy! All VB6 programming was now out the window with the introduction of MS' VB.NET... and that fun little Acrobat 5 tool could no longer function in the new Acrobat X environment.

The Solution:
It seemed convoluted to me to rewrite it exactly in the same manner. (Although, at first I did try rewriting the VB6 script into .NET. It really didn't translate well.)
It also seemed illogical that there wasn't a way to do this whole process directly inside Acrobat X. As it turns out, there is a way.. I just needed to learn Acrobat's version of JavaScript. :)

Step 1: Getting the Data

The dynamic stamps that are built-into Acrobat, pull data that is stored either in the system or the document itself. So, my logic was to do the same with my bits of information that I needed to utilize. The first bit was just the file name, then there were a few other bits of text that the user would need to supply.

Since they may have to batch 200 of these files, I didn't want them to be interrupted and asked EVERY time a file popped up. So, I created a simple form asking for those extra bits of information. At the bottom of this form, I created a "save settings" button. This button takes each of those fields and saves them as Global Variables, deleting the variable first as good practice.

delete global.usrtxt1;
delete global.usrtxt2;
global.usrtxt1 = this.getField("UserText1").value;
global.usrtxt2 = this.getField("UserText2").value;

Step 2: Building an Action

Once those variables are set, I have the user run the Action Wizard that I set up for them. ["Action wizards" are found under "Tools", and replace the old batch processes before Acrobat X.]

I set up a folder for each user to dump all the files they need to process. This wizard runs through that folder, going through all the steps that I set up. It then saves each file in the same folder.

The first step executes a bit of JavaScript on the file. The intention here is to grab the global variables, and insert them into the document's meta information. This way, it is usable to the dynamic stamp we'll set up later. Now, I had a bit of fun with this one because even though the first variable is always the same for each document, the second variable may be different for each document. The code below is set so that if the variable does not exist, it will prompt the user for the information.

this.info.usrtxt1 = global.usrtxt1;
if (global.usrtxt2) {this.info.usrtxt2 = global.usrtxt2;}
else {
var ut2 = app.response({
cQuestion: "Enter the text.",
cTitle: "Text",
cLabel: "Text:"
});
this.info.usrtxt2 = ut2;
}

Acrobat allows for "instruction steps". The second step is an instruction that will simply prompt the user to stamp the file. Once the stamp is set, the user will tell the process to continue.

As I mentioned before, each file is saved along the way.

Step 3: Dynamic Stamp Creation

I needed a stamp that will be able to utilize those bits of text that were first saved as global variables, then transferred to the document itself.

Creating a customized stamp is pretty simple. You simply

  • go to Comment,
  • Annotations,
  • select the Stamp tool,
  • select Custom Stamps,
  • then Manage Stamps.
    • A dialog box will appear and you select Create,
    • browse to the PDF or image file you would like to use as your stamp, and click OK,
    • Select the category under which you'd like to file the new stamp, write a new name, and click ok.
  • Select "ok" to get out of the "Manage Custom Stamps" dialog.

Voila! You are done. Now to use the stamp, you'd simply go back to the stamp tool and select your new one. However, this is just a flat image with no customized text.

Although it starts there, creating a Custom Dynamic Stamp is a little different. There are many great tutorials on how to create a customized dynamic stamp. The gist of using dynamic fields on a stamp is that they MUST be calculated fields. To my understanding, this calculation forces the field to update before it is used on the document.

What I needed for this stamp was the document name and the two user defined fields back from step 1.

Below is the calculation I used for grabbing the document name. You'll see a split/shift thing going on.. and basically that allowed me to chop off the file extension. Pretty cool stuff. :)

var myFilename = event.source.source.documentFileName;
var fileNmRoot = myFilename.split(".").shift();
event.value = fileNmRoot;

For the two user defined fields, I simply told it to look for the field that was saved into the document's meta information. The code for these two fields are the same:

var ut1 = event.source.source.info.usrtxt1;
event.value = ut1;


var ut2 = event.source.source.info.usrtxt2;
event.value = ut2;

.. and that's the end of the story. :)

Tags: 

Graphics Fun

Today, my coworkers and I entered into a discussion on graphics.. one teased the other about putting his mom's head on a dog's body or something.. and he pointed at me and said "no, that's her." Of course, this raises a curiosity so I pulled out my tablet and showed him my morphings. :D

Years ago I found an incredible stock photography site, Stock.XCHNG, that I ended up using for a number of web projects. On that site there are a number of great Photoshop tutorials. Now, I have faithfully been using Fireworks for years now, so I simply translated what they were telling me into the tools I was more used to using.

The first tutorial that peaked my interest was one on "Flawless Skin". Of course, I had to go try it out on every picture of me I had posted to any social network out there. (Later, when dating my husband, he dared me to find a photo I hadn't retouched to send to him.. lol..)

Soon after this, my bff, Christa, had been wondering if she should dye her hair blond. Of course I offered to fix one of her pics to show to her. She'd sent me a pic of Nicole Kidman (who has a very similar face to Christa) and told me that she was considering doing something like that picture. Well, of course I decided to go a step farther than simply putting Nicole's hair on Christa's body. I put Christa's face into Nicole's head. (Christa ended up getting lots of compliments from people who had no idea her new FB pic wasn't actually her..)

There is another tutorial, that I cannot seem to find, that teaches how to alter a person's clothing color. So, I changed my wedding dress red. Lots of fun.

At any rate, all this rambling to tell you that I will soon be putting up a new page displaying my morphings to the world. Enjoy!

Tags: 

Pages

Subscribe to Front page feed