Tillatelseskontroller. Spesielle tekstblokker

Kapittel 5. Arbeide med tekst

Til enhver Blits-film kan legges til tekst. I likhet med å jobbe i vanlige tekstredigerere, kan tekst settes til størrelse, font, stil, avstand, farge og justering. Du kan transformere skriften som andre objekter - rotere, skalere, skjeve. Samtidig beholdes muligheten til å redigere symbolene.

En hyperkobling kan lages basert på et tekststykke.

Blits-Film kan inneholde dynamiske tekstfelt så vel som brukerredigerbare felt. Redigerbare felt i Blits-filmer har samme formål som tekstfelt plassert i et skjema på en webside: med deres hjelp kan en eller annen informasjon hentes fra brukeren som skal behandles på serveren eller av et klientskript. Til slutt kan du lage rullbare tekstområder med flere linjer.

Om nødvendig kan teksten konverteres til et grafisk objekt, og så er det lov å jobbe med symbolene som med separate grafiske former.

Lage og redigere tekst

For å legge til en tekstboks Blits-film, følg disse trinnene:

  1. Slå på tekstverktøyet i verktøypanelet.
  2. Klikk med musen i posisjonen på bordet der du vil plassere tekstfeltet; som et resultat vil en tekstmarkør vises på denne posisjonen, omgitt av en utvalgsramme.
  3. Skriv inn tekst.

Merk at i høyre hjørne av utvalgsrammen (øverst eller nederst) er det en markør som bestemmer typen tekstboks (fig. 5.1): den rektangulære markøren i øvre høyre hjørne tilsvarer Fixed tekstblokken; i et slikt felt utføres automatisk overføring til neste linje hvis neste tegn ikke passer på gjeldende linje; bredden på feltet angis av brukeren ved å dra markøren; etter at filmen er publisert på en webserver, kan ikke innholdet i et slikt felt endres av skriptet eller av leseren av nettsiden;

  • den runde markøren i øvre høyre hjørne tilsvarer den utvidede tekstblokken; Det er en en-linjes tekstboks som automatisk utvides mens du skriver; dette alternativet brukes som standard; innholdet i et slikt felt kan heller ikke endres med skript eller av leseren av nettsiden;

Ris. 5.1. Tekstblokkmarkører

  • den hvite rektangulære markøren i nedre høyre hjørne tilsvarer tekstfeltet beregnet på å legge inn dynamisk endrende innhold - Dynamisk tekstblokk eller Input tekstblokk; innholdet i feltet av den første typen kan endres ved hjelp av et skript, og den andre - av leseren av nettsiden (for eksempel når du legger inn data i et skjema);
  • den svarte rektangulære markøren i nedre høyre hjørne indikerer en tekstboks hvis innhold kan flyttes (rulles) innenfor tekstområdet ved hjelp av en vertikal og/eller horisontal rullefelt.

For å endre attributtene til en tekstblokk, et ord (tekststykke) eller et enkelt tegn, må du:

  1. Slå på tekstverktøyet.
  2. Velg (uthev) det tilsvarende tekstfragmentet med musen.
  3. I Tekst-menyen velger du den aktuelle kommandoen, eller bruk kontrollene som er tilgjengelige på inspektørpanelet til tekstegenskapene.

Alle kommandoer i tekstmenyen er delt inn i tre grupper (fig.5.2.):

  • den første inkluderer "tradisjonelle" kommandoer for å jobbe med tekst (skrifttype, størrelse, stil), som faktisk er overlappende menyer som inneholder mulige verdier for de tilsvarende tekstattributtene;
  • den andre gruppen er dannet av to også ganske vanlige kommandoer - Align og Tracking;
  • den tredje gruppen inkluderer en enkelt kommando, - Scrollable, for å angi riktig egenskap for tekstboksen.

Ris. 5.2. Innholdet i tekstmenykommandoene

Et mer praktisk verktøy for å endre tekstparametere er eiendomsinspektøren. Formatet avhenger av typen tekstboks.

Statisk tekst

Statisk tekst er tekstinnholdet i filmen og kan ikke endres etter at filmen er publisert.

Formatet til den statiske tekstegenskapsinspektøren er vist i fig. 5.3.

Ris. 5.3. Static Text Property Inspector

Av kontrollene som presenteres på panelet, vil sannsynligvis følgende kreve ytterligere forklaring:

  • URL tekstfelt; ved å velge en tekstblokk på bordet og spesifisere i dette feltet den fullstendige webadressen (URL - Universal Resources Locator) til den koblede ressursen, vil du få en ekte hyperkobling; i motsetning til andre visuelle redaktører, vil den imidlertid ikke bli presentert i en understreket skrift, men i en font med en stiplet linje. Brukt i Blits mekanismen for å lage hyperkoblinger har to ulemper: For det første må URL-en angis manuelt, og for det andre, Blits kontrollerer ikke URL-adressens korrekthet, selv ikke for lokale filer;
  • Mål nedtrekksliste den lar deg spesifisere i hvilket nettleservindu ressursen som kalles på den angitte URL-adressen skal lastes; listen blir tilgjengelig når du skriver inn minst ett tegn i URL-feltet; Listen inneholder følgende alternativer (de er de samme som standard HTML TARGET-verdier):
    • _blank - det oppkalte dokumentet lastes alltid inn i et nytt, ikke navngitt vindu;
    • _self - det oppringte dokumentet lastes alltid inn i det samme vinduet som koblingen ble startet i;
    • _parent - det kalte dokumentet lastes inn i det overordnede vinduet (det vil si i vinduet til et høyere nivå i hierarkiet); hvis det gitte vinduet ikke har en "forelder", eller selv er det, er resultatet det samme som å bruke verdien av _selv;
    • _top - det kalte dokumentet lastes inn i toppnivåvinduet; (hvis selve vinduet er slik, er resultatet det samme som å bruke verdien _selv);
  • Valgbar knapp den brukes som en avkrysningsboks: ved å klikke på knappen kan du angi eller fjerne merket for den tilsvarende egenskapen for teksten; det bør huskes at muligheten til å velge et fragment av tekst ikke betyr muligheten for å redigere det; det valgte fragmentet kan kopieres, for eksempel til utklippstavlen;
  • knappen Endre tekstretning åpner en meny; som du kan velge etikettens orientering med: horisontal eller vertikal; menyen inneholder tre kommandoer (fig. 5.4):
    • Horisontal
    • Vertikal, venstre til høyre;
    • Vertikal, høyre til venstre;

Når du angir den vertikale orienteringen til teksten, endres sammensetningen av formateringsknappene, og i tillegg blir rotasjonsknappen tilgjengelig:

  • Rotasjonsknappen spiller rollen som et flagg og lar deg endre plasseringen av symboler i bildeteksten (fig. 5.5);
  • Avmerkingsboksen Bruk enhetsfont – hvis den er merket, så når filmen spilles av Blits-spilleren bruker de fysiske fontene som er angitt for leserens nettleser; dette kan redusere størrelsen på filmfilen og forbedre lesbarheten for liten skrift.

Ris. 5.4. Meny for å endre tekstretning

Ris. 5.5. Varianter av arrangementet av den vertikale inskripsjonen: med rotasjonsknappen trykket (venstre) og sluppet (i midten)

Råd

Det er mye lettere å få den nødvendige posisjonen til den vertikale etiketten hvis du først angir feltparametrene, og deretter skriver inn den faktiske teksten i den. Hvis du prøver å konvertere et horisontalt felt til en vertikal etikett, kan du få resultatet vist i fig. 5,5, ikke sant.

Vær oppmerksom på at hypertekstlenker kun kan opprettes basert på horisontal tekst.

Nær høyre kant av egenskapsinspektørpanelet er Format-knappen, ved å klikke på den åpner en ekstra dialogboks som lar deg angi formateringsalternativer for tekstfeltet (fig. 5.6).

Ris. 5.6. Dialogboksen Formatalternativ

