When I open the file I uploaded to the server using its URL, everything looks
fine. See for yourself: http://www.peermann.com/banner.html
But when I look at it on the website that publishes it, there are bad
artifacts that look like tiles are not aligned properly. Have a look:
http://www.easyreadernews.com/index.php You can't miss it, it's the only
animated ad on that page.
Can anyone tell me what's going on here and how I can fix that? Your help is
greatly appreciated.
> When I open the file I uploaded to the server using its URL,
> everything looks fine.
Yes, looks good.
> But when I look at it on the website that publishes it, there
> are bad artifacts that look like tiles are not aligned properly.
My guess is that you're using a few bitmap images in your ad. Nothing
wrong with that, to be sure, but bitmaps don't always resize cleanly
(whereas vector artwork always does). I checked out that second URL, and
here's what I found, comparing the second one with your own:
On peermann.com, the SWF is embedded at 120x60. On easyreadernews.com,
the SWF is embedded at 125x125, which stretches the SWF's width and adds
white letterboxing on the top and bottom. The letterboxing isn't a problem,
but the slight increase in width is likely what's causing your artefacts.
David Stiller
Co-author, Foundation Flash CS3 for Designers
http://tinyurl.com/2k29mj
"Luck is the residue of good design."
Will increasing the size of the stage - but not the content - to 125x125 solve the problem? I don't se why not, but think it's better to ask.
> Will increasing the size of the stage - but not the content -
> to 125x125 solve the problem? I don't se why not, but
> think it's better to ask.
That would keep your bitmaps from resizing, which would help, but your
endeavor may prove harder than you think. The Stage will resize from the
upper left corner; therefore, your content will also appear in the upper
left corner, rather than centered (assuming you'd want centered).
It might be easier to try this:
In frame 1 of the main timeline, set the Stage.scaleMode property to
"noScale" ...
Stage.scaleMode = "noScale";
... this can also be set in the HTML, but you presumably won't have access
to or control over the other domain's HTML formatting. By default, scale
mode is showAll, which is what causes your SWF to increase size in order to
fill the available space. By setting it to noScale, you'll keep that from
happening.
The Stage.align property doesn't specify a setting for centered, but
vertical and horizontal centering is the default. If you want to position
the content in another way, such as top right, you would set the Stage.align
property as well:
Stage.align = "TR";
(see the Stage class entry in the ActionScript 2.0 or 3.0 Language Reference
for details).
David Stiller
Co-author, The ActionScript 3.0 Quick Reference Guide
http://tinyurl.com/2s28a5
Then I tried the script that comes with the help files - swfStage.scaleMode =
StageScaleMode.NO_SCALE; - without results as well. What am I doing wrong?
The movie is in ActionScript 3.
> I must be doing something wrong. I am placing the exact script -
> Stage.scaleMode = "noScale";
> - into frame one of the actions layer on the main timeline, but
> nothing happens. I refreshed the site several times, emptying the
> cache very time.
The code I showed was ActionScript 2.0, and since you're using AS3, you
have to get your state reference as a property of the object you're in -- in
this case, the main timeline -- so you could use this:
this.stage.scaleMode = StageScaleMode.NO_SCALE;
or simply:
stage.scaleMode = StageScaleMode.NO_SCALE;
After that, when you make your test, you'll have to purposefully change
the width and height settings in your HTML document in order to see the
difference. Assuming all works out (and please, write back if it doesn't --
I'll continue helping you), you'll of course need to send that SWF to the
other person/company hosting your banner.
David Stiller
Contributor, How to Cheat in Adobe Flash CS3
http://tinyurl.com/2cp6na
I did as you said, but no results. There is one thing I didn't tell you,
though, because I didn't think it matters. The swf file is hosted on my server,
not the server of the paper that runs the ad. They just link that area to the
URL of the banner on my site. Maybe that is a factor after all.
Woops! Forgot the S in name.
David iller
Adobe Community Expert
Dev blog, http://www.quip.net/blog/
> I did as you said, but no results.
Hrm.
> There is one thing I didn't tell you, though, because I didn't
> think it matters. The swf file is hosted on my server, not the
> server of the paper that runs the ad.
Agreed, that shouldn't matter. Interestingly, the HTML they're using to
embed the SWF is this:
<embed src="../ads/peermannlogo.swf" alt="" width="125" height="125"
border="0" />
... which is a relative URL. Are you sure they're linking to your server?
To test out my solution, I created a quick test FLA, with the AS3 code I
suggested, and uploaded it here:
When I publish that from Flash, and then adjust the HTML to make with width
and height larger than the SWF actually is, the imported image doesn't
scale. The image is 50x50, but in my testing, I set the SWF's width and
height to 120x80. I also changed the HTML's background color to black, so I
see the boundaries of the SWF. As expected, the imported image itself
remains at 50x50, centered. Does that do the same for you?
David Stiller
Adobe Community Expert
Dev blog, http://www.quip.net/blog/
Interesting what you found out about the link to the file. That would explain
why my changes don't have any effect on the appearance of the ad. They must
have downloaded the file and placed it onto their server. Without letting me
know. Maybe they don't know how to link a frame to an absolute URL.
I wonder if just changing the size in their html to 120 on the wide side will
solve the problem. If it does, I will just tell them to do that.
Thanks again for your help.
Thanks Dave.