Dette vinduet inneholder fire tekstfelt kombinert med "Macromedia style"-glidebrytere:

  • Innrykk - mengden avsnittsinnrykk for en ny linje (i piksler);
  • Linjeavstand - avstanden mellom tilstøtende linjer (i punkter); for vertikal tekst, setter denne parameteren avstanden mellom kolonner med tekst;
  • Venstre marg - avstanden mellom venstre kant av tekstboksen og det første tegnet på linjen;
  • Høyre marg - Avstanden mellom høyre kant av tekstboksen og det siste tegnet på linjen.

Dialogboksen Formatalternativ er identisk for alle typer tekstfelt.

Dynamisk tekst

Dynamisk (eller utskiftbar tekst) Dynamisk tekst er et tekstfelt hvis innhold kan endres med ActionScript (det vil si mens en film spilles av).

Du kan arbeide med et dynamisk tekstfelt fra ActionScript fordi hvert felt er en forekomst av et spesielt ActionScript-objekt kalt et TextField.

Et dynamisk tekstfelt kan tildeles et unikt navn (identifikator) som du kan referere til feltet for å angi eller endre innholdet og formatet til det feltet. For eksempel kan du dynamisk endre tegnkodingen for et slikt felt.

Innstilling av dynamiske tekstattributter

For å angi attributtene til dynamisk tekst, inneholder egenskapsinspektørpanelet følgende elementer (fig.5.7):

  • Forekomstnavn tekstboks, som spesifiserer navnet på tekstboksen til tross for at feltnavnet vises (direkte i det) med grå tegn, som vanligvis angir et låst grensesnittelement i Windows-applikasjoner, er inndata i dette tilfellet tillatt;
  • Linjetype rullegardinliste over tekstfeltformater:
    • Enkel linje
    • Multiline
    • Multiline uten omslag
  • Gjengi tekst som HTML-knapp; hvis den klikkes, vil de spesifiserte tekstformateringsparametrene (som størrelse, stil, bruk som hyperkobling) når du publiserer filmen, lagres som tilsvarende HTML-tagger;
  • Vis kantknapp; hvis det klikkes, vil tekstboksen være omgitt av en ramme;

Ris. 5.7. Eiendomsinspektørformat for dynamisk tekst

  • Valgbar avkrysningsboks; formålet er likt det som vurderes for statisk tekst;
  • Var-tekstfeltet (fra Variable) er ment å angi navnet på variabelen som er knyttet til det opprettede tekstfeltet; bruken av variabler for å kontrollere elementene i filmen vil bli diskutert i underavsnittet "Opprette interaktive elementer i filmen";
  • Tegn-knappen, klikket for å åpne en ekstra dialogboks for tegnalternativer som lar deg angi alternativer for bruk av den innebygde fonten som brukes for tekstboksen; vinduet inneholder tre brytere (fig.5.8):
    • Ingen tegn - Informasjon om fonten som brukes eksporteres ikke til Blits-film når den publiseres;
    • Alle tegn - - in Blits-film inneholder informasjon om alle tegnene i fonten;
    • Bare (Favoritter) - i Blits-film inneholder informasjon om kun de tegnene i fonten, som er angitt ved hjelp av flaggene nedenfor.

Ris. 5.8. Dialogboks for tegnalternativer

Følgende forklaring bør gis om innstilling av parametere for den innebygde fonten.

Når du bruker i Blits-filmfont installert på datamaskinen din, Blits legger inn skriftinformasjon i SWF-filen, og sikrer dermed at teksten vises riktig Flash Player... Imidlertid er ikke alle fonter brukt i Blits kan eksporteres til en SWF-fil. Derfor anbefales det først å sjekke om denne fonten kan eksporteres. For å gjøre dette, velg kommandoen Antialias Text fra Vis-menyen og evaluer antialiasing-resultatet. Hvis ingen utjevning gjøres, betyr det det Blits vil ikke gjenkjenne en slik font og vil ikke eksportere den.

En alternativ måte er å bruke fysiske fonter (Device Font).

Fysisk skriftinformasjon eksporteres ikke til SWF-fil... Istedenfor dette Flash Player bruker hvilken som helst font installert på datamaskinen som er nærmest den fysiske fonten.

Siden fysisk skriftinformasjon ikke er inkludert i SWF-fil, gir dette alternativet en litt mindre filstørrelse Flash-film... I tillegg kan den fysiske skriften være skarpere enn den innebygde skriften for små tegn (mindre enn 10 poeng). Men hvis en passende font ikke er tilgjengelig på brukerens datamaskin, kan det hende at teksten ikke ser i det hele tatt ut som filmskaperen forventet.

Blits inneholder tre typer fysiske fonter: _sans (nær Helvetica og Verdana, Arial, Helvetica, sans-serif); _serif (nær Times Roman); _skrivemaskin (nær Courier-font).

For å spesifisere den fysiske fonten som brukes i denne tekstboksen, må du velge den fra listen over fonter som er tilgjengelige i inspektørpanelet for tekstegenskaper.

Lag et rullbart tekstområde

Et bevegelig (rullbart) tekstområde kan opprettes basert på et dynamisk tekstfelt. Et eksempel på et slikt tekstområde er vist i fig. 5.9.

Følg disse trinnene for å lage et rullbart tekstområde:

Ris. 5.9. Eksempel på rullebart tekstområde

  1. Slå på tekstverktøyet og bruk musen til å tegne grensene til tekstområdet på bordet.
  2. I egenskapsinspektør-ruten bruker du rullegardinlisten Linjetype for å velge formatet til tekstboksen; det er nyttig å følge følgende regler:
    • hvis du vil bruke et vertikalt rullefelt, bør du velge typen Multiline eller Multiline no wrap;
    • hvis du trenger et felt med bare en horisontal rullelinje, bør du velge typen Enkel linje;
    • for å lage et felt med vertikale og horisontale rullefelt, velg Multiline no wrap type.
  3. Om nødvendig, angi de nødvendige verdiene for de andre parameterne i tekstboksen (stil og størrelse på skrift, farge, etc.).
  4. Uten å slå av tekstverktøyet, flytt musepekeren utenfor tekstområdet og venstreklikk; tekstmarkøren inne i feltet vil forsvinne og den vil bli uthevet med en svart stiplet ramme.
  5. Flytt musepekeren inne i tekstområdet igjen og høyreklikk (!) For å åpne kontekstmenyen.
  6. Velg kommandoen Rullbar fra hurtigmenyen.

Ris. 5.10. Komponentpanel

  • Sørg for at arbeidsområdet Blits Komponentpanelet er åpent; hvis panelet er lukket, velg Komponenter fra Vindu-menyen; dette panelet (fig. 5.10) er designet for å inkludere kontroller (knapper, avmerkingsbokser, lister osv.) i filmen; mer om å jobbe med Komponentpanelet er beskrevet i kapittelet "Lage interaktive filmer".
  • I Komponenter-panelet finner du ScrollBar-elementet (skyggelagt i figur 5.10) og drar det inn i tekstområdet; når du gjør dette, husk følgende:
    • Flash endrer automatisk størrelsen på rullefeltet i henhold til høyden (for vertikal) og lengde (for horisontal) på tekstområdet;
    • for å få et vertikalt rullefelt, sett rullefeltet langs den vertikale kanten av området;
    • For å få et horisontalt rullefelt, plasser ScrollBar-elementet over den horisontale kanten av tekstområdet slik at musepekeren er innenfor tekstområdet, som vist i figur 4-2. 5,11;
    • Blits oppretter en glidebryter på rullefeltet bare hvis det virkelig er nødvendig; det vil si at hvis tekstområdet for eksempel bare inneholder én linje, vil det ikke være noen skyveknapp på den vertikale rullelinjen.

Ris. 5.11. Lag et horisontalt rullefelt

Kommentar

Interaktiviteten til rullefeltet, som andre kontroller plassert i Flash-film, "Vises" bare etter eksport til SWF-format, samt i filmtestmodus. For å bytte til denne modusen, trenger du i kontrollmenyen i hovedvinduet Blits velg Test film eller Test Scene.

Hvis du av en eller annen grunn, som et resultat av å dra ScrollBar-elementet, ikke klarer å få ønsket type rullefelt, kan du stille inn det manuelt. Dette krever:

  1. Slå på pilverktøyet og klikk på rullefeltet som "ulydig" deg for å velge det.
  2. I det åpnede inspektørpanelet av egenskapene til dette elementet (fig. 5.12), klikk i elementegenskaper-feltet, på den horisontale linjen (i fig. 5.12 er den uthevet i grått); som et resultat, vises en rullegardinliste i raden.
  3. Klikk på listeknappen og i vinduet som kommer opp (Figur 5.13) velg true hvis du trenger en horisontal rullelinje eller usann hvis du vil ha en vertikal rullelinje.

Etter at tekstområdet er fylt med rullefelt, kan du slå på tekstverktøyet, klikke inne i området og skrive inn teksten du ønsker.

Ris. 5.12. ScrollBar Property Inspector

Ris. 5.13. Stille inn visningen av rullefeltet

Råd

Hvis du bruker kyrillisk i tekstfeltet, kan det hende at teksten ikke vises riktig etter å ha konvertert filmen til SWF-format eller når du tester filmen (ved å bruke en annen kodetabell, for eksempel vesteuropeisk). For å unngå dette, velg alternativknappen Alle tegn i dialogboksen Tegnalternativer (se figur 5.8) før du publiserer filmen.

Redigerbar tekst

Redigerbar tekst (Input Text) - denne typen tekstfelt er beregnet på å legge inn og redigere tekst av leseren av en webside.

Som nevnt ovenfor er det redigerbare tekstfeltet ment å motta informasjon fra brukeren. Det kan for eksempel være en spørring til en database som ligger på en server, eller navnet på en filmscene som en besøkende ønsker å gå til.

Formatet til eiendomsinspektøren for å angi attributtene til redigerbar tekst er vist i fig. 7.14.

Sammenlignet med den dynamiske tekstegenskapsinspektøren har den følgende funksjoner:

Ris. 5.14. Editable Text Property Inspector Format

  • Manglende URL-tekstboks og tilhørende rullegardinmeny for mål
  • den valgbare knappen er utilgjengelig (låst når den trykkes inn); dette er ganske naturlig: den redigerte teksten må være valgbar;
  • tekstboksen Maksimalt antall tegn er til stede; dette feltet skal være et heltall som definerer hvor mange tegn leseren har lov til å skrive inn.

Parametrene til redigeringsboksen, som parameterne for dynamisk tekst, kan endres ved hjelp av ActionScript-språket. For å bruke denne funksjonen må du tilordne et unikt navn til redigeringsfeltet og (valgfritt) angi navnet på den tilknyttede variabelen.

Som med dynamisk tekst, er rullefelt tillatt for redigeringsboksen.

Bruk av visuelle effekter

Som nevnt i begynnelsen av dette kapittelet, sammen med standard tekstformatere Blits støtter også muligheten til å skape spesifikke effekter. Disse inkluderer spesielt tekstskalering, skjevhet, rotasjon, speiling. Etter å ha utført noen av transformasjonsoperasjonene, forblir teksten tekst, det vil si at den fortsatt kan redigeres ikke som et grafisk objekt, men som et sett med tekstsymboler bare ved å illustrere noen av mulighetene Blits... I fig. 5.15 viser et tekstområde hvis innhold kan rulles selv etter at det har blitt skjevt.

Ris. 5.15. Mulighetsillustrasjon Blits for arbeid med tekst

Nok en gang forblir den transformerte teksten redigerbar mens du designer filmen din. For å gå inn i tekstredigeringsmodus, slå på tekstverktøyet og dobbeltklikk på tekstfeltet. Etter det kan du fortsette å skrive inn tekst, slette tegn eller velge et bestemt tekstfragment for for eksempel å kopiere det til utklippstavlen (fig. 5.16).

For å utføre de nødvendige transformasjonene, må tekstboksen velges ved hjelp av pilverktøyet eller Free Transform. Men i sistnevnte tilfelle forblir de to Free Transform-verktøymodifikatorene (nemlig Distort og Envelope) utilgjengelige. For å bruke deres evner, må du bytte til tegn-for-tegn tekstredigeringsmodus.

Ris. 5.16. Redigering av transformert tekst

Tegn-for-tegn tekstredigering

For å endre individuelle tegn i teksten, bruk Break Apart-prosedyren på den. I dette tilfellet er to nivåer av underinndeling mulig:

  • dele teksten inn i symboler samtidig som egenskapene til hver av dem bevares som et separat tekststykke;
  • konvertere teksttegn til grafiske objekter.

Kommentar

Delingsprosedyren kan brukes på alle typer tekstfelt (statiske, dynamiske og redigerbare), men etter at det første nivået er splittet, konverteres teksten til statisk.

La oss vurdere de to ovennevnte alternativene mer detaljert. For å dele opp tekst i tegn, må du:

  • Velg tekstfeltet som skal deles (teksten i det må allerede være skrevet inn) ved hjelp av pil-, fritransformerings- eller tekstverktøyene.
  • I Endre-menyen i hovedvinduet velger du Break Apart-kommandoen.

Et visuelt tegn på splitting er at hvert tegn i teksten er innelukket i en egen ramme (Figur 5.17, høyre).

Etter splitting kan hvert av tegnene utføres alle operasjoner som er tillatt for et "frittstående" tekstfelt, inkludert:

  • erstatning med et annet teksttegn (det vil si normal redigering); for dette må det redigerte symbolet velges ved hjelp av tekstverktøyet (fig. 5.18, venstre);

Ris. 5.17. Etter splitting er hvert tegn i teksten omsluttet i en egen ramme

  • flytte til en ny stilling; for å gjøre dette er det nok å slå på pil- eller fritransformeringsverktøyet, flytte musepekeren til symbolet og, når flyttesymbolet vises i nærheten av pekeren, trykk på venstre museknapp og dra symbolet (fig. 5.18, i senteret);
  • skalering, rotasjon og andre typer transformasjon tilgjengelig for tekstområdet (fig. 7.18, høyre); for dette må symbolet velges ved hjelp av Free Transform-verktøyet.

Ris. 5.18. Eksempler på tegn-for-tegn redigeringsoperasjoner

I tillegg kan du utføre symbolfargeendring og automatisk distribusjon av symboler mellom lagene i scenen. Anvendelsen av lag vil bli diskutert i kapittelet "Opprette animasjon", så foreløpig vil vi bare forklare essensen av den navngitte operasjonen. Et eget lag vil bli opprettet for hvert tekstsymbol, og symbolene vil automatisk fordeles over disse lagene. Som standard faller navnene på de opprettede lagene sammen med symbolene som er plassert på dem (fig. 5.19).

For å utføre automatisk distribusjon av symboler mellom lag, er det nok å velge kommandoen Distribuer til lag fra Endre-menyen.

Nå om hva som ikke kan gjøres med symboler etter å ha delt tekstområdet én gang:

  • du kan ikke bruke Forvrengnings- og Envelope-modifikatorene til Free Transform-verktøyet på dem;
  • du kan ikke bruke en gradient eller punktgrafikkfyll for dem;
  • de kan ikke redigeres med tegneverktøy.

For å bli kvitt alle disse "nei" er det nok å bruke Break Apart-prosedyren på nytt på tekstsymbolene. Da kan du gjøre hva som helst fantasien forteller deg å gjøre med symbolene. I fig. 7.20 er langt fra det mest sofistikerte alternativet for å redigere et tekstsymbol.

Ris. 5.19. Resultat av automatisk fordeling av symboler mellom lag

Ris. 5.20. Et eksempel på å endre et teksttegn etter å ha utført Break Apart-prosedyren på nytt

Merknader

    1. Hvis et tekstfelt inneholder et enkelt symbol, er det etter en enkelt bruk av Break Apart-prosedyren tilgjengelig for redigering som et grafisk objekt.
    2. Break Apart gjelder kun for TrueType-konturfonter. Punktgrafikkfonter forsvinner fra skjermen hvis du prøver å bruke den angitte operasjonen på dem.

Automatisk skriftskifte

Når du jobber med Flash-film i formatet FLA, Blits kan om nødvendig erstatte standardfontene med de som er installert på datamaskinen. lar deg velge det mest passende, etter din mening, erstatningsalternativet.

Kommentar

Fonterstatning utføres bare under varigheten av filmredigeringen (det vil si for varigheten av arbeidet med FLA-filen). Filmen spilles av med fonten som ble spesifisert da filmen ble laget.

Flash MX informerer deg om fraværet av en font direkte når du åpner en FLA-fil. Den relevante informasjonen vises i en spesiell dialogboks.

Dette vinduet inneholder to knapper:

  • Velg Substitute, som lar deg åpne dialogboksen Font Mapping for å beskrive ordningen for å erstatte manglende fonter;
  • Bruk standard, klikk på som erstatter de manglende skriftene i henhold til eksisterende erstatningsskjema; Hvis du alltid (eller nesten alltid) kommer til å bruke dette opplegget, merk av for Ikke advar meg igjen før du klikker på knappen.

For å beskrive skjemaet for erstatningsalternativer, gjør følgende i vinduet Font Mapping:

  1. Klikk på linjen med den manglende skriften.
  2. I rullegardinlisten over fonter som er installert på datamaskinen, velg den mest passende.
  3. Hvis du foretrekker å bruke en av de fysiske fontene som erstatning Blits velg den deretter fra rullegardinlisten Erstatt skrift nederst til høyre i vinduet.

Kommentar

For å korrigere det brukte erstatningsskjemaet, velg kommandoen Font Mapping fra Rediger-menyen i hovedvinduet og foreta de nødvendige endringene i dialogboksen som åpnes.

Avslutningsvis bemerker vi enda en funksjon ved å jobbe med tekstinformasjon i. Du kan konvertere skriften til et symbol for delt bibliotek for bruk i andre filmer. I dette tilfellet lastes den nødvendige fonten inn dynamisk under avspilling. Blits-film på brukerens datamaskin (besøkende på nettstedet). Denne mekanismen lar deg redusere størrelsen på filmen. For mer informasjon om bruk av biblioteker, se kapittel 9 - "Bruke symboler".

God ettermiddag alle sammen! I dag skal vi snakke med deg om hvordan du legger inn flash på nettstedet. Det ser ut til at spørsmålet er trivielt. Hvis dette er et banner, er det bare å kopiere den foreslåtte koden og plassere den i malen, widgeten eller på siden gjennom editoren. Hvis dette er en flash-animasjon for et nettsted, sett det inn med samme kode, men skrevet selv. Imidlertid har denne enkle prosessen sine egne finesser, som vi nå skal snakke om.

Flash-animasjon for nettstedet

Så vi trengte å plassere Flash-animasjonen på nettstedet. For dette brukes standardkoden:

Ved første øyekast er alt riktig og ingenting varsler problemer. Men hvis du blar opp på siden, vil du se en slik funksjon at flash-animasjonen plassert på denne måten vil overlappe admin-verktøylinjen - det øverste svarte panelet til WordPress-administratoren.

I det store og hele er ikke dette kritisk, siden bare du og assistentene dine ser dette panelet hvis brukerregistrering er deaktivert på bloggen. Men reelle problemer oppstår når nettstedet bruker en css-meny på flere nivåer, der et flashbanner er plassert, som i dette tilfellet overlapper det.

Dette er fordi flash alltid er foran divene i dybden. For å unngå dette trenger vi bare å legge til én ekstra parameter til koden vår:

I dette tilfellet oppfører flash-filmen seg som et normalt bilde. Du kan også bruke samme parameterverdi = "transparent", men dette vil skape ekstra belastning eller senke sideinnlastingen. Sluttresultatet for flash-innbyggingskoden på nettstedet vil se slik ut:

Plugin for å plassere flash-animasjon på siden

Hvis du ofte må sette inn forskjellige videoer eller rett og slett er redd for å skrive noe galt i denne lange koden, kan du bruke en plugin som automatisk setter inn en blits på siden - alt du trenger å gjøre er å spesifisere adressen til stedet. Det heter WP-SWFObject. Som vanlig, last ned og installer den, gå deretter til Alternativer> WP-SWFObject og foreta de nødvendige innstillingene. Her kan du la alt stå som standard, bortsett fra ett - elementet "Vindumodus". For å sette inn swf på nettstedet, ta hensyn til parametrene vi trenger, velg her fra rullegardinlisten "OPAQUE" og lagre innstillingene.

Nå, for å sette inn en flash på nettstedet, skriv en kortkode (du kan deretter legge den til i redigeringspanelet for enkelhets skyld)

I aksjon vil det se slik ut:

For å legge ut direkte gjennom malen, bruk en annen kode:

Seksjoner på denne siden:

La oss nå snakke om den såkalte spesielle tekstblokker, det vil si om tekstblokker som utfører spesielle funksjoner. For øyeblikket vil de imidlertid ikke være nyttige for oss, men de vil være nødvendige når vi begynner å skrive programmer i Flash-miljøet (programmering er viet til del IV av denne boken).

Inndatafelt

Innføringsfelt - det er en slags liten tekstredigerer plassert i et Windows-programvindu og designet for å skrive inn enkelt- eller flerlinjet tekst. Samtidig kontrollerer Windows selv tekstinntastingen: vi skriver bare tegn, bruker piltastene, tastene , , velg teksten, bruk utklippstavlen, som i en hvilken som helst "stor" tekstredigerer. Microsoft-programmerere har jobbet hardt for å gjøre standard Windows-inndatafeltene virkelig brukbare.

For å lage et inndatafelt i Flash må du først plassere en vanlig tekstboks på regnearket og velge den med pilverktøyet (du trenger ikke skrive inn noen tekst i tekstboksen). Deretter finner vi i øvre venstre hjørne av panelet Egenskaper en liten nedtrekksliste (se fig. 7.4) og velg elementet Skriv inn tekst. Hvis vi etter det åpner den resulterende tekstblokken, vil vi se hva som er vist i fig. 7.9.


Så hva ser vi? Og vi ser hele settet med markører for endring av størrelse (de vil bli lagret selv om vi lukker inndatafeltet). Dette betyr at vi også kan endre den vertikale størrelsen på det resulterende inndatafeltet. Og den rektangulære markøren fra øvre høyre hjørne vil flytte seg til nedre høyre - dette er et tegn på at det er inndatafeltet foran oss.

Panelvisning Egenskaper etter utheving vises inndatafeltet i fig. 7.10. Som du kan se, er det flere kontroller som må vurderes.


Først av alt, rett under listen som vi nettopp brukte, dukket det opp et felt der vi må spesifisere en unik Navn, identifisere Flash-inndatafeltet vi opprettet. Hvert inndatafelt som opprettes på et regneark, må ha et unikt navn. Dette navnet kan inneholde bokstaver i det russiske og latinske alfabetet, tall og understreking, og det må begynne enten med en bokstav eller med et understrek.

Under inndatafeltet for sporingsoppgaven er en annen rullegardinliste. Med dens hjelp velges typen inndatafelt. Fire elementer er tilgjengelige i denne listen:

? Enkel linje- vanlig enkeltlinjeinndatafelt;

? Multiline- flerlinjers inndatafelt(med andre ord, redigeringsområdet);

? Multiline uten omslag- et inntastingsfelt med flere linjer der automatisk linjemating ikke vil bli utført (selv om brukeren fortsatt kan bryte linjen manuelt ved å trykke på );

? Passord- passordinntastingsfeltet. Ligner på et vanlig inndatafelt på én linje, men skjuler teksten som er skrevet inn i det, og viser en streng med "stjerner" i stedet.

Til høyre for denne listen er et sett med tre knapper-brytere. Den første er allerede kjent for oss - den lar brukeren velge teksten i inndatafeltet:


Som vist i fig. 7.10, er denne knappen trykket og utilgjengelig, dvs. den kan ikke deaktiveres.

Den andre veksleknappen, når den er aktivert, instruerer Flash om å behandle alle HTML-tagger som finnes i teksten:


Så hvis vi legger ved et stykke tekst i taggen<В>.. , Flash vil gjøre den fet. Hvis denne knappen er deaktivert, viser Flash teksten som den er, sammen med eventuelle HTML-koder som er spesifisert der.

Generelt sett er denne funksjonen bare nyttig hvis vi spesifiserer innholdet i inndatafeltet fra ActionScript, så det er beskrevet "på forhånd" her. For detaljer om HTML-tag-støtte for inndatafelt og dynamiske tekstblokker, se Flash online-hjelpen.

Den tredje veksleknappen, når den er aktivert, får Flash til å vise en kant rundt inndatafeltet, noe som gjør at sistnevnte ligner et standard Windows-inndatafelt:


Hvis den er deaktivert, har inndatafeltet et "flat" utseende.

Hvis inndatafeltet vi opprettet skal være en del av det originale grensesnittet, er det best å la denne knappen være deaktivert. Hvis vi ønsker å gjøre inntastingsfeltet mer kjent for brukeren eller mer synlig, kan vi aktivere denne knappen.

Til høyre for disse tre knappene er et inndatafelt Var... Dette feltet angir navnet på ActionScript-variabelen, der teksten som er skrevet inn i inndatafeltet vi opprettet, vil bli plassert. En variabel er et slags "lagringskammer" av data, opprettet i datamaskinens minne og har et unikt navn som det kan identifiseres med. Vi kan referere til denne variabelen ved navn, trekke ut data fra den eller sette inn en ny verdi i den. Variabler vil bli diskutert i detalj i Kapittel 19.

I inntastingsfeltet Maksimalt antall tegn angir maksimalt antall tegn som brukeren kan skrive inn i den. Hvis vi ikke ønsker å begrense dette tallet, så legger vi inn verdien 0 der (det er forresten standardverdien til feltet).

La oss nå gå tilbake til temaet fontinnbygging, men denne gangen i forhold til inndatafelt (mer presist, til alle spesielle tekstblokker). Faktum er at i dette tilfellet utføres ingen innbygging - Flash lagrer bare navnene på skriftene som brukes. Når du gjengir et gjengitt bilde, søker Flash Player først etter disse skriftene på klientdatamaskinen og bruker dem, hvis tilgjengelig, til å vise tekst. Hvis en passende font ikke blir funnet, bruker spilleren den fonten som er nærmest den ønskede, noe som kan forvrenge bildet. Og dette er ikke alltid akseptabelt.

Men vi kan fortsatt tvinge Flash til å injisere beskrivelser av utvalgte tegn i fonten spesifisert for dette inndatafeltet i den resulterende Shockwave / Flash-filen. Vi vil nå se hvordan dette gjøres.

Valget av skrifttegn for innbygging utføres i dialogboksen Innebygging av karakterer(fig. 7.11). Dette vinduet vises på skjermen etter at du har trykket på knappen. Bygg inn paneler Egenskaper(se fig. 7.10).


Den store listen over dette vinduet lar oss velge hele grupper av symboler som skal bygges inn i den resulterende Shockwave / Flash-filen. Den inneholder ganske mange gjenstander; de samme som garantert kommer til nytte er gitt nedenfor:

? Alle (39477 tegn)- alle tegn i denne fonten i mengden 39 477. Denne gjenstanden er kun gitt for informasjon; i virkeligheten vil knapt noen bruke det;

? Store bokstaver (27 tegn)- store latinske bokstaver (27 tegn);

? Små bokstaver (27 tegn)- små latinske bokstaver (også 27 tegn);

? Tall (11 tegn)- Arabiske tall (11 tegn);

?Tegnsetting [ [e-postbeskyttet]# $% ...] (52 tegn)- skilletegn og spesialsymboler (52 tegn);

?Grunnleggende latin (95 tegn)- bokstaver på de fleste europeiske språk (95 tegn);

?Kyrillisk (499 tegn)- Kyrilliske bokstaver (499 tegn). Kanskje det viktigste poenget i vårt tilfelle.

Som regel er flere elementer uthevet i denne listen samtidig (det stemmer – hvem trenger bokstaver uten tall!). For å gjøre dette, klikk først på det første elementet fra settet med de vi vil velge, og trykk deretter på tasten og mens du holder den, klikker du på de gjenværende elementene til vi velger alt. Etter det kan du slippe nøkkelen. .

Under listen over fonter er det et inndatafelt Ta med disse tegnene. I den kan vi manuelt legge inn tegnene som skal bygges inn. Dette er nyttig hvis vi bare ønsker å bygge inn enkelte tegn i skriften. Og hvis vi trykker på knappen Autofyll, Flash selv vil erstatte alle tegnene vi brukte i teksten i det valgte inndatafeltet i dette inndatafeltet.

Helt nederst i vinduet Karakteralternativer det er en liten tekstboks Totalt antall glyfer, viser hvor mange tegn vi allerede har valgt for innbygging. Så vi kan stoppe i tide.

Knapp Ikke bygg inn lar deg raskt fjerne alle symbolene som vi har valgt å bygge inn. Hvis du klikker på den, tømmes inntastingsfeltet Ta med disse tegnene, og i den store listen vil utvalget forsvinne fra varene vi har valgt.

Ved å angi alternativer for innebygging av fonter i en dialogboks Karakterinnbygging, trykk på knappen OK,å bruke dem. Hvis du trenger å avbryte disse parameterne, trykk på knappen Avbryt.

Dynamiske tekstbokser

Ofte, i stedet for å vise vanlig, uforanderlig tekst, ønsker du å vise utdataene fra et ActionScript i tekstform. Et slikt skript kan for eksempel hente nyheter fra Compulent-siden, værmeldingen fra Aporta-siden og valutakurser fra Rambler-siden, legge til gjeldende tid til de hentede dataene og vise alt dette som tekst på skjermen. (Interessant idé forresten...)

Dette er bare for utdata av teksten som er resultatet av skriptet, og de gjelder dynamiske tekstblokker.(Vanlige tekstbokser kalles ofte statisk.) Kanskje oppstår behovet for slike dynamiske tekstblokker oftere enn inndatafelt.

En dynamisk tekstboks lages omtrent på samme måte som et inndatafelt. Lag en vanlig tekstboks, velg den med "pil"-verktøyet og finn den i øvre venstre hjørne av panelet Egenskaper liten nedtrekksliste (se fig. 7.4). Du trenger bare å velge et element fra denne listen. Dynamisk tekst.

Den uthevede dynamiske tekstblokken ligner på inndatafeltet (se fig. 7.9) og panelet Egenskaper vil se omtrent ut som den vist i fig. 7.10. Derfor vil vi ikke gi en beskrivelse av kontrollene som ligger i den, men vil begrense oss til å peke på de eksisterende forskjellene.

Alle de samme variablene brukes til å skrive ut tekst til en dynamisk tekstblokk. ActionScript plasserer teksten som skal vises i en slik variabel, og Flash Player kjører utdataene. Navnet på denne variabelen legges inn i det samme inndatafeltet under listen, som vi nettopp gjorde en vanlig tekstblokk til en dynamisk.

Nå om forskjellene. Det er faktisk bare én forskjell når det gjelder grensesnittet, og i tillegg er vi allerede kjent med det. Knappebryter:


Den inkluderende muligheten til å velge og kopiere tekst plassert i en dynamisk tekstblokk er nå tilgjengelig, og vi kan slå den av hvis ønskelig.

Forskjellen når det gjelder muligheter er at en dynamisk tekstblokk kan lages rullbar. En vanlig dynamisk blokk må være dimensjonert for å passe alt innholdet. For en rullbar blokk er dette ikke nødvendig: i likhet med Windows-redigeringsområdene kan den "rulle" teksten den inneholder. For å kontrollere rullingen, må vi skrive de riktige ActionScript-skriptene - den rullende tekstblokken inneholder ikke rullefelt.

For å gjøre en dynamisk tekstboks rullbar, må du først velge den. Etter det bør du slå på bryterelementet Rullbar Meny Tekst eller elementet med samme navn i kontekstmenyen til tekstblokken. Hvis tekstboksen for øyeblikket er åpen, kan du dobbeltklikke på det firkantede håndtaket i nedre høyre hjørne av markeringsrektangelet mens du holder nede ... Den fullførte rulletekstblokken er vist i fig. 7,12; Legg merke til at markøren vi klikket har fått formen av en svart firkant.


For å gjøre data fra webserveren tilgjengelig for SWF-filer fra andre domener, kan du opprette en policyfil på serveren. Policyfil er en XML-fil plassert på et spesielt sted på serveren.

Policyfiler definerer tilgang til en rekke ressurser, inkludert følgende:

    innhenting av data fra rasterbilder, lyd og video;

    lasting av XML- og tekstfiler;

    Importerer SWF-filer fra andre sandkasser til opplastingsfilens sikkerhetsdomene

    tilgang til socket og XML socket tilkoblinger.

ActionScript-objekter oppretter to typer servertilkoblinger: dokumentbaserte servertilkoblinger og sockettilkoblinger. ActionScript-objekter som Loader, Sound, URLLoader og URLStream oppretter dokumentbaserte servertilkoblinger og laster ned en fil fra en URL. Socket- og XMLSocket-objekter oppretter socketforbindelser som håndterer strømmedata, ikke innlastede dokumenter.

Fordi Flash Player støtter to typer servertilkoblinger, finnes det også to typer policyfiler: URL-policyfiler og socketpolicyfiler.

    Dokumentbaserte tilkoblinger krever url policy-filer... Serveren bruker disse filene for å indikere at dens data og dokumenter er tilgjengelige for SWF-filer som er vert for bestemte domener eller andre domener.

    Stikkontakter krever socket policy-filer som gir en direkte nettverkstilkobling til TCP-sockets på lavere nivå ved bruk av Socket- og XMLSocket-klassene.

Policyfiler må sendes til Flash Player med samme protokoll som tilkoblingen skal bruke. For eksempel, når en policyfil plasseres på en HTTP-server, kan SWF-filer fra andre domener laste ned data fra den serveren ved hjelp av HTTP-protokollen. Men hvis du ikke legger til en socket policy-fil på den samme serveren, vil ikke SWF-filer fra andre domener kunne kobles til serveren via sockets. Med andre ord, måten du får policyfilen på, må samsvare med måten du kobler til.

Resten av denne delen beskriver kort bruken av policyfiler og syntaks for SWF-filer publisert for Flash Player 10. (For tidligere versjoner av Flash Player er policyfiler implementert litt annerledes fordi sikkerheten til Flash har blitt forbedret ettersom nye versjoner har blitt utgitt . Player.) For mer informasjon om policyfiler, se delen "Endringer i policyfiler i Flash Player 9" i Flash Player Developer Center på www.adobe.com/go/devnet_security_en.

Kode som kjører i AIR-applikasjonssandboksen trenger ikke en policyfil for å få tilgang til data via en URL eller socket. Kode i et AIR-program som kjører utenfor programsandboksen krever en policyfil.

SWF-filen kan teste policyfilen under et annet navn eller på et annet sted. For å gjøre dette, kall Security.loadPolicyFile ()-metoden. Men hvis hovedpolicyfilen ikke spesifiserer at denne plasseringen kan inneholde en policyfil, vil det ikke ha noen effekt å kalle loadPolicyFile ()-metoden, selv om policyfilen er der. Metoden loadPolicyFile () bør kalles før du forsøker nettverksoperasjoner som krever en policyfil. Flash Player setter automatisk nettverkstilkoblingsforespørsler i kø etter samsvarende forespørsler om en policyfil. For eksempel kan Security.loadPolicyFile ()-metoden kalles rett før starten av en nettverksoperasjon.

Under validering av hovedpolicyfilen venter Flash Player på et serversvar i tre sekunder. Hvis det ikke mottas noe svar, konkluderer Flash Player med at hovedpolicyfilen ikke eksisterer. Det er imidlertid ingen standard tidsavbrudd for å kalle loadPolicyFile ()-metoden; Flash Player antar at filen som kalles eksisterer og venter på å laste ned på ubestemt tid. Derfor, for å sikre at hovedpolicyfilen lastes, må loadPolicyFile ()-metoden kalles.

Selv om metoden heter Security.loadPolicyFile (), lastes policyfilen bare inn etter at en nettverksforespørsel er sendt, noe som krever en policyfil. Å kalle loadPolicyFile ()-metoden forteller ganske enkelt Flash Player hvor den skal se etter policyfilen når den trenger den.

Du kan ikke bli varslet om at en policyfilforespørsel er sendt eller fullført, det er bare ikke nødvendig. Flash Player validerer policyfiler asynkront og venter automatisk til en tilkobling er opprettet til valideringen er vellykket.

De følgende delene inneholder informasjon som bare gjelder URL-policyfiler. For mer informasjon om socket policy-filer, se delen "Koble til sockets".

Omfanget av nettadressepolicyfilen

URL-policyfilen gjelder bare for katalogen den er lastet inn fra og dens underordnede kataloger. Policyfilen i rotkatalogen gjelder for hele serveren. En policyfil som er lastet inn fra en underkatalog, gjelder bare for den katalogen og dens underkataloger.

Policyfilen definerer bare tilgang til serveren der den er plassert. For eksempel gjelder policyfilen som ligger på https://www.adobe.com:8080/crossdomain.xml kun for samtaler for å laste ned data fra www.adobe.com-serveren over HTTPS på port 8080.

Spesifisere tillatelser i en URL-policyfil

Policyfilen inneholder én kode , der det igjen kan være et hvilket som helst antall tagger starter fra bunnen av. Hver merkelapp inneholder et domeneattributt som spesifiserer enten en nøyaktig IP-adresse, et eksakt domenenavn eller et jokertegndomene (hvilket som helst domene). Jokertegndomener kan spesifiseres på to måter:

    én stjerne, som samsvarer med alle domener og alle IP-adresser;

    en stjerne med et suffiks, som bare samsvarer med domener med det spesifiserte suffikset.

Suffikset må starte med en punktum. Suffiks-jokertegndomener kan imidlertid matche domener som bare inneholder suffikser uten et innledende punkt. For eksempel regnes "xyz.com" som en del av "* .xyz.com". Jokertegn kan ikke brukes i IP-adresser.

Følgende eksempel viser en URL-policyfil som gir tilgang til SWF-filer fra domenene * .example.com, www.friendOfExample.com og 192.0.34.166.

Hvis en IP-adresse er spesifisert, er det bare SWF-filer som er lastet ned fra den IP-adressen ved hjelp av IP-syntaksen (for eksempel http://65.57.83.12/flashmovie.swf) som får tilgang. Domenenavnsyntaks brukes ikke ved deling av SWF-filer. Flash Player utfører ikke DNS-oppløsning.

Du kan gi tilgang til dokumenter fra alle domene, som vist i følgende eksempel.

Hver merkelapp har også en ekstra sikker attributt som som standard er sann. Hvis policyfilen er på en HTTPS-server og du vil tillate at SWF-filer fra en ikke-HTTPS-server kan laste data fra en HTTPS-server, kan du sette dette attributtet til false.

Å sette sikker-attributtet til false kan svekke sikkerheten som tilbys av HTTPS. Spesielt, falsk åpner beskyttet innhold for uautorisert tilgang eller forfalskning. Adobe anbefaler på det sterkeste at du ikke setter sikker-attributtet til false.

Hvis opplastingsdataene er på en HTTPS-server og SWF-en som laster den er på en HTTP-server, anbefaler Adobe at du flytter den opplastede SWF-filen til en HTTPS-server. Takket være dette vil alle kopier av konfidensielle data være beskyttet av HTTPS. Men hvis du velger å la SWF-filen stå på HTTP-serveren, legg til attributtet secure = "false" i taggen som vist under.

Du kan også bruke tillat-http-request-headers-from-taggen for å gi tilgang. Dette elementet gir en klient som hoster innhold fra et annet domene tillatelse til å sende brukerdefinerte overskrifter til domenet ditt. stikkord gir andre domener tilgang til å hente data fra domenet ditt, og allow-http-request-headers-from-taggen gir andre domener tillatelse til å sende data til domenet ditt som overskrifter. Følgende eksempel lar alle domener sende en SOAPAction-header til det gjeldende domenet.

Hvis tillat-http-request-headers-from-taggen legges til hovedpolicyfilen, gjelder den for alle kataloger på verten. Ellers gjelder det bare katalogen og underkatalogene som er dekket av policyfilen som inneholder taggen.

Nedlasting av data fra serveren eller tilkobling til en stikkontakt utføres asynkront. Flash Player venter ganske enkelt på at policyfilen er ferdig lastet før du starter hovedoperasjonen. Imidlertid utføres utvinning av pikseldata fra bilder eller innhenting av lydprøver synkront. Nedlastingen av policyfilen må fullføres før data kan hentes. Når du laster inn media, må du få en policyfil.

    Hvis du bruker metoden Loader.load (), setter du egenskapen checkPolicyFile til kontekstparameteren, som er et LoaderContext-objekt.

    Hvis et bilde er innebygd i en tekstboks ved hjelp av taggen , angi checkPolicyFile-attributtet for taggen sant, som vist nedenfor.

    Hvis du bruker metoden Sound.load (), setter du egenskapen checkPolicyFile til kontekstparameteren, som er et SoundLoaderContext-objekt.

    Hvis du bruker NetStream, sett egenskapen checkPolicyFile til NetStream-objektet.

Når ett av disse alternativene er spesifisert, kontrollerer Flash Player først policyfilene som allerede er lastet inn for dette domenet. Deretter ser den etter serverpolicyfilen på standardplasseringen, og sjekker taggene og tilstedeværelsen av metapolitikk. Til slutt blir alle ventende anrop til Security.loadPolicyFile ()-metoden gjennomgått for å vurdere omfanget.

Den siste artikkelen handlet om animasjon. Vi laget animasjon basert på bevegelses-tweening, shape-tweening og enkelt komponert bevegelse fra separate rammer. Jeg tror det er på tide å gå videre til et mer komplekst tema, en titt på verktøyet som danner grunnlaget for de fleste kvalitets Flash-filmer.

Verktøyet er ActionScript, et hendelsesdrevet språk innebygd i Flash. Den nyeste versjonen av ActionScript (som finnes i Flash 5) er vesentlig forskjellig fra ActionScript som var i Flash 4. Hvis det i forrige versjon var et begrenset sett med kommandoer, som bare tillot grunnleggende handlinger, og ble lagt inn ved hjelp av et lite praktisk grensesnitt, er det nye ActionScript et kraftig språk, med et økt sett med kommandoer, støtte for klasser, arv (! ), Og mye mer brukervennlig grensesnitt.

ActionScript gjør sidene dine interaktive. Du kan reagere på hendelser fra musen eller fra tastaturet, du kan utføre alle handlinger når du spiller av en bestemt ramme.

For å mestre ActionScript fullt ut, er det ønskelig å allerede ha programmeringserfaring (gjerne i C++, JavaScript osv.). En av de flotte tingene med Flash er imidlertid at du ikke trenger å være Flash-proff, eller kjenne ActionScript fullt ut, for å skrive kvalitetskode i den. Du kan bruke alle funksjonene i språket du mener er nødvendige for arbeidet ditt.

Siden denne artikkelen handler om det grunnleggende om språket, vil vi dekke:

  • Handlingspanelet er der praktisk talt all kommunikasjon med ActionScript foregår.
  • Knapper – hvordan få dem til å fungere slik vi trenger dem.
  • Stier - hvordan få tilgang til objektene du ønsker?
  • Grunnleggende handlinger med Flash-tegneserier (filmklipp) - vi vil kontrollere prosessen med å spille filmen som vi vil.
  • Feilsøking i ActionScript - Utdata- og feilsøkingsvinduer.

Hensikten med denne artikkelen er å gi deg en følelse av ActionScript, å vise at dette språket kan tjene både til å lage veldig imponerende programmer, og å utføre elementære handlinger som vil gjøre siden din mye mer attraktiv.

Vilkår

Før vi går inn i de faktiske trinnene, er noen få ActionScript-termer:

  • Handlinger er instruksjoner som forteller Flash-animasjon hva du skal gjøre. Fra dem kom navnet på språket - ActionScript (bokstavelig talt - handlingsskript). La oss bli enige om at innenfor rammen av denne artikkelen vil vi bruke begrepet "instruksjon" for ikke å bli forvekslet med de faktiske handlingene vi skal utføre.
  • arrangementer- dette er handlingene som skjer når tegneserien spilles. Hendelser kan for eksempel oppstå når lasting av en ramme avsluttes, når vi når en bestemt ramme, når brukeren trykker på en tast på tastaturet eller musepekeren er over objektet vårt.
  • Uttrykkene er enhver del av en instruksjon som genererer en verdi. Følgende eksempler er uttrykk: 2 + 2, 2 * 2, a + b, 2 * pi * r, (15 + k) * tilfeldig (10).
  • Funksjoner er en kodeblokk som kan gjenbrukes. Du kan sende verdier til en funksjon og motta et returresultat fra den. For eksempel, tall = get_color (15, 24)... 15 og 24 er argumenter (eller parametere) for get_color, hvis returverdi er skrevet til variabelnummeret.
  • Klasser er typene objekter. For eksempel er treets klasse plante. Flash har en rekke forhåndsdefinerte klasser (svært lik JavaScript-klasser). Du kan lage dine egne klasser, eller endre eksisterende.
  • Forekomster er bokstavelig talt forekomster av visse klasser. For eksempel kan et planteeksemplar være et tre, en busk eller en blomst. En instans er allerede et konkret reelt objekt. Hvis en klasse er en definisjon av et objekt (instans), så er en instans allerede en konkret utførelse, den er en klasse i aksjon. Hver forekomst kan gis et navn slik at den kan referere til funksjoner eller objektvariabler gjennom den.
  • Håndtere er spesielle instruksjoner som håndterer hendelser. For eksempel onClipEvent- Behandler av handlinger knyttet til et spesifikt symbol (se).
  • Operatører er elementer i et språk som beregner verdier basert på ett eller flere argumenter. For eksempel returnerer addisjonsoperatoren (+) summen av de to verdiene til venstre og høyre.
  • Variabler er identifikatorer som kan lagre verdier. For eksempel, a = 5; eller navn = "Michael".

Vi vil bruke disse begrepene gjennom vår diskusjon av ActionScript. Så…

Handlingspanel

Handlingslinjen brukes til å vise og gå inn i ActionScript-programmer (fig. 1). Det er to arbeidsmåter med panelet - normal (for "dummies") og ekspert. I ekspertmodus er kommandolisten et enkelt tekstfelt. I normal modus kan vi ikke redigere kommandoer direkte. Til dette brukes parameterpanelet.

Du kan legge til en instruksjon ved å klikke på "+"-knappen (se fig. 1) eller ved å velge den tilsvarende instruksjonen i listen over språkelementer. I tillegg er det nøkkelsekvenser for alle handlinger i Flash som kan brukes mye raskere. De er oppført til høyre for hver handling i +-knappmenyen. For eksempel for å legge til en funksjon Stoppe (), må du trykke Esc + st (sekvensielt: Esc, deretter "s", deretter "t").

Du kan slette en instruksjon ved å velge den og trykke på "-"-knappen (eller bare slettetasten).

Jeg anbefaler at du ikke begynner å bruke ekspertmodus med en gang hvis du ikke har erfaring med programmering i Java-lignende språk (C ++, Java, JavaScript). Den normale modusen har en stor fordel, noe som gjør den uunnværlig for nybegynnere - det er mye mindre sannsynlighet for å gjøre feil med syntaksen til språket. Dette vil hjelpe nybegynnere til å forstå vanskelighetene med ActionScript raskere.


Ris. 1 - Handlingslinje

Handlingslinjen viser handlingene til objektet eller den valgte rammen.

Knapper

Det første du vil når du begynner å lære Flash-interaktivitet, er å gjøre noe som vil svare på brukerhandlinger, "animere" skapelsen din, legge til tilbakemelding. Den enkleste måten å gjøre dette på er med knapper. Derfor vil vi begynne med dem.

Som du vet, i Flash er det en spesiell type symbol for å lage knapper - Knapp (se). Vi vil anta at du allerede har lært hvordan du lager knapper, nå skal vi lære hvordan du sporer klikk på disse knappene.

Knapper i Macromedia Flash har en omfattende liste over hendelser som vi kan reagere på:

  • trykk- museknappen trykkes når markøren er innenfor knappen;
  • utgivelse- museknappen slippes når markøren er innenfor knappen;
  • slipp utenfor- museknappen slippes når markøren er utenfor knappens grenser;
  • rull over- musepekeren går inn i knappen;
  • rull ut- markøren går utover knappen;
  • dra Over- markøren går inn i grensene til knappen, mens knappen ble trykket, og museknappen ble trykket;
  • drar ut- markøren går utover knappen, mens knappen ble trykket, og museknappen ble trykket;
  • tastetrykk("tast") - "tasten" ble trykket. Listen over nøkler kan vises i Flash-hjelpen (nøkkelobjekt), eller du kan bruke alternativpanelet til å angi ønsket nøkkel.

Dessverre "forstår" Flash kun venstre museknapp. Den høyre brukes til å kalle opp kontekstmenyen (høyreklikk på en Flash-tegneserie). Det er ingen måter å fange midttasten eller "musehjulet" i Flash, jeg tror ikke de eksisterer ennå.

Disse hendelsene blir fanget opp ved hjelp av direktivet på ()... Syntaksen er som følger:

På (begivenhet) (... // Våre handlinger)

Nedenfor kan du prøve å utløse noen hendelser selv:

Et veldig vanlig eksempel er å følge en lenke når du klikker på en knapp:

På (utgivelse) (getURL ("http://rubs.boom.ru");)

For å teste dette scenariet, velg knappen din, trykk Ctrl + Alt + A og gå inn i programmet.

Slik kan du enkelt fange opp alle hendelsene knyttet til knappen. Vel, hvordan du bruker dem er helt et spørsmål om fantasien din.

Grunnleggende operasjoner med filmklipp

Mye av kreativiteten i Flash er i karaktermanipulasjon. Nesten alle grunnleggende teknikker, alle triks og effekter er upraktiske uten disse handlingene.

Med ActionScript-skripting kan du utføre nesten alle handlinger på symboler. Du trenger bare å huske at disse handlingene bare kan utføres enten som svar på en brukerhandling, eller når en ramme oppstår på tidslinjen.

Så hva har vi? Jeg vil bare liste de viktigste (etter min mening) verktøyene. Resten finner du i språkelementlisten eller i hjelpen.

Filmklipp-funksjoner som kan kalles:

  • spille () - starter eller fortsetter å spille av klippet;
  • Stoppe () - slutter å spille av et klipp;
  • gotoAndPlay () - går til et bestemt bilde (scene) og fortsetter avspillingen;
  • gotoAndStop () - går til et bestemt bilde (scene) og stopper avspillingen.

Egenskaper (parametere) til klipp som kan leses/endres:

  • _x, _y - klippkoordinater (i piksler);
  • _xscale, _yscale - klippskala (i prosent), henholdsvis horisontalt og vertikalt;
  • _bredde høyde - klippets bredde og høyde (i piksler);
  • _rotasjon - klippets rotasjonsvinkel (i grader);
  • _alfa - klipp gjennomsiktighet (i prosent);
  • _synlig - synlighet.

Dette er ikke alt du kan gjøre med klipp. Bruk andre parametere, eksperiment, lag!

Navn

For å referere til klipp, må vi forstå konseptet med et objektnavn (forekomstnavn) og en sti til et objekt (målbane). La oss bli enige om at filmklippet og objektet er det samme for oss.

Objektnavnet er navnet på en spesifikk forekomst av et symbol. La oss si at vi kan ha et symbol - en skrivemaskin, og forekomster av dette symbolet vil bli kalt "Typewriter1", "Typewriter2", "Pickup", "Zaporozhets" ...

For å gi et navn til et objekt, velg objektet, og i Forekomst-panelet (Vindu-> Paneler-> Forekomst, Ctrl + I) i Navn-kolonnen, skriv inn navnet på objektet (fig. 2). Navn kan bare inneholde bokstaver, tall og understrekingstegnet ("_"), og navnet kan ikke begynne med et tall.


Ris. 2 - Forekomstpanel

stier

En objektbane er en hierarkisk registrering av objektets navn. Jeg skal prøve å forklare hva det er.

Du vet at i Flash kan du "nest" objekter i hverandre, og dermed danne et hierarki. Så denne nesteingen gir ikke bare bekvemmelighet ved håndtering av objekter, den begrenser også synligheten til objektnavn. Sikten er begrenset til sitt eget nivå. Et objekt kan direkte (ved navn) bare referere til objekter som er inkludert i det, som er ett nivå lavere i hierarkiet.

For å referere til et objekt på et annet nivå, må du kjenne veien til det. Dessuten kan banen spesifiseres både absolutt (fra det øverste nivået i hierarkiet) og relativt (fra det nåværende nivået).

Banen inkluderer objekter som du må "gå" gjennom hierarkietreet for å komme til objektet vi trenger, oppført gjennom en prikk. I tillegg er det flere tips (du kan kalle dem "virtuelle objekter") som ofte er veldig nyttige:

dette - en peker til "seg selv" (det vil si til det gjeldende objektet). Det er noen ganger nødvendig, for eksempel når du trenger å sende en peker til et objekt som denne funksjonen kalles til en funksjon fra.

_foreldre - en peker til "forelderen". Indikerer et objekt som er ett nivå høyere i hierarkiet.

_rot - "rot". Dette er begynnelsen på hierarkiet. Du kan ikke klare deg uten det når du spesifiserer en absolutt bane.

Banen ser slik ut:

leaf.play ();- ved delobjektet blad(ark) funksjon kalles spille ();

_parent.tree.leaf.stop ();- det antas at det er et objekt på ett nivå tre, som har en gjenstand blad, hvorfra funksjonen kalles Stoppe ();

_root.banner._visible = usann;- lag et klipp banner på nivå 1 er usynlig.



Ris. 3 - Hierarki av klipp

For illustrasjon, la oss ta et hierarki av 5 objekter (fig. 3). Objekt 1-4 er på 1. lag, objekt 5 på 2. lag. Objekt 2 er nestet i objekt 1, og objekt 3 er nestet i objekt 2. Objektene i figuren er visuelt nestet i hverandre, men dette betyr på ingen måte at dette skal være tilfellet «i det virkelige liv». De er gruppert her for klarhet. Siden navnet på et objekt ikke kan starte med et siffer, la objektene bli kalt obj1-obj5.

La oss nå gå til stiene. La oss først se hvilke objekter som kan referere til hverandre ved navn. obj1 kan referere til obj2, en obj2- Til obj3 men samtidig obj1 kan ikke slå til obj3 direkte, fordi som ikke ligger i obj1 og i obj2.

La oss si at det første objektet trenger objekt 3 for å starte på nytt fra den første rammen. Slik gjøres det:

Obj2.obj3.gotoAndPlay (1);

For at det 4. objektet skal gjøre det 1. objektet (merk med alle underobjekter!) Gjennomskinnelig, må det skrive følgende i skriptet:

Overordnet.obj1._alpha = 50;

Root.obj1._alpha = 50;

Fordi obj4 vi har det på det første nivået i hierarkiet, deretter for ham _rot og _foreldre- samme.

Nå, for objekt 3, vil vi skrive et skript som vil gjøre objekt 5 usynlig når museknappen trykkes. I skriptet for objekt 3 skriver vi:

OnClipEvent (mouseDown) (_root.obj5._visible = false;)

I dette utdraget har vi brukt en absolutt bane. Hvis vi skulle bruke relativ, ville det sett slik ut:

Parent._parent._parent.obj5._visible = usann;

Jeg håper jeg ryddet opp i poenget med stiene.

Eksemplene ovenfor har ikke bare vist hvordan stier ser ut, men også hvordan funksjoner kalles og egenskapsverdier tildeles.